Known_hostsファイルでホストを見つけることはできますか?

Known_hostsファイルでホストを見つけることはできますか?

Known_hostsファイルにどのホストがあるかを確認したいが読めないようです。読んでもいいですか?

具体的には、複数の名前で接続できるホストがあり、既知のホストファイルからどのような指紋が出てくるのかを知りたいと思います。

アップデート:私はOpenSSH_5.3p1 Debian-3ubuntu7、OpenSSL 0.9.8kを使用しています。 2009年3月25日

私のKnown_hostsファイルの1行は次のとおりです。

|1|guO7PbLLb5FWIpxNZHF03ESTTKg=|r002DA8L2JUYRVykUh7jcVUHeYE= ssh-rsa AAAAB3NzaC1yc2EAAFADAQABAAABAQDWp73ulfigmbbzif051okmDMh5yZt/DlZnsx3DEOYHu3Nu/+THJnUAfkfEc1XkOFiFgbUyK/08Ty0K6ExUaffb1ERfXXyyp63rpCTHOPonSrnK7adl7YoPDd4BcIUZd1Dk7HtuShMmuk4l83X623cr9exbfm+DRaeyFNMFSEkMzztBYIkhpA2DWlDkd90OfVAvyoOrJPxztmIZR82qu/5t2z58sJ6Jm2xdp2ckySgXulq6S4k+hnnGuz2p1klviYCWGJMZfyAB+V+MTjGGD/cj0SkL5v/sa/Fie1zcv1SLs466x3H0kMllz6gAk0/FMi7eULspwnIp65g45qUAL3Oj

答え1

ホスト名がプレーンテキストで提供されないように、ファイルで ""HashKnownHostsに設定しました。yesssh_config

探しているホスト名を事前に知っている場合は、次のように検索できます。

ssh-keygen -H -F hostname
# Or, if SSH runs on port other than 22. Use literal brackets [].
ssh-keygen -H -F '[hostname]:2222'

関連部分ですssh-keygen(1)マニュアルページ:

-F CPU名

指定されたホスト名のファイルを検索して、見つかった一致を一覧known_hosts表示します。このオプションは、ハッシュされたホスト名またはアドレスを見つけるのに役立ちます。見つかったキーをハッシュ-H形式で印刷するオプションと一緒に使用することもできます。

答え2

将来の検索者のために、この記事(免責事項なし:私は所属していません)には、無差別代入クラッキングのための比較的単純なPerlスクリプトがありますknown_hosts

http://blog.rootshell.be/2010/11/03/bruteforcing-ssh-known_hosts-files/

特定のIPアドレスから起動できます。辞書を使用するように簡単に変更することもできます。

さらに、2014年6月にはジョン・ザ・リッパー・プロジェクトが始まりました。Known_hostsクラックのサポートが追加されました。、複数のCPUコア、GPU、事前修正などを活用できます。

全体的に、これはより予測可能な(または少なくとも制限された)ターゲットスペースを使用するパスワードクラッキングに似た練習です。

プライベートIPの場合、このnmapフラグメントを使用して、辞書として使用するすべてのRFC1918 IPアドレス辞書を生成できます。

nmap -sL -Pn -n 192.168.0.0/16 172.16.0.0/12 10.0.0.0/8 |\
    grep '^Nmap scan report for' | cut -d\  -f5 >ips.list

パブリックIPが含まれている場合、ルールを使用する方が効率的です。このハッシュキャットルールセットJtRタスクに適応するには追加のタスクが必要になる場合がありますが、ほとんどの困難なタスクを実行して開始点を提供する必要があります。

ホスト名はユーザーや環境によってより具体的ですが、ホストの命名にも傾向があります。完全修飾ホスト名は、DNS、/ etc / hosts、シェル履歴などから取得された任意のIPアドレスに関連付けることができます。ターゲットシステムはホストシステムと完全に関連していない可能性があるため、Censysなどのさまざまなインターネット全体の検索操作のDNSデータからパブリックドメインとホスト名のパブリックダンプを取得できます。

最も単純な場合を除いて、すべてのケースでJohn the Ripperを使用することが許可されている答えでは、基本的なSSHソリューションよりも効率的でスケーラブルです。

答え3

役に立ちましたかssh-keygen -l -f ~/.ssh/known_hosts?ファイル内の各ホストの指紋を表示します。 (これを使用すると、-v素晴らしい小さな宝の地図を得ることができます。

+--[ RSA 2048]----+
|        .        |
|       + .       |
|      . B .      |
|     o * +       |
|    X * S        |
|   + O o . .     |
|    .   E . o    |
|       . . o     |
|        . .      |
+-----------------+

答え4

各「known_hosts」行の先頭(「ssh-dss」または「ssh-rsa」文字列の前)にホスト文字列/ ipがあります。

hostgn6 ssh-dss AAAB3NzaC1kc3MAAACBAIfGV4+/28Zr+dT/i+ifydUBS0dMRUjCtExIThOj3Yexynu+wSRGjMm4GfF+og2kAljZyUjhBFeM+WYbJzcDSDB [...] ==
yumyumn6.dik6.dir2g.some.net ssh-dss AAAAB3NzaC1kc3MAAACBAIfGV4+/28Zr+dT/i+ifydUBS0dMRUjCtExITh [...] ==

関連情報