From ed9c45726c748e86c7d5472ce21b808a730c3183 Mon Sep 17 00:00:00 2001 From: Jon Foster Date: Mon, 31 May 2021 13:22:31 -0700 Subject: [PATCH] First page --- Home.md | 23 +++++++++++++++++++++++ imgs/tomato-dnsmasq.png | Bin 0 -> 27634 bytes imgs/tomato-syslog.png | Bin 0 -> 30712 bytes 3 files changed, 23 insertions(+) create mode 100644 Home.md create mode 100644 imgs/tomato-dnsmasq.png create mode 100644 imgs/tomato-syslog.png diff --git a/Home.md b/Home.md new file mode 100644 index 0000000..f3e03db --- /dev/null +++ b/Home.md @@ -0,0 +1,23 @@ +Welcome to the Poor-Mans-IDS Wiki! +================================== + +There are a few different classes of "Intrusion Detection Systems" (IDS). Since the bulk of malware or corporation sponsored leaks require communicating across the Internet I'm starting with a central network traffic monitor based approach. + +This approach can be used on a single computer, which is simpler, or for a whole network. At the exit to the internet I want to collect data about connections getting made, associate them with DNS requests and provide tools to classify in one of three different ways and respond accordingly: + +1. Accept the traffic +2. Block the traffic +3. Unknown traffic make a decision + +By marking remote systems as acceptable or unacceptable I can whittle down the traffic I want to watch into the "unkown" category. The "accept" traffic becomes a filter on the data reports. The "blocked" traffic is physically blocked and _shouldn't_ happen again. The "unknown" is then presented to the IDS operator for review in one way or another. + +***WARN:*** _What I'm doing here is not an install and forget sort of solution. There are commercial products out there that will attempt to protect you to some extent, without any need to understand what is really happening. What I'm building up here are tools for the truly paranoid and curious. + +> You can't trust code that you did not totally create yourself. Especially code from companies that employ people like me. +> -- Ken Thompson (creator of UNIX) @ '83 Turing Award + +I think its important to note that pre-packaged solutions will be setup to mark traffic in whatever manner is suitable to the manufacturer and while they might provide some control its not **your** total control. This can be bad and good. But my paranoia level has raised such I, personally, can't trust big money making entites. Especially when it looks like the solution is sooo much simpler. + +Its also of importantance to understand that one of the **biggest** threats facing the average user is malware injected into legitimate websites, often by getting them to load content from sources that are not part of the site's domain. I've already been surprised by the vast number of external sources pulled into common sites. Since those code sources are not under the site owner's control its possible they can become a _poisoned well_. Although its not like the site itself can't get hacked, but often times that means they pull in more _foreign_ scripts with the poisoned payload which would fall into the "unknown" category above and alert the operator. + +This solution is likely to grow in scope as time progresses. My initial aim is to do as little coding as possible and use as much _off the shelf_ software as possible. Patching those packages is likely to happen. diff --git a/imgs/tomato-dnsmasq.png b/imgs/tomato-dnsmasq.png new file mode 100644 index 0000000000000000000000000000000000000000..ae88e40aedc790ebe493b66951991bbe61a5d7e8 GIT binary patch literal 27634 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 Zm>i8hXPNa=8Q=&w83_gPGSN?d{{zs*$PfSk literal 0 HcmV?d00001 diff --git a/imgs/tomato-syslog.png b/imgs/tomato-syslog.png new file mode 100644 index 0000000000000000000000000000000000000000..455975ec66524d36f2a4b887c28dad5ae4a21c36 GIT binary patch literal 30712 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 NJv-EulSzmE`5)jj+|~d9 literal 0 HcmV?d00001