Hilfreiches:
Wireshark-Hints:
Wireshark-Filter:
(udp.port == 4729) && !(gsm_a.dtap_msg_rr_type == 0x21) && // Keine Paging Request Type 1 messages anzeigen !(gsmtap.chan_type == 5) // Keine Paging Channel (PCH) messages
Wireshark-Filter:
gsm_a.imsi
Konzept: Wireshark-Dump als PDML (XML-Format) exportieren, dann mit Ruby-Skript (basierend auf Nokogiri) die IMSIs aus den Paging Requests Type 1 herausfischen.
http://nokogiri.org/tutorials/searching_a_xml_html_document.html
ugly hack is ugly:
require 'rubygems'
require 'nokogiri'
# ugly hack is ugly but works.
@doc = Nokogiri::XML(File.open("einbuchen.pdml"))
puts "timestamp\timsi"
imsi_xml = @doc.xpath("//field[@name='gsm_a.imsi']")
imsi_xml.each{|node|
imsi = node["value"]
packet_xml=Nokogiri::XML(node.parent.parent.parent.to_s)
timestamp_xml=packet_xml.xpath("//field[@name='timestamp']")
timestamp=timestamp_xml[0]["value"]
puts "#{timestamp}\t#{imsi}"
}
Mit mehreren Mobile Stations dann gucken, ob $Leute an verschiedenen Orten mehrfach auftauchen. Als KML darstellen.
http://www.omninerd.com/articles/Automating_Data_Visualization_with_Ruby_and_Graphviz
BSIC: http://en.wikipedia.org/wiki/Base_station_identity_code → brauchen wir nicht wirklich, da ja die position des Sniffers bekannt ist.
tcpdump -i lo port 4247 -w foo.pcap tshark -r foo.pcap -T psml > foo.pdml