まったり技術ブログ

主にWebエンジニア向けのセキュリティブログ。たまに開発も

CodeQLで遊ぶ ~ ローカル環境で試す『静的アプリケーション・セキュリティ・テスト』 ~

はじめに CodeQL とは サポート言語 準備 検証環境の構築 CodeQL CLI の動作確認 (バージョンの表示) 動作確認 CodeQLデータベースの生成 脆弱性の検出 XXE の検査 ~ 検出されることの確認 ~ 検査の実施 ~ CSV形式で出力 ~ 検査の実施 ~ SARIFで出力 ~ RCE …

GitHubのCode Scanningを使ってみる パート2

はじめに スキャン実行 RCE (Remote Code Execution) Directory Traversal XML External Entity 攻撃 脆弱性を修正 まとめ 参考 更新履歴 はじめに この記事は先日書いた「GitHubのCode Scanningを使ってみる」の続きです。 Code Scanning の導入は下の記事…

2020年 振り返り

2020年 振り返り サムネイルの作成技術は成長した気がします。 2020年初め 2020年終わり 情報技術の知識の成長は・・・。(´;ωq`) 稲作の知識増えた 2021年 抱負 [must] 生きる [nist] 低レイヤ(技術・言語)やる まとめ 2021年を迎えたことで、プログラミン…

2020年 人気脆弱性 TOP 10 in GitHub

はじめに TOP 10 10位 495 ポイント 『SaltStack Salt における入力確認に関する脆弱性 (CVE-2020-11651)』 SaltStack とは 脆弱性の内容 9位 508 ポイント 『複数の Microsoft Windows 製品における権限を昇格される脆弱性 (CVE-2020-0787)』 Background In…

PHPパッケージを Packagist に公開してみた

はじめに 登録の流れ 1. アカウントの作成 2. パッケージの登録 3. 2FA(2要素認証)の有効化 まとめ はじめに 普段私はWebアプリ開発に Laravel を利用しており、Packagist(パッケージリポジトリ) からパッケージを取得して開発しています。 しかしこれらの…

WordPressプラグイン開発のセキュリティ

はじめに 脆弱性種類 1. PHPファイルへの直接アクセス 対策 機密ファイルへの直接アクセス 2. サードパーティライブラリ 事例 事例1 : elFinder 事例2 : Epsilon Framework 3. 権限の検証に不備があるAPI REST API ルートエンドポイント 権限 事例 4. CSRF(…

GitHubのCode Scanningを使ってみる

一言で表すと「プログラムを検査し、脆弱性を検出する」ツール。 GitHubパブリックリポジトリに対してのスキャンは「無料」なので使ってみました。 本記事でやること 「意図的に脆弱性を埋め込んだWebアプリケーションのスキャン」 「スキャン結果の確認」

【WordPress】CVE-2020-25286 "最近のコメント"から保護されているコメントの閲覧可能

はじめに CVSS 3.1 (Base Score: 5.3) 脆弱性の確認 下準備 脆弱性を再現 1. パスワード保護の記事を作成 2. パスワード保護された記事へコメントを書き込み 3. 未認証ユーザでコメントの確認 4.「最新のコメント」ブロックを追加 5. 未認証ユーザでコメント…

【GitHub】リポジトリにスターを付けたアカウントを分析

はじめに やること 実装 事前準備 - OAuth token 実装コード 1. スターを付けたアカウント名一覧を取得 2. アカウント名 から プロフィール情報 の取得 3. 集めたプロフィール から ワードクラウド画像 を生成 生成された画像 まとめ 参考 更新履歴 はじめに…

インシデント対応ツール『GRR Rapid Response』【YARA編】

Yaraといったら「Passion Yara」 はじめに 動作確認 YARAルールでプロセスを特定 まとめ 更新履歴 はじめに GRR Rapid Response (以下GRR)について軽く説明、GRR はGoogleが開発しているインシデント対応ツールであり、主にフォレンジックを行うために利用さ…

インシデント対応ツール『GRR Rapid Response』【構築編】

はじめに ~ GRR Rapid Response とは? ~ GRRクライアント 機能 GRRサーバ 機能 GRRの開発リポジトリ 環境構築 環境 GRR Rapid Responseサーバの構築 MySQL インストール GRR Rapid Response インストール GRRサーバの起動の確認 GRRクライアントの作成 エー…

【開発日誌】『MD-to-PDF(仮名)』というサービス作ったので利用技術の紹介

作成したアプリのスクリーンショット はじめに 開発環境 利用技術 MDをPDFに変換 日本語の対応(dompdfの日本語対応) 課題 まとめ 更新履歴 はじめに 最近、「MD-to-PDF(仮名)」というWebアプリケーションを開発してみたので、利用したライブラリといった技術…

『不信なPoCは実行するな』というお話【セキュリティ】

はじめに ~ 脆弱性PoCの収集リポジトリ ~ 正体はマルウェアだったリポジトリ まとめ ~ 無闇にPoCを実行してはイカン!! ~ 更新履歴 はじめに ~ 脆弱性PoCの収集リポジトリ ~ 私は脆弱性のPoCが自動的に収集しているリポジトリを公開していますが、先日このよ…

【Azure】Azure CLIでApplication Gateway WAFを操作 - カスタムルール編

はじめに Azure CLI(azコマンド)で Application Gateway WAF を操作 1. WAFポリシー 1-1. WAFポリシーの作成 (create サブコマンド) 1-2. WAFポリシーの詳細表示 (show サブコマンド) 2. カスタムルール 2-1. カスタムルールの作成 (create サブコマンド) 2-…

【Azure】Azure CLIコマンド(az)でApplication Gatewayを停止

はじめに 利用するバージョン 検証 Application Gateway の状態を確認(az network application-gateway list) Application Gateway の停止(az network application-gateway stop) Application Gateway の起動(az network application-gateway start) …

HTTPS通信をNginxでフォワードプロキシ

はじめに HTTPS 通信をプロキシする「ngx_http_proxy_connect_module」モジュール 環境構築 Nginx と モジュール の ダウンロード & インストール Nginx の設定 & 起動 動作確認 ダイナミック(動的)モジュール 参考 更新履歴 はじめに Nginx では「proxy_pas…

【PR】Githubスターが100超えたから紹介【セキュリティ】

はじめに 「PoC-in-GitHub」とはどのようなリポジトリ? オススメ度:★★★ その他リポジトリも紹介させて! NVD情報を保存している「NVD-Database」 オススメ度:★ CVEをリスト化している「CVE-Easy-List」 オススメ度:★★★★ CVEのExploitがリスト化されて…

【Webセキュリティ】Apache Dubbo の脆弱性をやる(CVE-2019-17564)

はじめに Apache Dubbo とは 脆弱性について 影響を受けるバージョン 解決策 検証環境の準備 Apache ZooKeeper を起動 アプリケーションの修正と起動 脆弱性の検証 ysoserial を使ってペイロードを生成 ペイロードの中身を確認 ペイロードの送信 修正版 2.7.…

【Python】Waitress の ReDoS をやってみる(CVE-2020-5236)

いらすとや産のPython はじめに Waitress とは 検証 検証バージョン 環境構築 ReDoS をしてみる 脆弱なバージョン 1.4.2 パッチ適用バージョン 1.4.3 脆弱性が存在しないバージョン 1.4.1 脆弱性を掘り下げる 修正コミット 修正前 と 修正後 の正規表現 簡単…

【Webセキュリティ】依存ライブラリのセキュリティチェックツール(SCA)を使ってみる

はじめに 言語別 ツール一覧 PHP sensiolabs / security-checker 使い方 脆弱性データベース Web版 Ruby rubysec / bundler-audit 使い方 脆弱性データベース - rubysec / ruby-advisory-db Python pyupio / safety 脆弱性データベース 使い方 詳細情報レポ…

2018年 人気脆弱性 TOP 10 in GitHub

はじめに TOP 10 10位 541 ポイント 『Intel Core マイクロプロセッサを搭載したシステムにおける情報漏えいに関する脆弱性(CVE-2018-3620 通称「Foreshadow」)』 9位 575 ポイント 『Intel ハードウェアアーキテクチャのデバッグ例外を適切に処理していない…

2019年 人気脆弱性 TOP 10 in GitHub

はじめに TOP 10 10位 501 ポイント『Pulse Secure Pulse Connect Secure におけるパーミッションに関する脆弱性(CVE-2019-11510)』 9位 522 ポイント『Canonical snapd における入力確認に関する脆弱性(CVE-2019-7304)』 8位 545 ポイント『Firefox および …

【Python】Selenium側からネットワーク情報を取得する

はじめに 動作環境 取得対象 実装 パフォーマンス情報の取得 ブラウザが読み込むリソースのURLを取得 まとめ 更新履歴 はじめに Selenium側からページが読み込むリソース情報(URL)を取得する方法を紹介します。 言語はPythonを使います。 動作環境 Python 3.…

PHP-FPM RCE(CVE-2019-11043)の攻撃をAWS WAFでブロック

はじめに AWS WAFの設定 文字列マッチの条件を作成 ルールを作成 ACLにルールを追加 攻撃がブロックされることを確認 参考 更新履歴 はじめに 先日、PHP-FPMにRCEの脆弱性(CVE-2019-11043)があることが公表されました。 脆弱性の詳細について本記事で説明し…

Laravelで学ぶ「安全でないデシリアライゼーション」

はじめに 環境 事前知識 1つのPHPファイルでやってみる なぜOSコマンドが実行されたのか なにが問題なのか Laravel でやってみる 修正内容 脆弱性の確認 OSコマンド呼び出し部分の確認 Illuminate/Broadcasting/PendingBroadcast クラス Faker/Generator ク…

【セキュリティ】motikan2010作サイト『オープンハニーポット』とは

※金欠の為、サービスは終了いたしました。 はじめに どのようなサイト? 各画面の説明 トップ リクエスト一覧 リクエスト詳細 時間別アクセス数 日別アクセス数 ログイン画面 今後 参考 更新履歴 はじめに 前回のブログ更新から1ヶ月以上経ち、たまには更新…

OWASP Security Shepherdで入門するWebセキュリティ

「OWASP Security Shepherd」はWebセキュリティを学ぶことができるアプリケーションです。 Webフレームワークを用いた場合にでも発生する可能性が高い脆弱性が主に取り上げられており、実際にそのような脆弱性に攻撃する経験をすることができます。 Webフレ…

CVE-2019-11581 - 「Atlassian JIRA サーバーサイド・テンプレート・インジェクション」について調べてみた

はじめに 概要 脆弱性についてより詳しく 検証情報(キャプチャ画像有り) PoC(検証コード) 検証 検証パッケージ(Jira Server 7.13.4) Jira Server インストール手順(AWS) 攻撃可能な設定 対応 まとめ 追記 更新履歴 はじめに プロジェクト管理ツールと…

最悪の管理画面URLランキング

はじめに 確認したツール 最悪な管理画面URLランキング 1位 - 全てのツールで検索対象 2位 - 5つのツールで検索対象 3位 - 4つのツールで検索対象 4位以下 - 1~3つのツールで検索対象 まとめ 更新履歴 はじめに Webサイトの管理画面が推測されることにより、…

WAF for Nginx「NAXSI」を動的モジュールとして読み込む

NAXSIのロゴ はじめに 環境 導入作業 Nginxインストール リポジトリ追加 インストール NAXSIモジュールをビルド NAXSIモジュールのロード ログファイルの作成 Nginx設定ファイル修正 Nginxの起動 動作確認 不正なリクエストを送信 検出ログ ブロックはしたく…