Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Damn_Vulnerable_C_Program — 一般的な種類の脆弱性に対する脆弱なコードを含むCプログラムの例です。ファジングの概念を示すために使用できます。 | Kitploit
ツール/GitHubGitHub/hardik05/damn_vulnerable_c_program
脆弱性分析ファジング学習と教育ラボと実践
GitHubhardik05/damn_vulnerable_c_program

Damn_Vulnerable_C_Program

一般的な種類の脆弱性に対する脆弱なコードを含むCプログラムの例です。ファジングの概念を示すために使用できます。

リポジトリを見るウェブサイト
7261881年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

注:ファイル名はimgRead.cからdvcp.cに変更されました。動画をご覧の場合はimgRead.cと表示されますが、GitHubリポジトリではdvcp.cとなっていますので、正しいファイル名を使用してください。

Damn Vulnerable C Program(DVCP)

Twitter Follow

私のYouTubeチャンネル: https://www.youtube.com/user/MrHardik05/featured?view_as=subscriber

これは何ですか?

これは、一般的な種類の脆弱性を説明するために私がコーディングしたシンプルなCプログラムです。例:

  1. 整数オーバーフロー
  2. 整数アンダーフロー
  3. 範囲外読み取り
  4. 範囲外書き込み
  5. ダブルフリー
  6. Use After Free
  7. メモリリーク
  8. スタック枯渇
  9. ヒープ枯渇

このCプログラムには上記のすべての脆弱性を含む脆弱なコードが含まれており、AFL、libafl、libfuzzer、hongfuzz、winafl、jackalopeなど、お好みの任意のファザーでファジングできます。

コンパイル方法

コマンドプロンプトで「make」と入力するだけです。Makefileが同梱されています。

AFL用の入力を生成する方法は?

以下のようにサンプル入力ファイルを作成するだけで、残りはAFLが処理します:

echo "IMG" >input/1.txt

AFLは自動的に新しいテストケースを生成し、上記の脆弱性のほとんどを発見します。それがAFLの素晴らしいところです :)

AFLを使ってファジングするには?

1. まず、次のコマンドを使用してこのプログラムをコンパイルします:

afl-gcc -g -fsanitize=address dvcp.c -o dvcp

2. 次のコマンドを実行します:

afl-fuzz -i input -o output -m none -- ./dvcp @@

honggfuzzを使ってファジングする方法

1. まず、次のコマンドを使用してこのプログラムをコンパイルします:

hfuzz-gcc -g -fsanitize=address dvcp.c -o dvcp

2. 次のコマンドを実行します:

hongfuzz -i input -- ./dvcp ___FILE___

libfuzzerを使ってファジングする方法

Cコードを修正する必要があります。更新されたコードはここから入手できます: https://github.com/hardik05/Damn_Vulnerable_C_Program/blob/master/dvcp_libfuzzer.c

1. 次のコマンドを使用してプログラムをコンパイルします:

clang -fsanitize=fuzzer,address,undefined -g dvcp_libfuzzer.c -o dvcp_libfuzzer

2. ファジングするには次のコマンドを実行します:

./dvcp_libfuzzer

ビデオチュートリアルはこちらでご覧いただけます:

完全なファジングプレイリスト:

https://www.youtube.com/watch?v=r7ucv2kN4j4&list=PLHGgqcJIME5kYhOSdJjvtVS4b4_OXDqM-

個別のビデオは以下のとおりです:

Linux

LibAFL

[libAFLを使ったファジング]libAFLをシステムにインストールする方法と、さまざまなコンポーネントとは? -> https://www.youtube.com/watch?v=ztGfxbvcrms

[libAFLを使ったファジング]libAFL ForkServerの紹介、libAFL forkserverファザーの実行。 -> https://www.youtube.com/watch?v=Ed1anYoGTyA

[libAFLを使ったファジング]libAFL forkserverファザーでDamn Vulnerable C Programをファジングする -> https://www.youtube.com/watch?v=ad_4zroiS_g

[libAFLを使ったファジング] libAFL forkserverファザーで共有メモリモードを使用する -> https://www.youtube.com/watch?v=GXD_qkISyfY

