GoogleのWebアプリの脆弱性スキャナ、skipfishを使ってみました。

$ brew install skipfish
$ skipfish -o log -W ~/homebrew/Cellar/skipfish/2.03b/libexec/dictionaries/minimal.wl http://hamcutlet.fjord.jp

homebrewで簡単にインストールできます。結果はhtmlファイルで出るので-oで結果の格納先ディレクトリを指定します。(作っておく)

-Wで辞書を指定します。まずは簡単にと思って一番手軽そうなminimal.wlを選んでHam Cutletのサイトに対して実行してみました。

・・・。

これが滅茶苦茶時間かかる。下記のScan timeを見てください。超簡単なサイトにminimal.wlでやっただけで4時間掛かりました・・・。

skipfish version 2.03b by 

  - hamcutlet.fjord.jp -

Scan statistics:

      Scan time : 4:06:32.814
  HTTP requests : 544785 (36.8/s), 177569 kB in, 211488 kB out (26.3 kB/s)  
    Compression : 185 kB in, 529 kB out (48.1% gain)    
    HTTP faults : 9 net errors, 0 proto errors, 841 retried, 0 drops
 TCP handshakes : 5489 total (99.3 req/conn)  
     TCP faults : 0 failures, 8 timeouts, 2 purged
 External links : 28 skipped
   Reqs pending : 0           

Database statistics:

         Pivots : 29 total, 29 done (100.00%)    
    In progress : 0 pending, 0 init, 0 attacks, 0 dict    
  Missing nodes : 18 spotted
     Node types : 1 serv, 26 dir, 1 file, 0 pinfo, 0 unkn, 1 par, 0 val
   Issues found : 82 info, 10 warn, 1 low, 85 medium, 0 high impact
      Dict size : 2182 words (11 new), 35 extensions, 196 candidates
        
[+] Wordlist '/Users/komagata/homebrew/Cellar/skipfish/2.03b/libexec/dictionaries/minimal.wl' updated (11 new words added).
[+] Copying static resources...
[+] Sorting and annotating crawl nodes: 29
[+] Looking for duplicate entries: 29
[+] Counting unique nodes: 17
[+] Saving pivot data for third-party tools...
[+] Writing scan description...
[+] Writing crawl tree: 29
[+] Generating summary views...
[+] Report saved to 'log/index.html' [0x1366e0ff].
[+] This was a great day for science!

結果は下記のように分り易いHTMLで出ます。(Chromeではjsが動かなかった)

Skipfish - scan results browser

コレだけを持ってお客さんに「弊社のサイトは安全です」と言えるかというとうーむ・・・。しかし、結果を見てみると、なるほどという点もかなりあるので怪しいところを修正する目安になりました。

でもまあ、兎に角実行時間が長い・・・。実用的なサイトに対してフルに実行したら1日じゃ終わらなそうです。