まったり技術ブログ

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

セキュリティ

【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セキュリティ】依存ライブラリのセキュリティチェックツールを使ってみる

はじめに 言語別 ツール一覧 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 および …

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ヶ月以上経ち、たまには更新をしないといけないと思ったので最近私が作…

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

プロジェクト管理ツールとし有名なJira Serverの脆弱性が見つかりました。 脆弱性を含んでいるバージョンを利用しているかつ、特定の設定を有効にしている場合に、未ログインユーザでも「サーバーサイド・テンプレート・インジェクション(server-side templa…

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

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

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

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

CookieのSameSite属性で「防げるCSRF」と「防げないCSRF」

CookieのSameSite属性はCSRF対策のために提案されたもので、その属性をCookieに付与するだけでほとんどのサイトの場合はCSRF対策が可能になります。 しかし、SameSite属性の付与が今までのCSRF対策の代わりになり、今まで行ってきたCSRF対策をしなくてよくな…

LaravelのセッションCookieにSameSite属性を付与

はじめに TL;DR 検証環境 SameSite属性とは SameSite属性が付与されるように設定 設定変更 設定前に発行されるCookie情報 対応Laravelバージョンについて 設定ファイルの編集 確認 設定後に発行されるCookie情報 まとめ 参考 更新履歴 はじめに Cookieの属性…

【随時更新】Webセキュリティ診断ツールのまとめ

Webセキュリティ診断ツール比較サイト sectoolmarket.com 目次 Webセキュリティ診断ツール比較サイト 目次 GUIアプリケーション型 Burp Suite OWASP ZAP zap-cli Fiddler Watcher X5S コンソールアプリケーション型 SQLMap NoSQLMap w3af Arachni Scan My Se…

LDAPインジェクションをしたかった話

はじめに 検証環境 ホスト コンテナ 構築 OpenLDAP LDAPクライアントアプリケーション 1. アプリケーションの用意 2. コンテナの準備 3. コンテナの実行 動作確認 OpenLDAPの動作確認 予想外の事態発生 脆弱性の検証 正常系の動作確認 脆弱性の確認 ダメな対…

【AWS】Security-JAWSの資料まとめ【第5~9回】

講演資料・スライド 第9回 ◆ 【SecurityJAWS】Kibana Canvasで魅せる!AWS環境における脅威分析ユースケース 【SecurityJAWS】Kibana Canvasで魅せる!AWS環境における脅威分析ユースケース from Hibino Hisashi www.slideshare.net ◆ Security JAWS 【第9回…

XSSI(Cross-Site Script Inclusion)攻撃とは

はじめに 攻撃名からの勝手な予想(※誤り) 結局何ができるのか Same-Origin Policyを確認 XSSIは結局何ができるのか 脆弱性が存在するサイト(bank.example.jp) トップページ(index.php) シークレットコードを生成し、JSONPを活用(userdata.php) 攻撃者…

【THE 備忘録】Burp Suiteを使ってHTTPSサイトにアクセス

はじめに やること 使ったブラウザ 手順 1. 初期状態だと証明書エラー 2. 証明書のダウンロード 3. インポート済みの証明書一覧を表示 4. ダウンロードした証明書をインポート 5. ダイアログの上部にチェック後、「OK」 6. 証明書がインポートがされたことを…

SQLインジェクション体験ツール『SQLI-LABS』で遊ぶ

はじめに 環境構築 インストール データベース設定 $ vim sql-connections/db-creds.inc データベース・テーブル初期化 動作確認 sqlmapでSQLi Less-1 (GET - Error based - Single quotes - String) Less-5 (GET - Double Injection - Single Quotes - Stri…

Sambaの脆弱性〜CVE-2017-7494をやってみる〜

5月24日に公開された、ファイル共有によく利用されるSambaの脆弱性「CVE-2017-7494」を実際に構築・PoCでの検証を行ってみます。 概要・対策に関しては、下記の記事が参考になる。 CVE-2017-7494 - Red Hat Customer Portal oss.sios.com

ボタンを重ねない『クリックジャッキング』の話

Trap Site 2017年度に入りましたが、昔ながらのクリックジャッキングの話 『クリックジャッキング』ってなんぞやという方は下の記事が大変解りやすいかと。 blog.tokumaru.org

【IoTセキュリティ】Bluetoothプロキシ『btproxy』を使う

はじめに btproxyをRaspberryPi3に導入 BlueZをインストールする前の下準備 必要パッケージのインストール(※失敗) APTのパッケージリストの更新 再び必要パッケージのインストール BlueZ − インストール btproxy − インストール btproxyを使う 動作確認 通信…