FOFA Proを使って見た

今回はfofa proというサービスの検索のフィルタリング一覧と実際にみんな大好きwebカメラ(主に監視カメラ)の映像が公開されているサイトを見つけだします。
これはOSINTというセキュリティの分野です。OSINTは他のセキュリティの分野とは違いほぼ合法的に行うことができます。

fofa proとは

通常のgoogleやyahooなどの検索エンジンは80番ポートや443番ポートのwebサーバーを検索するのに特化した検索エンジンでが、fofa proはほぼ全てのネットワーク機器を検索できます。
fofa proと似た検索エンジン(実際には違う)は他にもあります。
有名なサイトのURLを少しだけ張っておきます。解説はしませんが、どれも似たような部分はあります。もちろん、違う部分もあります。

https://fofa.so/
https://www.zoomeye.org/
https://www.shodan.io/
https://censys.io/ipv4
どのサイトもアカウントを作らなくても使えますが、登録しとかないと検索に制限が掛かったりします。
又、プレミアム会員的なものになることもできサイト事に値段が違います。ブラックフライデーで値段が下がったりしたりするのでそこを狙うのもありですね!

使い方

検索エンジンにはフィルターという機能が存在します。上記の4つも同様ですがサイトごとに少し違う記入方法です。
例えば

censys  ・・・location.country
shodan ・・・country

これだけ見るとcensysのほうが使いにくいと感じるかもしれませんが、予測変換
が出てきてくれるので一概には使いにくいとは言えないです。
f:id:hi_kitty:20191007214220j:plain

話がそれましたが下記がfofa proのフィルター一覧です

名称 説明
title = "" タイトルを検索
header = "" httpヘッダーから検索
body = "" html本文中から検索
domain = "" Webサイトを検索
host = "" URLからホストを名前として使用する検索
port = "" 対応するポートを検索
protocol = "" プロトコルタイプを検索
ip = "" ip検索。ネットワークセグメントを照会する場合はip = "12.34.56.78/24"
country = "" 指定された国(コード)検索します。フルネーム?で検索するとヒットしません。japan => jp
city = "" 指定された都市を検索
region = "" 特定の行政区域を検索
cert = "" 証明書(httpsまたはimapなど)を検索。例えばcert = "let's encrypt"など
banner = 〇〇 バナーを検索
type = service すべてのプロトコルを検索し、サブドメインとサービスをサポート
os = 〇〇 osを検索
server == "" サーバーを検索。例えばserver = "iis"
app = "" アプリケーションの検索
after = "" 以降
before = "" 以前
例えば after = "2019" before = "2019-10-1"は2019年1月1日から10月1日まで
asn = "" asnを検索。例えばasn = "9304"
org = "" 指定された組織(団体)を検索
is_ipv6 = true(false) ipv6の有無を検索
&& なおかつ
|| または

知っていると思いますがDmainとHostの違いはDomainは世界で一意でHostはネットワーク内に一意です。
例えば、例えばdomain = "www.com"で検索するとwww.comは当然一つしか出ないがhost = "www"で検索するといっぱい出てきます。

実際にwebカメラを見つける

今から実際にwebカメラを見つけていきますが、たまにユーザー名とパスワードを求めてくるサイトもあります。その場合は諦めてパスワードがない別のサイトを閲覧しましょう。
どれだけ推測しやすいパスワードでもログインしてしまったら不正アクセス禁止法に引っ掛かります。
つまり犯罪ですので絶対にやめましょう!
以上を踏まえて安全に見ていきましょう!

どのように検索するの?って初めは思うと思います。私もそうでしたし、今もそうです:::
最初の一手はgoogleとかで他の同じような事をしている人の記事を読むことです。
たとえば、こちらの記事がとても素晴らしいです。
qiita.com

で次に色々見ていく中で他の共通点を探していきます。
たとえばメーカーがパナソニックのBBシリーズだったら「live/mainview_hide.html」がhtmlのbodyに入っています。

この2点を踏まえていくつか検索に使えるキーワードを載せます。

title = "Network Camera"
body = "live/mainview_hide.html"
title = "webcamxp"
location = "/cgi-bin/guestimage.html"
etc...

fofa proの絞り込みを組み合わせれば限定的に検索できます。
たとえば

title = "Network Camera" && port="8080" && country = "jp"

こうすることでかなりの確率で認証がないwebカメラが見れるはずです!

おまけ

今回使ったfofa proなんですが、ちゃんとわかっていないのですが会員プランの値段が他の3つよりもかなり安いと思います。

f:id:hi_kitty:20191008102017j:plainf:id:hi_kitty:20191008102027j:plain
基本月額制がポピュラーだと思いますが、こちらは300円or1000円払えば一生使えるのかな?って思います。誰か教えてください!!

また今回載せて頂いたcensysを使った方法でやらなかったと言うと理由は2つあります。
1つ目は簡単な理由で、fofa proについて書かれている記事が少ない気がしたからです!
2つ目はcensysは全てのポートを感知できるわけではないからです。例えば

protocol = "minecraft"(違う結果が出る場合があるがport = "25565"でも可)

とfofa proで調べたら実際に25565番ポートのminecraftサーバーが感知できますが、仮に同じipアドレスをcensysで調べてもヒットはしますが25565番ポートは感知できません。
以上2点から今回はfofa proを使わせて頂きました。
(まぁ検索だけだったらshodanでもよかったんですが...)

感想

毎週何かしらブログを更新しようかなって思っていましたがさすがに先週は忙しすぎました;;;
そして4日後に記事を書きたいのですがテーマが決まっていません!
まぁ、今秋の土日に間に合うように何かしらやります。
そろそろ久しぶりに新しいプログラミングでもしたいです!
以上!!