AFL++

[AFLplusplusを使ったファジング] AFLPlusplusのインストールとシンプルなCプログラムのファジング -> https://www.youtube.com/watch?v=9wRVo0kYSlc

[AFLplusplusを使ったファジング] Linux上でソースコードのないバイナリを永続モードでファジングする方法 -> https://www.youtube.com/watch?v=LGPJdEO02p4

AFL

[AFLを使ったファジング] UbuntuにAFLをインストールする方法 -> https://www.youtube.com/watch?v=r7ucv2kN4j4

[AFLを使ったファジング] AFLでシンプルなCプログラムをファジングする -> https://www.youtube.com/watch?v=NiGC1jxFx78&t=66s

[AFLを使ったファジング] AFLでさまざまな種類の脆弱性を見つける -> https://www.youtube.com/watch?v=m1RkShHzx_8&t=151s

[AFLを使ったファジング] crashwalkでクラッシュをトリアージし、GDBで根本原因を見つける -> https://www.youtube.com/watch?v=5R2gPkCXZkM

[AFLを使ったファジング] QemuモードでAFLを使用してソースコードのないバイナリをファジングする。 -> https://www.youtube.com/watch?v=np3sLLFQs6I

Honggfuzz

[honggfuzzを使ったファジング] HongFuzzでシンプルなCプログラムをファジングする -> https://www.youtube.com/watch?v=6OBXJtEe-d8

[honggfuzzを使ったファジング] Hongfuzz、checksec(pwntools)、ASAN -> https://www.youtube.com/watch?v=Lr8pLQRTHac

Libfuzzer

[libfuzzerを使ったファジング] LibFuzzerを使ってシンプルなCプログラムをファジングする方法 -> https://www.youtube.com/watch?v=hFva8kJQwnc&list=PLHGgqcJIME5m7HaHfACayoyN0TRe2PHRp

[libfuzzer,AFLを使ったファジング] AFLを使ってlibfuzzerハーネスプログラムをファジングする方法 -> https://www.youtube.com/watch?v=HfEqm3TrfwM&list=PLHGgqcJIME5m7HaHfACayoyN0TRe2PHRp&index=2

OpenSSLの脆弱性CVE-2022-3602およびCVE-2022-3786を再現し、libfuzzerを使用する方法 -> https://www.youtube.com/watch?v=vhTuXph1dtY

Radamsa

[Radamsaを使ったファジング] RadamsaでシンプルなCプログラムをファジングする -> https://youtu.be/1FRsXVNpynQ

Windows

WinAFL

[WinAFLを使ったファジング] WinAFLでシンプルなCプログラムをファジングする -> https://www.youtube.com/watch?v=Va_Wtxf3DMc

[WinAFLを使ったファジング] ファジング関数とは何か、すべてが正常に動作していることを確認するにはどうすればよいか? -> https://www.youtube.com/watch?v=HLORLsNnPzo

winaflでファジングするためのハーネスがもっと必要です

もちろん、こちらを確認してください -> https://github.com/hardik05/winafl-harness

winaflのデフォルトとは異なるミューテーターなど、何か違うものを試してみたいのですが。

はい、これを試すことができます -> https://github.com/hardik05/winafl-powermopt

作成次第、さらにアップロードされます。

GoogleのOSS-Fuzz

OSS-Fuzzの仕組み: オープンソースプロジェクトのためのファズテストガイド -> https://www.youtube.com/watch?v=OBxCDsJ-0aM

なぜこれを作成したのですか?

初心者にも経験者にも、さまざまな種類の脆弱性を理解するには多くの時間がかかります。私自身もこの問題に直面し、学んだことを共有することにしました。

何か学ぶことがあれば、お礼のメッセージを送ってください。それだけが必要です。また、何かを改善または修正したい場合は、PRを歓迎します!

作者は?

Twitter: https://twitter.com/hardik05

メール: TwitterでDMしてください :)

Web: http://hardik05.wordpress.com

フィードバック?

提案やコメントはいつでも歓迎します。問題を見つけた場合や修正、新機能がある場合は、プルリクエストを送ってください。

Star History

Star History Chart

ツールをダウンロード