【注意】このサイトに記載されていることを他人に試すことは「不正アクセス禁止法」に該当する場合があります。詳しくはこちらから

黒ネコと学ぶ・論理的エクスプロイト開発への道

Thumbnail of post image 144
エクスプロイト開発を学ぶうえで、必ず登場する言葉があります。それが「スタック(stack)」です。スタックは、プログラムが動くときに使われる重要なメモリ領域で、関数の呼び出しや戻り先、ローカル変数などが一時的に置かれます。 しかし初心者の方 ...

黒ネコと学ぶ・論理的エクスプロイト開発への道

Thumbnail of post image 115
エクスプロイト開発を学び始めると、必ず出てくる言葉があります。それが「プロセス」と「メモリ」です。でも、初心者のうちはこう思うかもしれません。「プログラムを動かすのと、メモリって何が関係あるの?」と。 実は、エクスプロイトとは、「動いている ...

黒ネコと学ぶ・論理的エクスプロイト開発への道

Thumbnail of post image 078
エクスプロイト開発というと、「高度なプログラミング技術が必要」「いきなり難しい攻撃コードを書く」といったイメージを持つ人も多いでしょう。しかし、実際の学習はそこから始まりません。まず必要なのは、安全に試し、失敗し、観察できる環境を整えること ...

黒ネコと学ぶ・論理的エクスプロイト開発への道

Thumbnail of post image 159
エクスプロイト開発を学ぶうえで、最初につまずきやすいのが「どう考えればいいのか分からない」という点です。ツールの使い方やコマンドは調べれば出てきますが、攻撃者がどんな順番で、どんな視点でプログラムを見ているのかは、なかなか見えにくいものです ...

黒ネコと学ぶ・論理的エクスプロイト開発への道

Thumbnail of post image 014
エクスプロイト開発とは、コンピュータの脆弱性(弱点)を理解し、その仕組みを論理的に再現して攻撃コードを作る技術です。 とはいえ「ハッキング」と聞くと難しい世界に感じてしまうかもしれません。でも大丈夫。初心者のくろちゃんと、アドバイザー白猫先 ...

ホワイトハッカーの知識

Thumbnail of post image 082
インターネットやセキュリティの本を読むと、必ずと言っていいほど出てくるのが「OSI参照モデル(OSIモデル)」ですね。しかし、多くの人にとっては「7層?アプリケーション?よく分からないカタカナの並び・・・」で終わってしまいます。この記事では ...

ペネトレーションテスト&バグバウンティ

Thumbnail of post image 194
プログラムが外部のライブラリ関数(例 printf、malloc)を呼ぶとき、実際の関数のアドレスはプログラム起動直後に全て決まっているとは限りません。LinuxのELF形式では「遅延バインディング」という仕組みを使い、呼び出し時に実際のア ...

ペネトレーションテスト&バグバウンティ

Thumbnail of post image 070

Partial Overwrite(パーシャル オーバーライト:部分上書き)は、バッファオーバーフローなどで、ポインタや戻り番地の下位バイトだけを意図的に変更する攻撃テクニックです。
※イメージです。

Partial O ...

ペネトレーションテスト&バグバウンティ

Thumbnail of post image 056

Binary Flags(バイナリフラグ)は、1ビットずつの「オン/オフ」でソフトウェアの設定や権限を管理するとても効率的な方法です。小さなメモリ領域で多くの状態を扱えるため組込み系や古いCプログラムでよく使われます。しかし、境界 ...

ペネトレーションテスト&バグバウンティ

Thumbnail of post image 083
Off-By-One(オフ・バイ・ワン)は、配列やバッファに対して「本来必要なバイト数より1バイトだけ多く/少なく扱ってしまう」ことで生じるバグです。 小さなミスに見えますが、メモリ上の隣接データ(フラグや戻り番地の一部)を壊したり読み出し ...