OpenBSD の PF への OS 識別機能の組込み
Mike Frantzen が 投稿した記事によると、 PF(Packet Filter) にパケット発信元ホストの OS 種別を識別する機能 (受動的 OS フィンガープリンティング)を組み込んだとのことだ。 これは発信元ホストが最初の SYN パケットを作成する時のそれぞれの OS の 特徴を捕えて、その種別を推測するものである。 この特徴を捏造するのはちょっとした技術があれば簡単なので、 参考程度に便利に使うのは構わないが、これを信じてシステムのセキュリティ対策に 使うには無理があるようだ。
例えば、以下のように発信元が Windows系 だったり、SCO製品だったり、UNIX系だったり した場合に以下のように設定するのも面白いかもしれない。block proto tcp from any os Windows to any port smtpちょっと遊びの要素が大きいような気もするが、こういうのも面白いかと思う。
block proto tcp from any os SCO
pass proto tcp from any os $UNIXES keep state queue high-bandwidth
# Send older windows to a web page telling them to upgrade
rdr on le0 proto tcp from any os "Windows 98" to any port 80 -> 127.0.0.1 port 8001