|
ハッカー・プログラミング大全
ISBN4-88718-633-9 データハウス
UNYUN 著
CD-ROM付
B5変形 301ページ 本体価格\3,800 2001年9月発売
[内容]
ソフトウエアのセキュリティホールとして最も代表的な「バッファオーバーフローバグ」を取り上げ、「セキュリティホールとは何か」、「何が危険なのか」、「どのようなセキュリティ検査をすればよいのか」について、具体例を交えながら解説。また、不正侵入されたシステムで「クラッカーは何を行うのか」を具体的に解説、クラッカーの脅威について詳述。セキュリティホールを狙ったクラッキングの実際、およびクラッキングに成功した際に必ずと言って良いほど行われるバックドアの設置の原理や手順を具体的に解説。
[目次]
第1章 UNIX Buffer Overflow Exploit
Local Buffer Overflow Exploit 基本原理
・Local Buffer Overflow概要
・仮想メモリ空間とプロセス
・Cコンパイラ生成コードとスタックの利用
・バッファオーバーフローとスタック破壊
・スタック上に置かれたコードの実行
・バウンドチェック漏れを利用したコードの実行
・i386 Linux Shellコード
セキュリティホールの検証とExploitコーディング
・i386 FreeBSD Shellコード
・i386 Solaris Shellコードと自己書き換え
・ソースコード非公開ソフトウエアのExploit
・Exploitコードの汎用性
・Remote Buffer Overflow Exploit
Buffer Overflow Protection
・Libsafe
・StackGuard
第2章 Win32 Buffer Overflow Exploit
Win32 Buffer Overflow Exploit 基本原理
・Win32 Buffer Overflow概要
・Win32 メモリアーキテクチャ
・Cコンパイラ生成コードとスタックの利用
・スタック上に置かれたコードの実行
・バウンドチェック漏れを利用したコードの実行
・ポインタ破壊によるAccess Violationとその回避
・eggコード
・Exploitコーディング
・例外ハンドラ上書きによるeggの実行
・まとめ
ジャストインタイムデバッギング
・ジャストインタイムデバッギング
・・ジャストインタイムデバッギング機能概要
・・ジャストインタイムデバッガの指定
・・スレッドコンテキスト情報の取得
・動作中のプロセスとプロセスの所有するヒープの列挙
・・プロセスのスナップショットの取得
・・動作中のプロセスの列挙
・・ヒープリストの列挙
・・ヒープエントリの列挙
・・プロセスとヒープエントリの列挙例
・プロセスのメモリの読み出しと書き込み
・SPS-PMV
・・機能概要
・・入手法
第3章 UNIX バックドア
ローカルバックドア
・ローカルバックドア概要
・コマンド置換型バックドア
・・rootshell
・・・基本的なrootshellの作成
・・・suidプログラム列挙によるrootshell発見とその対策
・・・ファイルステータス情報の改竄
・・su trojan
・・・suコマンドの動作
・・・suトロイの設置
・・ls trojan
・・プロセスの隠蔽
・ソースコード改竄型バックドア
・・suidプログラム改竄によるrootshell
・・passwd改竄によるパスワードのロギング
・まとめ
リモートバックドア
・リモートバックドア概要
・ネットワークサービス利用型バックドア
・・設定ファイル改竄型バックドア
・・・パスワードファイルの改竄
・・・rサービスバックドア
・・・inetdサービスバックドア
・・・NFSバックドア
・・inetdサービス中継バックドア
・既存ネットワークサービスプログラム
・ソースコード改竄型バックドア
・・inetdバックドア
・・・inetdのソースコード
・・・inetd remote TCP shellバックドア概要
・・・socket作成とaccept
・・・remote TCP shellバックドアの実装
・・loginバックドア
・ネットワークサービスプログラムバックドア
・・TCP shell
・・UDP shell
・・ICMP shell
・まとめ
ライブラリバックドア
・ライブラリソースコードのディレクトリ構成
・libcバックドアの実装
・・libc概要
・・libcバックドア概要
・・パスワードのロギング
・・rootshell
・・TCPパケットのロギング
・その他のライブラリバックドア
・・libcrypt/crypt() パスワードロギング
・・libutil/login() rootshell
・まとめ
カーネルバックドア
・カーネルソースコードのディレクトリ構成
・kernel core モジュールにおけるバックドアの実装
・・kernel core モジュール概要
・・kernel core モジュールバックドア概要
・・特定ファイルの隠蔽
・・特定ファイのステータス情報の改竄
・・rootshell
・・カーネル改竄検査のバイパス
・・・改竄検出の概要
・・・改竄検出のバイパス
・・・bootとswap out
・・・・bootstrap loaderとカーネルの読みこみ
・・・・プロセスのtext領域のswapout
・netinet モジュールにおけるバックドアの実装
・・netinet モジュール概要
・・netinet モジュールバックドア概要
・・netinet モジュールのメモリ管理
・・パスワードキャプチャリング実装の概要と準備
・・tcp_input.cにおけるパスワードキャプチャリングの実装
・・ICMPによるログの送受信
・・ログの取得
・まとめ
第4章 Win32 リモートバックドア
受動的攻撃とWin32リモートバックドア概要
リモートバックドア実装の基本
コマンド逐次解釈型リモートバックドア
・コマンド逐次解釈型リモートバックドア概要
・XTCP3概要
・設計と実装
・・メッセージフロー概要とステータス情報
・・メインメッセージハンドラ
・・Winsock初期化とlisten
・・socketイベントハンドラ
・・コマンドハンドラ
・・・DOSコマンドの実行
・・・FTPによるファイル送受信
・・・プロセスの列挙と強制終了
・利用法
リモートバックドアのファンクション
・netstatの改竄
・キーストロークロギング
・スクリーンダンプ
TCP Shell バックドア
・TCP Shellバックドア概要
・設計と実装
・利用法
受動的攻撃によるFirewallのバイパス
・Firewallバイパスのシナリオ
・受動的攻撃を利用したバックドアの転送と実行
・・Outlook Express/Internet ExplorerのMIMEヘッダ処理のバグを利用する
・・Buffer OverflowバグとActiveXを利用する
・reverse connectionバックドアによるリモートコントロール
・・HTTPT概要
・・実行コマンドの設置
・・レスポンスの閲覧
・・HTTPTの実装
Resouces
参考文献
CD-ROMの内容

|