「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

FINスキャン

pointこの用語のポイント

pointポートスキャンの やり方だよ

pointFINパケットを送って応答を見るよ

pointスキャンしているのがバレにくい やり方だよ

スポンサーリンク

簡単に書くよ

FINスキャン(読:フィンスキャン 英:FIN scan)とは

ポートスキャン(いろんなポートに片っ端から接続してみて、開いているポートを調べること)の やり方のひとつ
であり

FINパケット(FINフラグ(とACKフラグ)に1がセットされたパケット)を送ってみて応答があるか確認することで開いているポート(ネットワークとパソコンの間にあるドア)を探すやり方
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として

FINパケット
ポート
ポートスキャン


について説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

FINパケットは「切断するねー、バイバイ」な連絡に相当するデータです。
3ウェイハンドシェイク」と呼ばれるやり方で通信していて、接続を切りたいときに相手に送ります。
きちんと説明すると長くなるので詳細には触れません。
興味がある方は、用語「FINパケット」の説明を ご覧ください。

FINスキャン

ポートは「ネットワークからパソコンさんに お邪魔するときに通るドア」です。

FINスキャン2

※話を単純化するために「パソコン」と書きましたが、その他のコンピュータ類でも同じです。

パソコンさんには番号を振られたドアが たくさん付いています。

FINスキャン3

通信において、データを受け取るときは、ネットワークを通ってきたデータが、たくさんあるドアの どれかを通ってコンピュータに入ってきます。

FINスキャン4

データを送るときは、コンピュータの中にあるデータが、たくさんあるドアの どれかを通ってネットワークの世界に出ていきます。

FINスキャン5

コンピュータには たくさんのドアが付いています。
データの種類によって どのドアを通るか決まっている……こともあれば、決まっていないこともあります。

FINスキャン6

例えば、インターネットのデータは80番のドアとか443番のドアを通ると決まっています。

FINスキャン7

FTP(インターネットの線を使ってファイルをやり取りする仕組み)のデータは20番とか21番のドアを通ります。
ここでは便宜上、20番のドアを通ることにしておきましょう。

FINスキャン8

telnet(他のコンピュータを遠隔操作するときに使う仕組み)のやり取りは23番のドアを使うことになっています。

FINスキャン9

このように「○番のドアは××のデータが通るね」と用途が決まっているドアもあれば「△番のドアは使いたい人が好きに使いなよ」と用途が決まっていないドアもあります。

これらのドアがポートです。
コンピュータとネットワークの間にあるドアです。
ネットワークとコンピュータの間を行き来するデータが通ります。

FINスキャン10

ここまでの説明のポイントは

・ネットワークとコンピュータをつなぐドア(出入口)がポート
・ポートには番号が付いている
・コンピュータには、たくさんのポートがある


の3つです。
覚えておいてください。

また、これらのドアは必ず通れるとは限りません。
カギが かかっている場合があります。

例えば「俺はtelnetなんて使わないぜ!」な人がパソコンさんの23番ドアにカギをかけたとしましょう。
その場合、そのコンピュータに対してtelnetで接続しようとしても できません。
telnetでパソコンにお邪魔するときに使う23番ドアが通れないからです。

FINスキャン11

先ほど説明した

・ネットワークとコンピュータをつなぐドア(出入口)がポート
・ポートには番号が付いている
・コンピュータには、たくさんのポートがある


に加えて

・カギが かかっているポートは通れない

も覚えておいてください。

ポートスキャンは「このドアはカギが、かかってないかな~?」と、いろんなドアを片っ端からガチャガチャやってみる行為です。

FINスキャン12

具体的には、適当な番号を指定してドア(ポート)に接続してみます。
例えば、20番ドアを指定したとしましょう。

FINスキャン13

接続できれば、20番ドアにカギが かかっていないと分かります。
確か20番ドアはFTP用のドアでした。
ということは、FTP接続できそうですね。

FINスキャン14

接続できなければ、20番ドアにカギが かかっているっぽいと分かります。
FTP接続できなさそうだと判断できます。

FINスキャン15

あとは、これの繰り返しです。
片っ端から試すことで開いているポート(カギのかかっていないドア)を探すのがポートスキャンです。

以上を踏まえて、ポートスキャンの一種で

FINパケットを適当なポートに送りつけて応答があるか確認することで開いているポートを探す やり方

が「FINスキャン」です。
FINパケットを送り付ける行為がドアをガチャガチャやる行為に相当します。

FINスキャン16

例えば、ピヨ太君が80番ポートにFINパケットを送りつけたとしましょう。

FINスキャン17

80番ポートが開いていると何も返ってきません。

FINスキャン18

80番ポートが閉じていると「RSTパケット」と呼ばれるデータが返ってきます。

FINスキャン19

これでピヨ太君は80番ポートが開いているか分かりました。

応答がない→開いている
応答がある→開いていない


と判断できるからです。

あとは、これの繰り返しです。

片っ端からFINパケットを送ってみて応答があるかどうかでポートが開いているか確認するのがFINスキャンです。

FINスキャンのメリットは……って、詳しく書いて大丈夫なんですかね。
いろんなところで説明されているので大丈夫だとは思いますが、ちょっと心配です。
とりあえず、スキャンしているのがバレにくいのがメリットです。
あとの詳しいことは他のところで勉強してください。

FINスキャン20

FINスキャンをはじめ、ポートスキャンは悪いことに分類される行為です。
他人のコンピュータに対してやると不正行為と見なされかねません。
試してみたい人は自分のコンピュータに対して、やってくださいね。


image piyo2

一言でまとめるよ

まぁ「FINスキャン」って単語が出てきたら「FINパケット(FINフラグ(とACKフラグ)に1がセットされたパケット)を送って応答を見ることで有効なポート(ネットワークとパソコンの間にあるドア)を確認する、ポートスキャン(いろんなポートに片っ端から接続してみて、開いているポートを調べること)のやり方なんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像040
書籍画像027

おまけ

■訳してみるよ

「FIN」は今回は「FINパケット」の略です。
「scan(スキャン)」の意味は「精査する」とか「走査する」とか「検査する」とかです。
何となく くっつけると

FINパケットを使って検査する

となります。


■検索してみる?




書籍画像
わわわ説明術コラム
宣伝だよ
つくって、壊して、直して学ぶ Kubernetes入門
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
「技術書」の読書術 達人が教える選び方・読み方・情報発信&共有のコツとテクニック