
脆弱性 | プログラミング言語 | 脆弱性コードスニペットの実行 | インストール | 更新
YesWeHack は、安全な Docker 環境でコード分析の練習ができる、さまざまな脆弱性を含むコードスニペットを提供します。この脆弱性コードスニペットは、あらゆるスキルレベルに適しています。
~ 毎週金曜日に Twitter @yeswehack で新しい脆弱性コードスニペットを公開しています! 🗒
特別なものをご希望の場合や、脆弱性コードスニペットについてアイデアがある場合は、お気軽に "New Issue" を作成してアイデアを説明してください。どんなアイデアも愚かではありません。
⚠️ 注意
このコードは脆弱性を含み、コード分析の学習を目的としているため、必ず安全な環境で実行してください! デフォルトでは、すべての脆弱性コードスニペットには Docker セットアップが含まれており、コードをホストシステムから隔離して安全に実行できるようにしています(詳細は「脆弱性コードスニペットの実行」セクションを参照してください)。
Twitter に投稿されたすべての脆弱性コードスニペットのコレクション 📂
| ID | 脆弱性 | 説明 |
|---|---|---|
| 📜#1 | SQLi & XSS | バックスラッシュフィルターの衝突 |
| 📜#2 | 不適切なファイルアクセス & XSS | 不正な文字と正規表現検証 |
| 📜#3 | ログ偽造インジェクション、パストラバーサル & コードインジェクション | 不十分なフィルターと不適切な include() の処理 |
| 📜#4 | XSS | 無効なユーザー入力フィルター |
| 📜#5 | SSRF & 壊れた認可 | 信頼されたユーザー入力とヘッダーからのクライアント IP |
| 📜#6 | SSTI | 混合入力形式 |
| 📜#7 | SQLi | ステートメント内での無効な変数の使用 |
| 📜#8 | CSRF | CSRF トークンが含まれていない |
| 📜#9 | オープンリダイレクト | 無効な正規表現ハンドラー |
| 📜#10 | DOM XSS | バックエンドフィルターがクライアントサイド JavaScript と衝突 |
| 📜#11 | CORS | 誤って設定された Access-Control-Allow ヘッダー |
| 📜#12 | CSRF/クリックジャッキング | 安全でない削除プロセスを伴う GET リクエスト CSRF / クリックジャッキング - HTML メタタグに X-Frame-Options が設定されている |
| 📜#13 | パストラバーサル/無制限ファイルアップロード | 不十分なパストラバーサルとファイルアップロード保護によりコードインジェクションが発生 |
| 📜#14 | DOS | 「for ループ」内の誤った演算子ハンドラー |
| 📜#15 | 忘れたパスワードの脆弱なパスワード回復メカニズム | パスワード回復に使用される脆弱なハッシュ |
| 📜#16 | IDOR | 安全でない if 文が不適切なアクセス制御を引き起こす |
| 📜#17 | 安全でないデシリアライゼーション | pickle 関数 loads() 内で信頼されたユーザー入力を実行 |
| 📜#18 | パストラバーサル | ファイル名の不適切なユーザー検証 |
| 📜#19 | オープンリダイレクト | ユーザー制御入力「location.hash」の不正な処理 |
| 📜#20 | SQL インジェクション | replace() 関数の誤った使用。文字は一度しか置換されない |
| 📜#21 | PostMessage DOM XSS | オリジン検証がないため、PostMessage DOM XSS が発生 |
| 📜#22 | XSS/オープンリダイレクト | フィルター保護により、脆弱性を悪用するために使用できるすべての特殊文字がフィルタリングされるわけではない |
| 📜#23 | バッファオーバーフロー | バッファサイズを確認せずに gets() 関数でユーザーの STDIN 入力を受け取る |
| 📜#24 | SQL インジェクション | PHP 関数 addslashes() の誤った使用 |
| 📜#25 | XSS - CSP バイパス | ユーザー入力の検証が行われず、nonce の安全でない処理が行われる |
| 📜#26 | パストラバーサル | PHP 関数「preg_replace()」によるフィルターは最初の10文字のみのフィルタリングに限定されている |
| 📜#27 | Web キャッシュポイズニング | HTTP ヘッダー Referer がフィルタリングされずにキャッシュされたレスポンスボディに反映される |
| 📜#28 | ビジネスロジックの脆弱性 | 攻撃者はマイナス金額を引き出すことでアカウントの残高を増やすことができる |
| 📜#29 | IDOR | 攻撃者は強制ブラウジング攻撃を行うことで、他のユーザーの機密データにアクセスできる |
| 📜#30 | 安全でないデシリアライゼーション | ユーザーが制御できる危険な関数 (exec) の使用により、RCE が発生 |
| 📜#31 | LFI | 適切な文字エスケープやフィルター検証がない。include() 関数は、ファイル拡張子に関係なく指定されたファイル内のすべての PHP コードを実行し、コードインジェクションが発生 |
| 📜#32 | フォーマットインジェクション! | クライアントが提供した値を含む文字列をフォーマットし、フォーマットインジェクションが発生 |
| 📜#33 | SQL インジェクション(二次オーダー) | 最後のクエリを除くすべての SQL クエリはプリペアドステートメントを使用している。このステートメントは、かつてユーザーが制御していた値をデータベースから抽出して SQL クエリに追加するため、SQL インジェクション(二次オーダー)が発生 |
| 📜#34 | 正規表現サービス拒否(ReDoS) | ユーザー制御入力のフィルタリングに使用される正規表現パターンの設定が不適切 |
| 📜#35 | XSS | GET パラメータ内の信頼されたユーザー入力 |
| 📜#36 | 無制限ファイルアップロード | アップロードされたファイルのファイル拡張子の検証が不十分で、ファイルコンテンツの検証が欠落している |
| 📜#37 | SSRF | プロキシヘッダー X-Forwarded-Host と cURL の安全でない処理により、完全な SSRF が発生 |
| 📜#38 | コードインジェクション | ユーザーは選択したファイルにカスタマイズしたコンテンツを書き込むことができ、その後脆弱なシステム上で実行される |
| 📜#39 | LFI | LFI の悪用によりツール pearcmd を実行でき、リモートコード実行が発生 |
| 📜#40 | 無制限ファイルアップロード | Apache プロキシの設定により、php3 拡張子を使用して PHP コードを実行できる。 |
| 📜#41 | コマンドインジェクション | escapeshellcmd の誤った使用により、コマンドインジェクションの脆弱性が発生 |
| 📜#42 | コマンドインジェクション | ユーザー入力の検証が行われないため、コマンドインジェクションの脆弱性が発生 |
| 📜#43 | SSTI | テンプレートエンジンの不適切な使用により SSTI が発生し、RCE につながる |