AndroidでWardrivingを試す

Wardriving?

 Wardrivingはドライブしながら位置情報とWi-Fiの電波を拾うことでどこにどんなWi-Fi APがあるかを記録することを言います(多分).これまで初期の頃はThinkPad 240Z でNetworkStumbler やKismet を動かしながら自転車で走り回ったり,iPad の脱獄アプリで記録したり,最近ではRaspberryPi でKismet を動かして保存していました.

何が楽しいの?

 コミックマーケットではアクセスポイント名にネタを仕込んだネタAP がよく飛んでいるのでこれを見るのが楽しみです.今回RaspberryPi で設定を行い動かしていましたが,動作確認もしていなかったのでサブにAndroid のアプリがないか探したらWardrive というアプリケーションを見つけました.
 WiGlE( https://wigle.net/ )向けのアプリケーションで,WiGlE のアカウントを取得してアップロードすることも出来ます.アカウントを設定しなければアップロードされませんしデータの利用も可能です.
 実用的な使い方としてはログから契約している公共無線LANサービスのエリアを探すと言ったことが可能です.例えば https://wigle.net/ のmapページに移動して調べたい緯度経度に移動した後右側のSSIDに調べたいSSIDを入力して[Filter]ボタンを押すとWigleにアップロードされたデータの中から検索した結果が表示されます.

Wardrive の使い方

 利用方法はとても簡単で Wardrive を導入して起動した後 [START] SCANNING ボタンを押すと記録が始まり,GoogleMap を利用した地図上にアクセスポイント名がポイントされていきます.メニューの Export からto KML (Google Earth) を選ぶと端末のルートディレクトリに wardrive.kml として保存されます.
Wigle のアカウントを持っている場合は設定からアカウントとパスワードを保存したうえで,Export からto KML for WiGlE(and Uploa it)* を押すとKML ファイルの作成とWiGlE へのアップロードが行われます.

Screenshot_2015-02-08-00-51-00

 保存は KML 形式で行われてGoogleEarth などのアプリケーションで閲覧できます.アクセスポイント名を眺めたいだけであれば以下のようにしてAP名だけを抜き出すといいでしょう.

% grep name wardrive.kml | cut -c 18- | cut -d']' -f1| sort -n | uniq | lv

WiGLE を見に行ったらWardrive は公式アプリではないようです.

Wigle Wifi Wardriving が公式のようです.こっちだと設定でOSMのタイルマップが使えそうなのですがそれらしい設定の Use WiGLE OSM tiles にチェックを付けてアプリを再起動しても反映されません….

Screenshot_2015-02-08-02-16-06
Screenshot_2015-02-08-00-53-17
Screenshot_2015-02-08-02-16-14
Screenshot_2015-02-08-02-16-24
Screenshot_2015-02-08-02-16-42

 さて,肝心のネタAPですが,感度が悪いのかしきい値が厳しいのか去年よりも大分少なかったです.でも利用方法はすごくお手軽なのでおすすめです.次はRaspberry Pi を携帯電話のリチウムイオンバッテリーで動かしてコンパクトにパッケージングして運用できないか試してみようと思っています.




NEXUS5 を落っことしてしまいISAI LGL22 を買った(Linux環境でのroot取得とカメラ無音化)

Nexus5 をどこかに落っことしてしまい(体調が悪い時で記憶があやふや.桜島港から家の間のどこかに多分落ちている)不便なので代替機を探して中古のISAI LGL22 を入手した.兄弟機で面白みはあまりないが,LTE でmineo が使えるのとUnLock が安価&安易でDocomo の電波も掴みそこそこ安いということで….

とりあえず初期化してroot 取ってカメラ無音化までした.root 取得の手順は確立されているけれどWindows向けでバッチファイルを叩くものしか見当たらなかったのでLinux 向けにメモ.(WinでもMacでも同じだけど)

  • 初期化
  • OS Update
    TAO で 4.4.2 に.
  • 画面のロックをパスワードに
  • 所有者情報設定
  • mineo 設定
  • 暗号化
    ※充電が80%以上になってから出ないと実行できない.
  • root取得
    isai_rootkit_kk_only.rar を以下から入手して利用した.https://mega.co.nz/#!h5EAmY7K!rrM2jZlCnRGc-EzhPhrxQ8gfPtGAcuv_mPPH8lYo7_M

    sha1sum    0a048c7be86ca64dc755a31a3c3a8d32455a3361
    sha256sum    67b3481f15e5f597e60397b9294074354877cd283ecede5bd8ba171e14392cd2
    

    前準備としてUSBデバッグを有効にしてPCと接続しUSBデバッグを有効にしておく.
    isai_rootkit_kk_only.rar を展開して install.bat を見ながら以下のような感じでコマンドを叩く.
    ※要開発環境.

    cd isai_rootkit_kk_only
    adb wait-for-device
    adb push "files" /data/local/tmp
    adb shell chmod 755 /data/local/tmp/getroot
    adb shell chmod 755 /data/local/tmp/busybox_file
    adb shell chmod 755 /data/local/tmp/install.sh
    adb shell chmod 755 /data/local/tmp/remove_apps_and_bins.sh
    adb pull /system/app/LGDMSClient.odex ./backup/system/app/LGDMSClient.odex
    adb pull /system/app/LGDMSClient.apk ./backup/system/app/LGDMSClient.apk
    adb pull /system/bin/subsystem_ramdump ./backup/system/bin/subsystem_ramdump
    adb pull /system/bin/dumpstate ./backup/system/bin/dumpstate
    adb pull /system/bin/fssamond ./backup/system/bin/fssamond
    adb shell "/data/local/tmp/getroot /data/local/tmp/remove_apps_and_bins.sh"
    adb wait-for-device
    adb shell "/data/local/tmp/getroot /data/local/tmp/install.sh"
    adb wait-for-device
    adb shell "rm /data/local/tmp/getroot"
    adb shell "rm /data/local/tmp/busybox_file"
    adb shell "rm /data/local/tmp/eu.chainfire.supersu-193.apk"
    adb shell "rm /data/local/tmp/remove_apps_and_bins.sh"
    adb shell "rm /data/local/tmp/install.sh"
    adb shell "rm -rf /data/local/tmp/system"
    
  • カメラ無音化
    /system/media/audio/ui/camera_click.ogg と /system/media/audio/ui/VideoRecord.ogg を退避する.

    adb shell
    su
    mount -o remount,rw /system
    cd /system/media/audio/ui/
    mv camera_click.ogg camera_click.ogg-
    mv VideoRecord.ogg VideoRecord.ogg-
    cd
    sync
    mount -o remount,ro /system
    exit
    exit
    

    #起動音と起動後のパスフレーズ入力時のキークリック音も消したいが見当たらず.

  • アプリ入れたり

HYUNDAI A7HD 無線LAN アンテナ調整

HYUNDAI A7HD この端末は無線LAN の感度がすごく悪いです.
AP からほんの2m くらいの距離でも通信に失敗してしまったりします.

しかし,内情アンテナの角度を変更することで改善されるという書き込みを見かけたので試してみました.

分解手順

アンテナ位置変更

DSC00025
DSC00028

写真の通りアンテナを180度回転させてアンテナ線をDC/HDMI の下をくぐらせて再度固定するだけです.
固定後再度裏蓋を取り付けて起動してみます.

目に見えて感度はましになったようです.
#設定前の感度を確認しておくべきでした><
device-2012-09-07-021746

アプリの更新や,ファイルのダウンロードが安定するようになりました.
これまでは通信時はAP の側に置いて放置したりしてたのですが,普通に使えそうです.

ただ,iPad などに比べるとまだ弱いです><