退屈な簡単な紹介。
原則として、情報を保護する場合、セキュリティ境界全体が外部に構築されます。 おそらく論理的 主な脅威はそこから来ています。 しかし、外部からの脆弱性の検索は、PHPの穴の検索、SQLインジェクション、ネットワークの脆弱性、数十億のmd5ハッシュの整理など、かなり面倒で創造的な作業です。
同時に、内部からの情報へのアクセスの可能性は考慮されていません。 これは原則としてはるかに弱い保護されています。 どうやら穴がある場合、それらはすべて外にあると考えられている-なぜなら 内部はモノリシックで不可解なものです。
悲しいかな、幸いなことに、これはそうではありません(情報は前面の両側で機能します)。 実際、すべての角度から最も価値があるのは内部情報であり、ますます貴重になっています。
だから。 私の短い記事では、大部分が
サンタクロースの言葉を信じている大まかな組織のやや幼稚で素朴な世界に読者を少し没入させたいと思っています。

状況:
- 大企業(数千台のPC)
- 自社またはサードパーティの開発者のデータベースとソフトウェアの可用性
- ドメインアカウント、データベース、ソフトウェア間にエンドツーエンドの認証はありません。 つまり 多数のアプリケーション-どこでもユーザー名とパスワード
古典的な問題:
- シャギーなプログラムでは、パスワードを変更することは明らかではなく、困難でもありません。 つまり ユーザーが確立された後、彼は自分に発行されたパスワードを引き続き使用します。 多くの場合、ユーザーはSOでさえあると考えています。 私は個人的に世界で最も大きな企業の1つからのアプリケーションを毎日何回も使用し、2年後にパスワードを変更するという提案との対話を見つけました。 その前に、標準パスワード「12345」を使用しました
- 大企業では、大規模な離職。 従業員の10〜30%の年間売上高は、10、20、または50人の会社にとってばかげています。 そして、会社に1000人の人がいるとしたら? つまり 毎年数百人が辞めており、
もちろん原則として、ドメインへのアクセスはブロックされています。 しかし、他のアプリケーションはどうですか? - そして、従業員が辞めずに、あるユニットから別のユニットに移動した場合はどうなりますか? たとえば、元ドメイン管理者であり、ビジネスユニットに移動しました。 会社について必要なすべての情報を入手できる理想的なインサイダー。 彼は会社の重要な情報がどこにあるかを知っているだけでなく、その入手方法も知っています。
- 従業員は非常に長い休暇を取ります。 これらの場合、アクセスをブロックする必要性を誰もが覚えていますか?
- 従業員はどこにも出かけず、転勤もしていません。 ただし、パスワード「」(パスワードなし)または「12345678」を使用します
- 上記の問題はすべて、すでに十分な流動性を備えた人事サービスとiTの作業により、人間の過失、怠iness、および平凡な過負荷によって増大する可能性があります。
一般に、この問題のリストの結果は、会社が大きくなるほど、内部に多くの問題が蓄積することです。 なぜなら 小さなものでは、原則として、すべてがドメイン、1C、および標準ソフトウェア複合体のペアに関連付けられています
ソリューション(理想的)
- ユーザートレーニング(「意味?トレーニング-明日終了」-管理者の対応)
- すべてをドメインとドメインアカウントに結び付けます(技術的には常に実行可能であるとは限らず、通常、正当化するのが難しいお金とリソースが必要です)
- 有形のメディアに結び付けられたキーボードパスワードを取り除きます(特殊なソフトウェアとハードウェアを使用する場合の困難、および「自宅で忘れてしまった」という問題と、これに伴う苦労は、テープでリーダーのコネクタにハードウェアキーを固定することです)
- captchaを使用して、試行回数、IPアドレス、および自作ソフトウェアでのその他の創造的なアプローチによってログイン試行を制限する
ソリューション(実際)
- インシデントを待つ-特定の穴を塞ぐ
- 定期的な境界監査
実際に検討したい最後のプロアクティブオプション。 ほとんどのアプリケーションに適した一般的なアルゴリズム:
- 従業員のリストを開く
- プログラムを開く
- 確認するアプリケーションを選択します
- 従業員と単純なパスワードのリストが終了するまで、ユーザー名/パスワードの組み合わせを入力します

