Nein. Das heisst, dass wenn du nicht verstehst, warum ein Tool etwas auf eine bestimmte Art und Weise macht, du dir die Grundlagen dazu aneignen solltest. Damit kannst du dir dann möglicherweise selbst eine Lösung erschliessen und musst nicht darauf hoffen, dass dir jemand ein Tool erklärt, für das es auch ein
Handbuch auf der Entwicklerwebsite gibt. Wir sind kein Supportboard für Menschen, die zu faul sind in Anleitungen zu schauen oder die nicht von sich aus ein bisschen Interesse zeigen wollen. Das hat hier hat bei Weitem nichts mit "komplexen" Zusammenhängen zu tun.
Üben wir das mal in der Praxis:
- Cain führt einen sog. Man-in-the-Middle-Angriff mittels ARP Poisoning aus. Das bedeutet, es trägt mittels gefälschten ARP-Paketen den aktiven PC in die Routing-Tabelle des Routers und eines Opfers im lokalen Netzwerk ein und spielt so für den Router das Opfer und für das Opfer den Router. Der aktive PC steht somit in der Mitte zwischen beiden und kann den gesamten Datentransfer mitlesen.
- Cain führt diesen Angriff zwar durch, besitzt allerdings in seiner Oberfläche keinen Sniffer im klassischen Sinne. Cain extrahiert lediglich bestimmte Dinge auf Basis von regulären Ausdrücken (die natürlich nur auf bestimmte Websites bzw. Protokolle beschränkt sind!) aus dem Datentransfer. Die restlichen, für Cain unwichtigen Daten, werden in Textdateien gesichert, die zur weiteren Untersuchung dienen können. Diese Session-Daten, zu denen unter HTTP auch Host, Pfad oder Cookiedaten gehören, können dann über Rechtsklick auf die Session -> View aufgerufen werden. Das ist auch im offiziellen
Handbuch beschrieben.
- Cain beherrscht diese Angriffe auch auf (verschlüsselte) TLS-Verbindung, z.B. HTTPS. Dabei wird - vereinfacht gesagt - das Zertifikat des Servers durch ein eigenes Zertifikat ausgetauscht. Akzeptiert der Client dieses Zertifikat, so kann Cain die eigentlich verschlüsselten Daten entschlüsseln. Kann er die Daten nicht entschlüsseln, so sieht Cain nur die IP des Zielhosts, nicht jedoch den Pfad oder andere Daten, da diese beim Aufbau der TLS Verbindung noch nicht bekannt sind. Das letzte Mal, als ich Cain getestet hatte, beherrschte Cain auch noch kein TLS SNI, weswegen ihm noch nichtmal der Host bekannt war. Ein Angreifer könnte sich diese Information lediglich mittels eines Reverse DNS Lookups oder auf Basis von Zertifikatsinformationen den Host bestimmen - das ist aber sehr ungenau, gerade bei Hosts, die in Zertifikaten nur mit Wildcards (*.google.de) angegeben werden. Ob Cain zumindest das macht, kann ich ebenfalls nicht sagen.
- Wenn man mit Netzwerkdumps arbeiten will, dann macht es Sinn, die Daten nicht in einem Cain-eigenen Format zu speichern, sondern im weit verbreiteten PCAP-Format. Dazu führt man wie gewohnt mit Cain den ARP-Poisoning-Angriff durch und startet daraufhin einen richtigen Sniffer, z.B. Wireshark. Mittels wireshark kann man nun einen Dump des gesamten Verkehrs machen und die Daten im PCAP-Format speichern.