Skip to main content

CodeQL 分析用の Python クエリ

          `default` または `security-extended` クエリ スイートを選択時、CodeQL が Python のコード分析に使用するクエリについて詳しく見てみましょう。

この機能を使用できるユーザーについて

CodeQL は、次の種類のリポジトリで使用できます:

  • GitHub.com のパブリック リポジトリについては、「GitHub CodeQL の使用条件」を参照してください
  • GitHub Team が有効になっている GitHub Code Security 上の organization 所有のリポジトリ

CodeQL には、Python コードを分析するためのクエリが多数含まれています。 データ再利用可能なコードスキャニング.CodeQLクエリテーブル.クエリスイートの動作 %}

Python 分析用の組み込みクエリ

次の表に、最新リリースの CodeQL アクションと CodeQL CLI で使用できるクエリを示します。 詳細については、CodeQL ドキュメントにある CodeQL クエリに関するページを参照してください。

クエリ名関連する CWEデフォルト値ExtendedCopilot の自動修正
Python 2 で使われる 'input' 関数094、095
Paramiko の使用時に不明な SSH ホスト キーを受け入れる295
不正な HTML フィルタリング正規表現116, 020, 185, 186
ソケットをすべてのネットワーク インターフェイスにバインドする200
機密情報のクリア テキスト ログ312, 359, 532
機密情報のクリア テキスト ストレージ312, 315, 359
コード インジェクション094, 095, 116
ユーザー指定の入力を使用したクッキーの構築020
CSRF 保護の弱化または無効化352
SSL/TLS の既定のバージョンが安全でない可能性がある327
ユーザーが制御するデータの逆シリアル化502
セキュリティで保護された Cookie を使用できない614
Flask アプリがデバッグ モードで実行される215, 489
完全なサーバー側リクエスト フォージェリ918
HTTP 応答分割113, 079
ホスト名の不完全な正規表現020
不完全な URL 部分文字列のサニタイズ020
非効率的な正規表現1333, 730, 400
例外による情報の露出209,497
安全でない一時ファイル377
ユーザーが制御するソースから構築された LDAP クエリ090
NoSQL インジェクション943
正規表現の範囲が許容範囲が広すぎる020
不適切な使用方法による PAM 承認バイパス285
制御されないデータで使用される多項式正規表現1333, 730, 400
リフレクトサーバー側クロスサイト スクリプティング079, 116
正規表現インジェクション730, 400
機密性の高い Cookie に HttpOnly 属性がありません1004
[
          `SameSite`属性に設定された機密性の高いCookie`None`](https://codeql.github.com/codeql-query-help/python/py-samesite-none-cookie/) | 1275 | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="check icon" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-check" aria-label="check icon" role="img"><path d="M13.78 4.22a.75.75 0 0 1 0 1.06l-7.25 7.25a.75.75 0 0 1-1.06 0L2.22 9.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018L6 10.94l6.72-6.72a.75.75 0 0 1 1.06 0Z"></path></svg> | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-x" aria-label="x icon" role="img"><path d="M3.72 3.72a.75.75 0 0 1 1.06 0L8 6.94l3.22-3.22a.749.749 0 0 1 1.275.326.749.749 0 0 1-.215.734L9.06 8l3.22 3.22a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215L8 9.06l-3.22 3.22a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042L6.94 8 3.72 4.78a.75.75 0 0 1 0-1.06Z"></path></svg> |

| サーバー側のテンプレート インジェクション | 074 | | | | | ユーザーが制御するソースから構築された SQL クエリ | 089 | | | | | 制御されないコマンド ライン | 078, 088 | | | | | パス式で使用される制御されないデータ | 022, 023, 036, 073, 099 | | | | | リモート ソースからの URL リダイレクト | 601 | | | | | 壊れた暗号アルゴリズムまたは脆弱な暗号アルゴリズムの使用 | 327 | | | | | 機密データに対する破損または脆弱な暗号化ハッシュ アルゴリズムの使用 | 327, 328, 916 | | | | | セキュリティで保護されていない SSL/TLS バージョンの使用 | 327 | | | | | 脆弱な暗号化キーの使用 | 326 | | | | | XML 外部エンティティの拡張 | 611, 827 | | | | | XML 内部エンティティ拡張 | 776, 400 | | | | | ユーザーが制御するソースから構築された XPath クエリ | 643 | | | | | tarfile 抽出中の任意のファイル書き込み | 022 | | | | | autoescape=False を使用した Jinja2 テンプレート | 079 | | | | | ログ インジェクション | 117 | | | | | ファイルのアクセス許可が過度に制限されている | 732 | | | | | 部分的なサーバー側リクエスト フォージェリ | 918 | | | | | 証明書の検証を行わないリクエスト | 295 | | | | | ライブラリ入力から構築された安全でないシェル コマンド | 078, 088, 073 | | | |