同意する-複雑なことはなく、手作業で行うと時間がかかるプロセスです。 勝利の「甘さ」でさえ、1.2、つまり100人の「悪者」を発見しても何も得られません。 数か月後、再確認するときは、リスト全体+ボーナスを新入社員の形でシャベルする必要があります。 自動化する必要があります。
何でも書くことができます。 個人的に、私はコピーを壊しません-以前DelphiとVSでそのようなことをしましたが、スクリプト言語AutoITとの偶然の知り合いが停止しました。 このことは、スナップイン入門のユニバーサルユーティリティを高速で作成するために作成されたものです。 つまり 1秒あたり9 ^ 9 ^ 9のハッシュの組み合わせをカウントする目的がなく、APIアプリケーションを直接操作する場合(特にCitrixの場合)、従業員の実際のリストにある多数の異なるアプリケーションでいくつかの異なるパスワードの組み合わせをクリックするだけで十分です。
私の記事の最も簡単な例として、組織のインターネットアクセスを監査する例を示します。
具体例
イカのプロキシ パスワードの選択に制限はありません。 つまり 高速でログインを並べ替えることも、同時にログインを並べ替えることもできます。 しかし、正直なところ-結果は1分または数日です-それは重要ではありません。 1つのパスワードをチェックする速度は、アカウントごとに約5秒です。 主なものは手作業の不足であり、これまでのところ、プロキシサーバーでパスワードを検索する世界で唯一のプログラムで十分です。 夕方に仕事を辞め、朝から結果を刈り取り始めます。
私の場合、スキャン結果を公開しません。なぜなら、 彼らは
衝撃的な悲しいことが判明しました。
; (c) lokkii ; ProxyLoginChecker v. 0.1 beta ; 1) (passwd) Squid Win- ( -8) ; 2) : out.txt , , , log.txt login:time $file_in = FileOpen("passwd", 0) ; If $file_in = -1 Then MsgBox(0, "Error", " passwd") Exit EndIf $file_out = FileOpen("out.txt", 2) ; If $file_out = -1 Then MsgBox(0, "Error", " out.txt") Exit EndIf $file_log = FileOpen("log.txt", 2) ; If $file_log = -1 Then MsgBox(0, "Error", " log.txt") Exit EndIf ; , While 1 $line = FileReadLine($file_in) if @error = -1 Then ExitLoop ; squid ; : ;pupkin_pp:x:544:502:% :/dev/null:/dev/null ; : $login = pupkin_pp ; $pwd = pup123 ; $fio = $login = StringLeft($line, StringInStr($line, ":x:")-1+”_Nov-filial”); "pupkin_pp_Nov-filial" $pwd = StringLeft($login, 3) & “123”; “pup123" $line = StringTrimLeft( $line, StringInStr($line, "502:")+3 ) ; $line = StringTrimLeft( $line, StringInStr($line, "%")) ; ( ) "%" - $fio = StringReplace ( $line, ":/dev/null:/dev/null", "") ; $proxy = "192.168.0.1:8080" HttpSetProxy ( 2 , $proxy , $login, $pwd); $size = InetGetSize("http:// /.txt") if $size == 33333 then FileWriteLine($file_out, $login & ";"& $pwd & ";" & $fio & @CRLF) FileWriteLine($file_log, $login & ";" & @HOUR & ":" & @MIN & ":" & @SEC & @CRLF) Wend FileClose($file_in) FileClose($file_out) FileClose($file_log)
結論
これで、
他人のトラフィックを燃やし、SPECIALコンテンツでポルノサイトを登ることができます。これ
により、キャリアの成長を
妨げている同僚が組織全体のパスワードの品質について結論を
出すことができます。 そして、状況を修正するための組織的な対策について考えてください。
読んでくれてありがとう! この記事があなたにとって興味深いものであったことを願っています(ソースコードのみがスキップされました)。それがあなたに考えさせ、あなたの作品に新しいアイデアをもたらします。
PS 「パスワード」などのパスワードを使用することを好みますが、Wi-Fiアクセスポイントでは「123456789」などになります。 それにもかかわらず、私は訴えます-そうしないでください!