<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Oliver Vivell &#187; GPS</title>
	<atom:link href="http://www.vivell.info/tag/gps/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.vivell.info</link>
	<description>Law and IT</description>
	<lastBuildDate>Sat, 24 Apr 2010 15:30:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Gentoo Linux &#8211; Kismet mit GPSDrive und Bluetooth GPS Maus</title>
		<link>http://www.vivell.info/2007/09/gentoo-linux-kismet-mit-gpsdrive-und-bluetooth-gps-maus/</link>
		<comments>http://www.vivell.info/2007/09/gentoo-linux-kismet-mit-gpsdrive-und-bluetooth-gps-maus/#comments</comments>
		<pubDate>Sat, 01 Sep 2007 14:20:41 +0000</pubDate>
		<dc:creator>olli</dc:creator>
				<category><![CDATA[Divers]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[GPS]]></category>
		<category><![CDATA[Kismet]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.vivell.info/?p=140</guid>
		<description><![CDATA[Dieses Tutorial habe ich vor einiger Zeit im deutschen Gentoo-Wiki geposted. Ich halte es für immer noch ganz aktuell und lesenswert, deshalb habe ich es hier nochmal geposted.

Hier will ich beschreiben, wie man einen Laptop optimal zum WarDriven, WarWalken, etc. einrichten kann. Linux eignet sich hervorragend zum Scannen, Sniffen und als IDS (Intrusion Detection System) für WLANs. Mit Hilfe von Kismet lässt sich selbst alles unter dem bloßen Einsatz der Shell erledigen.



Kismet kann aber noch mehr. Es bringt Unterstützung für GPS mit. Weiterhin können die gefundenen Accesspoints mittels GpsDrive auf einer (Land)Karte eingezeichnet werden. Der Netzwerkverkehr kann geloggt werden. Auf Wunsch kann der Traffic in Ethereal importiert werden. Sogar ein IDS für WLANs bringt kismet von Haus aus mit. Es erkennt Scans von den verbreitesten Scannern wie beispielsweise Netstumbler oder Wellenreiter. Praktisches Gimmick ist, dass man sich per Sprachausgabe ansagen lassen kann, wenn ein neuer Accesspoint gefunden wurde. Das erledigt Kismet unter Einsatz von Festival.]]></description>
			<content:encoded><![CDATA[<p>Dieses Tutorial habe ich vor einiger Zeit im deutschen <a title="Gentoo-Wiki" href="http://de.gentoo-wiki.com" target="_blank">Gentoo-Wiki</a> geposted. Ich halte es für immer noch ganz aktuell und lesenswert, deshalb habe ich es hier nochmal geposted</p>
<p>Hier will ich beschreiben, wie man einen Laptop optimal zum WarDriven, WarWalken, etc. einrichten kann. Linux eignet sich hervorragend zum Scannen, Sniffen und als IDS (Intrusion Detection System) für WLANs. Mit Hilfe von <a class="external text" title="http://www.kismetwireless.net" rel="nofollow" href="http://www.kismetwireless.net/">Kismet</a> lässt sich selbst alles unter dem bloßen Einsatz der Shell erledigen.</p>
<p>Kismet kann aber noch mehr. Es bringt Unterstützung für GPS mit. Weiterhin können die gefundenen Accesspoints mittels <a class="external text" title="http://www.gpsdrive.de" rel="nofollow" href="http://www.gpsdrive.de/">GpsDrive</a> auf einer (Land)Karte eingezeichnet werden. Der Netzwerkverkehr kann geloggt werden. Auf Wunsch kann der Traffic in Ethereal importiert werden. Sogar ein IDS für WLANs bringt kismet von Haus aus mit. Es erkennt Scans von den verbreitesten Scannern wie beispielsweise <a class="external text" title="http://www.stumbler.net" rel="nofollow" href="http://www.stumbler.net/">Netstumbler</a> oder <a class="external text" title="http://www.wellenreiter.net" rel="nofollow" href="http://www.wellenreiter.net/">Wellenreiter</a>. Praktisches Gimmick ist, dass man sich per Sprachausgabe ansagen lassen kann, wenn ein neuer Accesspoint gefunden wurde. Das erledigt Kismet unter Einsatz von <a class="external text" title="http://www.cstr.ed.ac.uk" rel="nofollow" href="http://www.cstr.ed.ac.uk/">Festival</a>.</p>
<p>Dieses Howto beschreibt, wie man Kismet unter Gentoo aufsetzt</p>
<p><span id="more-140"></span></p>
<h1><span class="mw-headline">Rechtliches</span></h1>
<p>Dieses Howto ist keine Anleitung zum Eindringen in ein Wireless LAN. Der Autor will mit diesem Howto auch niemanden dazu anstiften in ein fremdes Netzwerk, eventuell sogar noch ein verschlüsseltes, einzudringen. Bei dem hier vornehmlich verwendeten Tool Kismet handelt es sich aufgrund seines Features als passiver Sniffer um ein äußerst effizientes Tool zur Überprüfung der Sicherheit in Wireless LANs. Dies darf natürlich nur im eigenen WLAN geschehen oder mit der Einwilligung des Berechtigten. Bei Kismet ist es wie bei allen guten Tools, sie können gebraucht, aber auch missbraucht werden.</p>
<h2><span class="mw-headline">Benötigte Hardware</span></h2>
<h3><span class="mw-headline">Die WLAN-Karte</span></h3>
<p>Man benötigt natürlich eine WLAN-Karte. Diese sollte von kismet unterstützt werden. Eine Liste der unterstützten Karten findet man in der <a class="external text" title="http://www.kismetwireless.net/documentation.shtml" rel="nofollow" href="http://www.kismetwireless.net/documentation.shtml">Dokumentation</a> von Kismet. Diese sollte schon konfiguriert sein. Auf die Konfiguration der Karte wird hier nicht eingegangen. Wichtig ist, dass sich die Karte in den sogenannten rfmon-Modus (desweiteren Monitor-Modus) schalten lässt. Der Monitor Mode bei Wireless-LAN-Karten ist vergleichbar mit dem Promiscuous Mode bei herkömlichen Ethernet-Adaptern. Jedoch werden im Monitor Mode alle in der Reichweite einer Karte liegenden Pakete weitergeleitet, nicht wie in einem herkömmlichen LAN, in dem nur solche Packete an den Client geschickt werden, die innerhalb des Netzwerks liegen. Darin liegt die Stärke von Kismet. Es ist ein sog. passiver Scanner (Sniffer). Dadurch, dass die eigene WLAN-Karte kein Paket versenden muss, um Pakete abzufangen, taucht sie in keinem Log-File auf.</p>
<p>Auch bedarf diese Methode keinerlei Authentifizierung im Netzwerk. Verschlüsselte Datenpakete können später geknackt werden.</p>
<p>Ob dies der Fall ist, zeigt ein</p>
<pre># iwconfig eth1 mode monitor</pre>
<p>Und danach ein</p>
<pre># iwconfig eth1</pre>
<p>um zu sehen, ob alles erfolgreich war. So sollte die Ausgabe ungefähr aussehen</p>
<pre>eth1      unassociated  ESSID:off/any

          <strong>Mode:Monitor</strong>  Channel=0  Access Point: 00:00:00:00:00:00

          Bit Rate=0 kb/s   Tx-Power=20 dBm

          Retry limit:7   RTS thr:off   Fragment thr:off

          Encryption key:off

          Power Management:off

          Link Quality:0  Signal level:0  Noise level:0

          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0

          Tx excessive retries:0  Invalid misc:1   Missed beacon:0</pre>
<p>Es ist darauf zu achten, dass der Mode in dem sich die Karte befindet <strong>Monitor</strong> ist.  So lange die Karte im <em>Monitor Mode</em> ist, kann sie nicht für die herkömmliche Kommunikation genutzt werden. Will man sich auch gleich zu den später verbundenen Accesspoints verbinden, ist also eine zweite Karte notwendig. Die andere Möglichkeit ist, die sich im Monitor-Mode befindende Karte wieder in den Managed-Mode zurückzuswitchen. Richtig ;-), wieder mit iwconfig.</p>
<pre># iwconfig eth1 mode managed</pre>
<p>Danach ein</p>
<pre># iwconfig eth1</pre>
<p>um zu sehen, ob alles wieder passt, sollte so aussehen:</p>
<pre>eth1     IEEE 802.11g  ESSID:""

         <strong>Mode:Managed</strong>  Frequency:2.462 GHz  Access Point: 00:00:00:00:00:00

         Bit Rate=54 Mb/s   Tx-Power=20 dBm

         Retry limit:7   RTS thr:off   Fragment thr:off

         Encryption key:off

         Power Management:off

         Link Quality:98  Signal level:0  Noise level:170

         Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0

         Tx excessive retries:0  Invalid misc:164   Missed beacon:0</pre>
<p>Jetzt ist die Karte wieder normal nutzbar und kann sich mit einem Accesspoint verbinden.</p>
<p>Wird der Ad-hoc Modus gewünscht so lautet der Befehl</p>
<pre># iwconfig eth1 mode ad-hoc</pre>
<h3><span class="mw-headline">GPS Maus &#8211; optional</span></h3>
<p>Will man noch GPS einsetzen, benötigt man eine GPS-Maus. Ich verwende die Bluetooth Maus &#8220;WondeXL&#8221; von der Firma &#8220;Xaiox&#8221;. Diese ist aber wie gesagt nur optional, aber wie ich finde, eine lohnenswerte Investition. Für das WarWalking/Driving ist die Verknüpfung eines gefundenen Accesspoints mit dessen GPS-Koordinaten wichtig, so kann der Standort für eine gleichzeitige oder spätere Auswertung in eine Karte eingetragen werden.</p>
<h2><span class="mw-headline">Benötigte Software</span></h2>
<p>Folgende Software brauchen wir um Gentoo zum erkennen von WLANs zu verwenden:</p>
<ul>
<li>Kismet</li>
</ul>
<p>optional:</p>
<ul>
<li>Ethereal</li>
<li>Mysql</li>
<li>Gpsd &amp; GpsDrive (falls ein GPS-Empfänger vorhanden ist)</li>
<li>Festival (falls Sprachausgabe erwünscht)</li>
</ul>
<h1><span class="mw-headline">Installation</span></h1>
<h2><span class="mw-headline">Erstmal kismet</span></h2>
<p>Zuerst müssen wir Kismet installieren. Wenn Ethereal oder GPS Support gewünscht wird, sollte man das jeweilige USE-Flag setzen. Dies kann man in der <span style="color: green;">/etc/make.conf</span> erledigen. Zur make.conf siehe Artikel <a title="MAN makeconf" href="http://de.gentoo-wiki.com/MAN_makeconf">MAN_makeconf</a>.</p>
<p>und los geht&#8217;s:</p>
<pre># emerge -av kismet</pre>
<h2><span class="mw-headline">kismet&#8217;s &#8211; essentialia negotii</span></h2>
<p>Zuerst wollen wir schauen, ob kismet einwandfrei startet. Dafür ist es notwendig, die nachfolgenden Punkte zu konfigurieren.   Die Konfigurationsdateien, die für uns interessant sind, heißen <span style="color: green;">/etc/kismet.conf</span> und <span style="color: green;">/etc/kismet_ui.conf</span>.</p>
<p>In <span style="color: green;">/etc/kismet.conf</span> müssen der Benutzer, unter dem Kismet laufen soll, sowie die Source eingetragen werden. Dies ist die minimale Konfiguration von Kismet. <span style="color: green;">/etc/kismet.conf</span>:</p>
<pre>suiduser=olli

source=ipw2200,eth1,name</pre>
<p>ACHTUNG: Kismet muss als root gestartet werden, es läuft jedoch mit Privilegien des oben angegebenen Users. Also hier wäre das der Benutzer &#8216;Olli&#8217;. Dieser wird mittels &#8216;suiduser=&#8217; gesetzt.</p>
<p>Zweitens muss der &#8216;source&#8217; bearbeitet werden. Dazu gilt folgendes:</p>
<pre>source=sourcetype,interface,name</pre>
<ul>
<li>&#8216;sourcetype&#8217; ist der Typ der WLAN-Karte. In meinem Fall handelt es sich um eine Intel-Karte vom Typ <a class="external text" title="http://ipw2200.sourceforge.net" rel="nofollow" href="http://ipw2200.sourceforge.net/">ipw2200</a>. Eine Liste von Kartentypen und ihren Bezeichungen gibt es ebenfalls in <a class="external text" title="http://www.kismetwireless.net/documentation.shtml" rel="nofollow" href="http://www.kismetwireless.net/documentation.shtml">Kismet Dokumentation</a> (unter <em>12. Capture Sources</em>).</li>
</ul>
<ul>
<li>&#8216;interface&#8217; ist in meinem Fall eth1</li>
</ul>
<ul>
<li>&#8216;name&#8217; ist beliebig zu vergeben.</li>
</ul>
<p>Nun sollte Kismet funktionstüchtig sein. Testweise sollte man nun als root</p>
<pre># kismet</pre>
<p>aufrufen. Wenn alles funktioniert hat, startet die Oberfläche von kismet. Herzlichen Glückwunsch, wir sind schon einen großen Schritt voran gekommen.</p>
<h2><span class="mw-headline">GPS</span></h2>
<p>Hat man einen GPS-Empfänger zur Verfügung, kann man diesen wie folgt unter Gentoo zum Laufen bringen. Solche GPS-Empfänger übermitteln ihre Daten üblicherweise per Bluetooth oder per USB. Wer einen Bluetooth GPS-Empfänger sein eigen nennt, sollte den nächsten Abschnitt lesen, wer einen USB-Empfänger besitzt, kann gleich mit dem Mergen von gpsd beginnen und diesen Punkt überspringen.</p>
<h2><span class="mw-headline">per Bluetooth</span></h2>
<p>Ich setze voraus, dass Bluetooth bereits konfiguriert ist, und <a class="external text" title="http://bluez.sourceforge.net" rel="nofollow" href="http://bluez.sourceforge.net/">Bluez-Utils</a> installiert sind.</p>
<ol>
<li>
<ul>
<li>Den Empfänger einschalten, danach die Umgebung mittels <span style="color: green;">hcitool</span> aus den Bluez-Utils scannen.</li>
</ul>
</li>
</ol>
<pre># hcitool scan

Scanning ...

       00:02:34:09:F4:76       BlahBlah GPS Empfänger</pre>
<p>Prima, wir haben unseren Empfänger gefunden und bekommen seine MAC-Adresse angezeigt. Jetzt müssen wir uns mittels <span style="color: green;">hcitool</span> zu unserem Empfänger verbinden</p>
<pre># hcitool cc 00:02:34:09:F4:76</pre>
<p>Jetzt checken wir noch ob das geklappt hat</p>
<pre># hcitool con</pre>
<p>Die Ausgabe</p>
<pre>Connections:

       &lt; ACL 00:02:34:09:F4:76 handle 41 state 1 lm MASTER</pre>
<p>Wunderbar, jetzt brauchen wir nur noch eine serielle Schnittstelle um die Daten auszulesen. Dies wird mit dem Befehl <span style="color: green;">rfcomm</span> erreicht.</p>
<pre># rfcomm bind /dev/rfcomm0 00:02:34:09:F4:76</pre>
<p>Jetzt müssten wir <span style="color: green;">/dev/rfcomm0</span> mittels cat auslesen können.</p>
<pre># cat /dev/rfcomm0</pre>
<p>So in der Art sollte die Ausgabe erscheinen:</p>
<pre>9,V,4924.4944,N,00640.7639,E,0.00,0.00,090805,,,A*7E

$GPVTG,0.00,T,,,0.00,N,0.00,K,A*70

$GPGGA,111347.119,4924.4944,N,00840.7689,E,0,00,00.0,94.5,M,48.0,M,,*5B

$GPGSA,A,1,,,,,,,,,,,,,0.0,0.0,0.0*30

$GPGSV,3,1,09,2,22,229,25,8,75,185,,10,62,290,39,13,29,087,*7A

$GPGSV,3,2,09,21,,,,26,08,277,,27,62,066,,28,17,157,*42</pre>
<p>Dies sind die RAW-Daten, die später von gpsd eingelesen werden.</p>
<h3><span class="mw-headline">Beenden der Verbindung</span></h3>
<p>Man kann die virtuelle, serielle Schnittstelle  <span style="color: green;">/dev/rfcomm0</span> mittels</p>
<pre># rfcomm release 00:02:34:09:F4:76</pre>
<p>später wieder schließen und mit</p>
<pre># hcitool dc 00:02:34:09:F4:76</pre>
<p>die Bluetooth-Verbindung beenden.</p>
<h2><span class="mw-headline">Installation von GpsDrive</span></h2>
<p>Nachdem wir nun auch den GPS-Empfänger angeschlossen haben, müssen wir uns GpsDrive zuwenden. GpsDrive dient als Frontend zu gpsd. Beides steht im Portage für uns bereit. Jedoch ist gpsd ein Masked Package, das bisher lediglich im &#8220;~x86&#8243;-Zweig zur Verfügung steht. Also machen wir erstmal ein</p>
<pre># echo sci-geosciences/gpsd &gt;&gt; /etc/portage/package.keywords</pre>
<p>Freunde von USB-Empfängern sollten beim Emergen von gpsd das USE-Flag &#8220;USB&#8221; in ihre <span style="color: green;">/etc/make.conf</span> eintragen, damit gpsd mit einem solchen Device umgehen kann. gpsd sucht dann den Empfänger dann bei {Filename|/dev/ttyUSB0}}.</p>
<p>Zuerst emergen wir gpsd</p>
<pre># emerge -av gpsd</pre>
<p>danach noch GpsDrive</p>
<pre># emerge -av gpsdrive</pre>
<h2><span class="mw-headline">Let&#8217;s see where we are</span></h2>
<p>Die Bluetooth-Verbindung zum GPS-Device besteht noch? Alles klar, dann kann&#8217;s ja losgehen. Als normaler User:</p>
<pre># gpsd -p /dev/rfcomm0

# gpsdrive</pre>
<p>Zuerst auf den Button &#8220;starte GPSD&#8221; gehen, danach auf &#8220;Karten downloaden&#8221;. Karten können dann über ein Menü in verschiedenen Maßstäben gedownloaded werden. Wenn alles gut gegangen ist, dann können wir jetzt unseren Standort auf der Karte sehen.</p>
<h2><span class="mw-headline">GPS-Drive und Kismet</span></h2>
<p>Jetzt müssen wir es nur noch schaffen, GpsDrive mit Kismet zu verbinden.  Dafür muss man wieder an der <span style="color: green;">/etc/kismet.conf</span> Hand anlegen.  Hier sind die entsprechenden Einträge:</p>
<pre> gps=true

 # Host:port von GPSD.

 gpshost=localhost:2947

 # Ich habe den Lockmode angeschaltet, weil mein GPS-Empfänger

 # einen <a class="external text" title="http://www.nmea.de" rel="nofollow" href="http://www.nmea.de/">NMEA</a>-Chipsatz besitzt.

 gpsmodelock=true</pre>
<p>Weiter unten noch</p>
<pre>waypoints=true

waypointdata=%h/.gpsdrive/way_kismet.txt</pre>
<p>Kismet legt nun die gefundenen Accesspoints als Waypoints in der Datei <span style="color: green;">~/.gpsdrive/way_kismet.txt</span> ab. GpsDrive sollte diese Datei nun selbstständig finden und die Waypoints in seine Karte übernehmen.</p>
<h2><span class="mw-headline">Kismet sprechen lassen</span></h2>
<p>Ist Festival installiert, weist Kismet auf einen neu gefundenen Accesspoint per Sprachsynthese hin. Hierzu muss zuerst Festival emerged werden. Dabei kann mittels des USE-Flags &#8220;mbrola&#8221; support für &#8220;mbrola&#8221;-Stimmen ermöglicht werden. Aber Vorsicht, der Download vergrössert sich dadurch rapide!</p>
<pre>emerge festival</pre>
<p>Festival sollte &#8220;out-of-the-box&#8221; funktionieren. Jetzt noch schnell die Dateien <span style="color: green;">/etc/kismet.conf</span> und <span style="color: green;">/etc/kismet_ui.conf</span> angepasst.</p>
<pre># Sound sollte ausgeschaltet werden wenn man speech anstellt, da sonst Sound und Sprache

gleichzeitig zu hören sind (klingt scheisse!)

sound=false</pre>
<pre>#Spracheinstellungen

speech=true

festival=/usr/bin/festival

speech_type=speech

speech_encrypted=New network detected, s.s.i.d. %s, channel %c, network encrypted.

speech_unencrypted=New network detected, s.s.i.d. %s, channel %c, network open.</pre>
<h1><span class="mw-headline">Kismet Basics</span></h1>
<p>Hier kurz noch ein paar Tipps zu Kismet. Wer sich die Beschreibung aller Befehle anschauen will, drückt die &#8220;H&#8221;-Taste.</p>
<pre>Befehl  - Auswirkung

<strong>e</strong> - listet alle Kismet Server auf

<strong>z</strong> - in den Fullscreen schalten

<strong>m</strong> - Sound- und Sprachausgabe abschalten

<strong>q</strong> - Menu schließen</pre>
<p>Netzwerkspezifisch</p>
<pre>Befehl  - Auswerkung

<strong>s</strong> - Alle Netzwerke sortieren nach einstellbaren Kriterien

<strong>c</strong> - Alle Clients im gewählten Netzwerk anzeigen

<strong>i</strong> - Informationen über das augewählte Netzwerk

<strong>l</strong> - Zeigt die Signalstärke der Karte

<strong>a</strong> - Statistiken</pre>
<p>That&#8217;s all man.</p>
<h1><span class="mw-headline">Weiterführende Links</span></h1>
<ul>
<li><a class="external text" title="http://www.kismetwireless.net" rel="nofollow" href="http://www.kismetwireless.net/">home of Kismet</a> &#8211; Dokumentation, ist lesenswert</li>
<li><a class="external text" title="http://gpsdrive.kraftvoll.at" rel="nofollow" href="http://gpsdrive.kraftvoll.at/">Home of GpsDrive</a></li>
<li><a class="external text" title="http://www.ostertag.name/gpsdrive" rel="nofollow" href="http://www.ostertag.name/gpsdrive">Home of GpsDrive CVS Versions</a></li>
<li><a class="external text" title="http://www.nmea.de" rel="nofollow" href="http://www.nmea.de/">Das NMEA GPS Protokol</a></li>
<li><a class="external text" title="http://www.tipsybottle.com/technology/wireless/RedHat8-Kismet-HOWTO.shtml" rel="nofollow" href="http://www.tipsybottle.com/technology/wireless/RedHat8-Kismet-HOWTO.shtml">Kismet und RedHat8 (englisch)</a></li>
</ul>
<p>Wem die Stimme in Festival nicht gut genug erscheint: <a class="external text" title="http://gentoo-wiki.com/HOWTO_let_your_Gentoo_speak_with_speechd" rel="nofollow" href="http://gentoo-wiki.com/HOWTO_let_your_Gentoo_speak_with_speechd">Festival tunen</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.vivell.info/2007/09/gentoo-linux-kismet-mit-gpsdrive-und-bluetooth-gps-maus/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
