問題タブ [fortify-source]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
12 に答える
36732 参照

c++ - バッファ オーバーフローとは何ですか? また、どのように発生させるのですか?

バッファ オーバーフローについて聞いたことがありますが、その原因を知りたいです。

誰かが小さなバッファ オーバーフローの例を見せてもらえますか? 新しい(そして、それらは何に使用されますか?)

0 投票する
5 に答える
10254 参照

c - バッファ オーバーフローを呼び出すにはどうすればよいですか?

バッファオーバーフローを使用して、関数を明示的に呼び出さずに呼び出すように求める宿題を受け取りました。コードは基本的に次のとおりです。

どのように進めればよいかわかりませんが。プログラムカウンタのリターンアドレスをg()のアドレスに直行するように変更しようと思ったのですが、アクセス方法がわかりません。とにかく、ヒントは素晴らしいでしょう。

0 投票する
4 に答える
7948 参照

c - Macos10.6で単純なバッファオーバーフローを実行する

スタックベースのオーバーフローについて学び、スタックを利用するための簡単なコードを書こうとしています。しかし、どういうわけかそれはまったく機能しませんが、私のマシン(mac os leopard)にAbortトラップのみが表示されます

Mac osはオーバーフローの扱いが違うと思いますが、cコードでメモリを上書きすることはできません。例えば、

Linuxマシンでは、このコードは次のスタックを正常に上書きしますが、mac osでは防止されます(トラップの中止)

Macマシンで単純なスタックベースオーバーフローを実行する方法を知っている人はいますか?

0 投票する
7 に答える
35943 参照

c - sprintf関数のバッファオーバーフロー?

何が起こるか?

バッファーには 8 文字分のスペースがあり、空き文字は 3 文字しか残っていませんが、「XXXXXXXX」は 8 文字です。

Windows 7 上の Visual Studio 2008 でテストを行いました。その結果、プログラムは AAAAXXXXXXX を出力し、実行時エラーが発生しました。

0 投票する
4 に答える
1144 参照

c - Snow Leopard でバッファ オーバーフローを作成する

大学のコンピュータ セキュリティのコースの一環として、バッファ オーバーフローと、それをエクスプロイトとして使用する方法について学ぶ予定です。次のコードで単純なバッファ オーバーフローを実行しようとしています。

実行すると、 buffer_one の内容を null ターミネータで上書きできます

しかし、引数として 16 文字を超える文字を送信すると、プログラムは Abort トラップを送信します。これは、Snow Leopard での何らかのバッファ保護だと思います (ASLR かな?)。buffer_two のサイズを 16 未満にすると、アドレスはまだ 16 ビット離れています。

gcc -o overflow overflow.c -fno-stack-protectorスタック保護を削除するために実行しています

Linux ディストリビューションを実行している VM をインストールする以外に、この問題の解決策はありますか?

0 投票する
2 に答える
5746 参照

c++ - __sprintf_chk() を使用して無効にする

このsprintfsprintfが暗黙的に呼び出す__sprintf_chk(). これ__sprintf_chk()は、スタック フレームを調べてバッファ オーバーフローをチェックしているようです。

私の研究目的のために、使用を無効にすることは可能__sprintf_chk()でしょうか?

0 投票する
4 に答える
39582 参照

c - memcpyバッファオーバーフローを防ぐ方法は?

プログラムには、データを格納するために使用される固定サイズのバイナリバッファがいくつかあり、memcpyはバッファをあるバッファから別のバッファにコピーするために使用されます。ソースバッファがデスティネーションバッファよりも大きい可能性があるため、バッファオーバーフローがあるかどうかをどのように検出できますか?

0 投票する
1 に答える
4732 参照

c++ - Mac OS X Lion で OpenMP を使用するとコンパイルが失敗する (memcpy および SSE 組み込み関数)

私は次の問題に出くわしました。以下のコード スニペットは、私が試した Xcode (4.4、4.5) と Mac OS X でリンクしません。

コードは例として提供されているだけで、実行すると segfault が発生します。ポイントは、コンパイルしないことです。コンパイルは次の行を使用して行われます

フラグ toを使用しない場合、コードは問題なくコンパイルされます。今、私はぐるぐる回って、 、または引数リストに を追加することに関連する最初の問題の解決策を見つけました。2 番目の問題 (sse 固有) を解決できませんでした。-fopenmpgccmemcpy-fno-builtin-D_FORTIFY_SOURCE=0gcc

誰でもこれを解決するのを手伝ってもらえますか? 質問:

  • 最も重要なこと: "___builtin_ia32_shufpd" エラーを取り除くには?
  • memcpy問題の正確な理由は何-D_FORTIFY_SOURCE=0ですか?フラグは最終的に何をしますか?
0 投票する
1 に答える
4080 参照

c - フォーマット文字列攻撃

悪用される小さな C プログラムがあります。また、実行される攻撃の背後にあるロジックも理解しました。しかし、私が試している限り、それは私にとってはうまくいきません。

書式文字列 "printf(user_input);" を使用して、secret[0] のアドレスと値を出力するだけです。

「\x6e\xaf\xff\xff%x%x%x%x%s」のようなものを与えてみました。しかし、それは機能していません。任意の提案をいただければ幸いです。どうもありがとう。

0 投票する
3 に答える
3743 参照

c - homeowrkとしてのバッファオーバーフロー

まだセキュリティクラスのためにこのバッファオーバーフローのことを学んでいますが、私はこのアプリケーションの脆弱性を悪用しようとしています:

このエクスプロイトアプリケーションの使用:

何らかの理由で、エクスプロイトを実行してbadfileを作成しても、何もプッシュされません。バッファが空であるか、正しく書き込まれていません。私は自分のエラーを見つけることができないようで、たゆまずグーグル検索した後、私は十分な答えを見つけることができませんでした。私が使用したFillBufferCodeの理解から、これはlong_stringを私のバッファーのアドレスで埋め、次にシェルコードをlong_stringの先頭(NOOPスライドのビットの後)に置き、long_stringをバッファーにコピーして戻す必要があります。これやfwriteに問題はありません。提案?