| (In)security allgemein Sicherheit, Anonymität im Netz. Schutz und Maßnahmen. Prävention und Konzepte. Sicherheitsarchitekturen allgemein und auf der Netzwerkebene. |
Diskussion: Anti Portscanner Konzept im Forum (In)security allgemein, in der Kategorie Security Area; Anzeige Hi Leute, ich hoffe mal das ich mit meinem ersten Thread gleich das richtige Forum getroffen habe. Also mein ...
![]() |
| | #1 (permalink) |
| Anzeige Hi Leute, ich hoffe mal das ich mit meinem ersten Thread gleich das richtige Forum getroffen habe. Also mein Anliegen ist es etwas mehr über Sicherheitstechnicken zu erfahren daher dachte ich das dieses Board wohl am geeignetsten ist. Es gehtin diesem Thread um die Frage, wie man einen Anti Portscanner schreibt(mir ist leider keine passendere Beschreibung eingefallen) Nun, einen Portscanner zu schreiben ist kein Hexenwerk. Mich interresiert jetzt die Gegenseite. Wie schreibt man ein Programm das feststellt ob man abgescanned wird. Mein erster Ansatz war natürlich (ich denke das tun diverse Virenscanner der unteren klasse ebenso) den Datenverkehr abzuhören und ab einer ungewöhnlich hohen Anzahl an anfragen zu reagieren. Man könnte sich dabei noch eventuel am Ansteigenden Port orientieren. Dennoch ist mir das Konzept zu unzuverlässig. Daher würde ich gerne von euch, denjenigen die vllt. schon mehr erfahrung haben, wissen wie ihr soetwas angehen würdet. Falls das relevant sein sollte, ich programmiere in C# unter Vista mit dem VS2005 Gruß c0ntr0l | |
| | |
| | #2 (permalink) |
| Guest Likes: | Man kann alle ports aufreissen und einfach gucken ob dann da was kommt. portsentry hats aehnlich gemacht und dem scanner dann ein offenes Scheuentor praesentiert. Du nimmst die relevanten ports (den meistens werden die gescannt wo schwache services draufsitzen oder bots kommunizieren) und machst sie auf, jeweils in nem eigenen thread. Dann sitzt du einfach auf jeder socke und horchst was kommt. Oder du guckst dir nen sniffer an und wertest logs aus.. |
|
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
| Moderator ![]() Registriert seit: 30.03.04 ![]() Likes: 14 | Hallo, bevor man einen Anti Portscanner schreibt, muss man verstehen, wie Portscanner arbeiten. Deine Aussage, dass ein Portscanner zu schreiben kein Hexenwerk sein, ist komplett falsch. Klar, einfach nacheinander auf alle Ports connecten und schauen wo es klappt. Aber wie funktioniert ein TCP Syn Scan oder ein Null Scan? Wie schafft es nmap, einen stealth Scan (also mit FIN-Segmenten) zu machen? Wenn dies für dich alles pipifax ist, dann sollte ein Anti-Port-Scanner auch kein Problem darstellen, oder? Also zurück zur Frage: Normale Portscanns zeichnen sich dadurch aus, dass Packete an aufsteigende Portnummern senden, bzw. sie senden viele Packete an viele verschiedene Ports die unter Umständen geschlossen sind. Dein Programm muss also immer reagieren wenn ein Host versucht eine Verbindung aufzubauen, bzw. ein Syn-Packet sendet an einen Port. Wenn dann von einem Host zuviele verschiedene Ports versucht werden zu erreichen, wirfst du diesen raus. Auf Anwendungsebene hast du aber keine Chance soetwas zu realisieren, du musst dich schon auf die Kernelebene runterlassen. Zum Glück musst du keinen eigenen Treiber schreiben, das haben andere schon gemacht, und nennt sich WinPcap. |
| | |
| | #4 (permalink) | |
| Themenstarter | Zitat:
Hab schon in einigen Threads hier was von den Stealthscans gelesen. Muss ich mir ma ansehen da das meiner Meinung nach ein sehr Interresantes Thema ist. WinCap hab ich zwar noch nicht benutzt aber schon viel gelesen. (Wollte es gestern mal durchsehen was alles möglich ist.) Jedenfalls vielen Dank erstmal für eure Antworten. Gruß c0ntr0l | |
| | |
| | #5 (permalink) |
| Registriert seit: 10.08.06 ![]() Likes: 0 | ich versteh nicht ganz was ein anti portscanner überhaupt bringen soll... ich mein du kannst doch mit einem portscanner dich selbst scannen, und die offenen ports dann von einer firewall überwachen lassen... vielleicht mach ich grad n gedankenfehler, aber denke das ist das einfachste^^ |
| | |
| | #6 (permalink) |
| Moderator ![]() Registriert seit: 30.09.06 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 442 | Portscan-Detektoren werden gern eingesetzt um Skriptkiddies auszusperren. Anstelle des Thread-Eröffners würde ich mir einfach mal die Quelltexte von psad (PortScan Attack Detector) anschauen. Ist zwar eigentlich für Linux, dürfte sich aber bestimmt in ähnlicher Weise auch auf Windows umsetzen lassen. Man muß halt nur API-mässig etwas umdenken.
__________________ Mein Blog - Mein Job - Diaspora Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund. Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+ |
| | |
| | #7 (permalink) |
| Themenstarter | Hi ![]() also ich hab mir bisher mal die Tipps von Elderan zu herzen genommen und mal die Theoretische funktionsweise einiger Scanner Typen angesehen. Ich werde die Tage versuchen mal diese umzusetzen. Ich denke der Syn Scan sollte, sofern mir WinCap diese möglichkeit bietet nicht schwer umzusetzen sein. Den NULL Scan muss ich mir nochmal genauer anschauen da ich nochnicht ganz dessen Prinzip verstanden habe. Sehr Interresant fand ich noch den so genannten Idle Scan der mit einem Zombie PC arbeitet. Dessen Prinzip ist klar, jedoch ist die praksis ja wieder etwas ganz anderes. ![]() Ich werde versuchen ersteinmal diese Scanner Typen umzusetzen. Dann werde ich mir mal den Code psad ansehen. Nochmal danke für die bisher wirklich hilfreichen Tips! ![]() Gruß c0ntr0l |
| | |
| | #8 (permalink) |
| Registriert seit: 23.03.05 ![]() Likes: 22 | Ist es nicht sinvoller, die Dienste so gut abzusichern, dass Scriptkiddies eh keine Chance mehr haben, als zu versuchen die Ports zu verschleiern obwohl die gewonnene Sicherheit doch nur minimal ist? Kritische Dienste könnte man auch bspw. nur über ein VPN zur Verfügung stellen. |
| | |
| | #9 (permalink) |
| Themenstarter | Hi xblax, mir ging es eigentlich weniger um den praktischen einsatz eines solchen Programmes, sondern eher darum die funktionsweise eines solchen Programmes zu verstehen. Gruß |
| | |
| | #10 (permalink) | |
| Moderator ![]() Registriert seit: 30.09.06 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 442 | Zitat:
__________________ Mein Blog - Mein Job - Diaspora Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund. Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+ | |
| | |
| | #11 (permalink) |
| Hoi, Mal ne Frage, ich hoffe ich kann die hier schnell einschieben, welcher Scan Typ wird leichter entdeckt (also öfters überwacht), SYN oder FIN Scans? Weil FIN Packete auf geschlossene Ports ja eigentlich immer auffallend sind... Außerdem funktionieren sie ja nicht auf allen Systemen und sind auch noch ungenau (filtered|open) mfg, Xalon | |
| | |
| | #12 (permalink) |
| Guest Likes: | @Xalon Das haengt von der Guete deines IDS und dessen Regeln ab und/oder deinen Faehigkeiten als Analyst, schnell zu erkennen ob gewisse logeintraege (wenn du sowas loggst) logisch sind, bzw keinen Sinn bei "normalen" TRaffic ergeben. |
|
| | #13 (permalink) | ||
| Moderator ![]() Registriert seit: 30.03.04 ![]() Likes: 14 | Hallo, also ein SYN-Scan zuverlässig zu filtern ist schwierig. Viele Würmer scannen nur bestimmte Ports, u.U. nur einen einzigen auf dem der verwundbare Dienst normalerweise läuft. Diese Mini-Scans zu finden und rauszufiltern ist unmöglich. Auch IPs zu sperren, die ein SYN Packet an einen geschlossenen Port senden, kann man nicht machen. Was ist, wenn ein User ausversehen beim Connecten den falschen Port eingetragen hat, 23 statt 25 für den SMTP Server? Manche Anwenunden testen auch erst den einen Port, über den z.B. eine verschlüsselte Verbindung möglich ist und wechseln dann auf den unsicheren Port. Also solche Portscans zu filtern ist relativ schwer. Klar, das Scriptkiddie welches alle 65000 Ports durchläuft, den kann man schnell abschießen, aber bei Personen du nur auf einzelne Dienste testen? Hm zum Thema FIN Packete: FIN-Packete verwendet man oft, um aufs OS zu schließen. Wenn du weißt, dass Port 80 offen ist und auf FIN ein RST Packet kommt, dann ist das OS sehr wahrscheinlich Windows. Ansonsten bei Servern wird ja oft Linux/Unix verwendet, dort wird ja mit ACK geantwortet wenn ein FIN Packet eintrifft und der Port offen ist. Also so einen FIN/Stealth Scan muss man immer etwas anpassen. Das Problem an stealth Scans ist, dass diese aussehen wie 'kaputte' TCP-Packete. Wie soll also eine IDS/Firewall nun unterscheiden, ob es nicht einfach nur ein kaputtes TCP Packet ist oder ob es ein scan ist. TCP ist ja ein zuverlässiges Protokoll, so dass man nicht einfach kaputte Packete verwerfen darf, sondern der Zielhost muss gegebenfalls entsprechend antworten. Zitat:
Zitat:
| ||
| | |
| | #14 (permalink) |
| @Gulliver: Schon klar, drum frag ich ja, bei welchem Typ es wahrscheinlicher ist das man auffliegt. @Elderan: Falsch, Linux verwirft FIN Packete auf einen offen Port und antwortet nicht mit ACK. Das tut es nur wenn es den Verbindungsabbau mit FIN "weiterführen" will, es muss also bereits eine Verbindung bestehen.Darauf folgt dann ein FIN Packet, sobald der Client auf dieses mit ACK geantwortet hat ist die Verbindung abgebaut. mfg, Xalon | |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Passwort-Berechnungs-Konzept so tragbar? | Julian F. | Cryptography & Encryption | 8 | 25.01.08 15:26 |
| Konzept umsetzen... | jami | (Web-) Design und webbasierte Sprachen | 9 | 06.04.06 23:50 |
| NASA entschiedet sich für Schwerlastträger Konzept | blueflash | Science & Fiction | 0 | 25.08.05 22:32 |
| Zwei US-Studenten entwickelten Sabotage- Konzept für P2P-Netzwerke | Tec | News & Ankündigungen | 0 | 07.09.02 03:35 |
| Portscanner | Chris | (In)security allgemein | 9 | 06.02.02 12:18 |