サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
体力トレーニング
blog.motikan2010.com
TL;DR はじめに 偽PoC 偽PoCのリポジトリを見る 偽PoCリポジトリに付与されたスター数を見る 偽PoCにスターを付与したアカウントを見る 詐欺アカウントを通報 まとめ TL;DR 詐欺師はGitHubアカウントを複数用意して、偽PoCのリポジトリにスターを付与する自演行為をしている。 ➡︎ スターがついているからといって、PoCを無闇に信用しないようにしてください。 はじめに 日々、PoC in GitHub の RSS を眺めていますが、最近になって"偽PoCのリポジトリが増えてきている"気がしたので、原因を調べてみました。 ここで言う「偽PoC」の特徴は以下のようなものです。 PoCと見せかけたマルウェア PoCはビットコインで販売(実際にPoCが提供されるかは不明) 偽PoCについては以下をご参照ください。 Microsoft Exchange のゼロデイ脆弱性:Prox
⚠️ AWSGoat Module 2 のネタバレあり はじめに AWSGost とは 攻撃方法の分類 インフラの料金 ラボ環境の構築 AWSGost リポジトリをフォーク Actions secrets でクレデンシャルを設定 GitHub Actions でデプロイ Module 2の大体の流れ Step 1. SQL Injection 解法 脆弱性があるコード Step 2. File Upload and Task Metadate リバースシェルの用意 待ち受け側 Step 3. ECS Breakout and Instance Metadata 現ユーザの権限を確認 リソースへのアクセスを試行 ケイパビリティを確認 (www-data ユーザ) コンテナ内でroot権限を取得 sudo可能なコマンドを確認 Vim経由でroot権限のシェルを取得 ケイパビリティを確認 (ro
※ネタ記事です はじめに 検証する脆弱性 Tips. GPT-3 とは? WAFの実装 環境・必要なもの ソースコード 検証 正常リクエスト XSS GETパラメータ POSTデータ POSTデータ & ヘッダ無し SQL インジェクション GETパラメータ GETパラメータ & ヘッダ無し XXE POSTパラメータ① POSTパラメータ② POSTパラメータ & ヘッダ無し パストラバーサル GETパラメータ GETパラメータ & ヘッダ無し OS コマンドインジェクション GETパラメータ & ヘッダー無し GETパラメータ Log4Shell POSTパラメータ POSTパラメータ & ヘッダ無し POSTパラメータ & ヘッダ無し WordPress のユーザ列挙 ShellShock まとめ はじめに 最先端(?)であるGPT-3を使って 次世代WAF を作っていきます。 以下
はじめに CodeQL とは サポート言語 準備 検証環境の構築 CodeQL CLI の動作確認 (バージョンの表示) 動作確認 CodeQLデータベースの生成 脆弱性の検出 XXE の検査 ~ 検出されることの確認 ~ 検査の実施 ~ CSV形式で出力 ~ 検査の実施 ~ SARIFで出力 ~ RCE の検査 ~ 検出されないことの確認 ~ まとめ 参考 更新履歴 はじめに 本記事でやること。 CodeQL を導入 脆弱なアプリケーションに対してのセキュリティテスト(XXEを検出) 検出結果を見てみる CodeQL とは CodeQL は SAST(Static application security testing) というセキュリティテスト手法を実現するためのツールです。 本ブログで何度か取りあげた GitHub Code Scanning も SAST に属しているセキュリティ
はじめに 動作環境 取得対象 実装 パフォーマンス情報の取得 ブラウザが読み込むリソースのURLを取得 まとめ 更新履歴 はじめに Selenium側からページが読み込むリソース情報(URL)を取得する方法を紹介します。 言語はPythonを使います。 動作環境 Python 3.6.9 Selenium 3.141.0 Google Chrome 78.0 取得対象 今回の検証に利用するサンプルページのHTMLは以下のものです。 このページが開かれたら6つのリクエストが飛ぶようになっています。 (JSファイル2つ、画像ファイル1つ、Ajaxのリクエスト2つ、ファビコン1つ) それらのリソースのURLをSelenium側(Python側)から取得することが本検証の目的となります。 <html> <body> <img src="https://dummyimage.com/600x400/
はじめに HTTPS 通信をプロキシする「ngx_http_proxy_connect_module」モジュール 環境構築 Nginx と モジュール の ダウンロード & インストール Nginx の設定 & 起動 動作確認 ダイナミック(動的)モジュール 参考 更新履歴 はじめに Nginx では「proxy_pass」ディレクティブを指定することでフォワードプロキシ(Forward Proxy)として動作させることが可能です。 しかし、モジュール等を追加していない素の Nginx の場合、 HTTPS 通信をフォワードプロキシすることはできません。 後述する「ngx_http_proxy_connect_module」を利用して解決します。 試しにNginxプロキシ経由でHTTPSのサイトにアクセスしたら以下のようにエラーとなりました。 $ curl -Lv https://gith
CookieのSameSite属性はCSRF対策のために提案されたもので、その属性をCookieに付与するだけでほとんどのサイトの場合はCSRF対策が可能になります。 しかし、SameSite属性の付与が今までのCSRF対策の代わりになり、今まで行ってきたCSRF対策をしなくてよくなるというわけではありません。 CSRF対策の為に提案された属性ですが、サイトの特性によってはCSRFを防ぐことができない場合があります。 今回は、その「防げないCSRF」とはどういったものであるのか、一例をあげます。 そして実際にSameSite属性付与が付与される脆弱なサンプルサイトを使って説明していきます。 目次 目次 TL;DR サンプルアプリケーションを用いての検証 サンプルサイトの機能 CSRFの確認 CSRFトークンを用いている場合 SameSite属性を用いている場合 まとめ TL;DR 「防げる
前回の続きです。 【Rails】JSON Web Token(JWT)を使ってみる - 実装編【knock】 - まったり技術ブログ 今回はJWTのセキュリティにふれてみます。 JWTは危険なのか ユーザによって値が改ざんされる危険性 knockはどうなのか アルゴリズムを「HS256」 ユーザid:5で認証 「"sub":6」に改ざんして送信 アルゴリズムを「none」 設定ファイルの編集 ユーザid:5で認証 「"sub":6」に改ざんして送信 なぜknockでは「"alg":"none"」で検証が行われたのか ruby-jwtの仕様を確認 knockの実装を確認 knockでトークン検証なしにしてみる 結論 JWTは危険なのか 認証成功時に発行されるJSONは軽く見たかんじ、少し長い乱数のセッションIDのように見えますがそうではありません。 eyJ0eXAiOiJKV1QiLCJhb
GUIアプリケーション型 Burp Suite ZAP zap-cli Fiddler Vex Watcher X5S コンソールアプリケーション型(CUI型) SQLMap NoSQLMap w3af Arachni (終了) SCNR Scan My Server (※提供終了) WhatWeb Skipfish Nikto Vega Grabber Wapiti WebScarab Ratproxy Wfuzz Grendel-Scan WAScan Paros SaaS型 VAddy(バディ) AeyeScan(エーアイスキャン) komabato(コマバト) Securify(セキュリファイ) secuas(セキュアズ) Walti (※提供終了) 特徴 診断種別 「Web Server」のスキャン結果 Acunetix WVS Qualys - Web Application
はじめに 検証環境 ホスト コンテナ 構築 OpenLDAP LDAPクライアントアプリケーション 1. アプリケーションの用意 2. コンテナの準備 3. コンテナの実行 動作確認 OpenLDAPの動作確認 予想外の事態発生 脆弱性の検証 正常系の動作確認 脆弱性の確認 ダメな対策 対策 ldap_escape関数 まとめ 参考 更新履歴 はじめに 今更ながらLDAPインジェクションがどのようなものなのかの検証をやってみました。 LDAPインジェクションは脆弱性としてそこそこ有名であり、名前だけは目にすることがあるが、イマイチ実際に検証を行う気になれない脆弱性でもあると思う。特にLDAPの環境構築は手間になりそうだし。 このままだとLDAPインジェクションを体験しないまま死んでしまってもおかしくないので、DockerでさくっとLDAPインジェクションの検証環境を構築し体験してみるとする
はじめに 検証環境 環境構築 perf インストール FlameScope インストール 検証用Javaアプリケーションの導入 perf-map-agent インストール プロファイリング開始 Javaアプリケーションの起動 Javaアプリケーション用のマッピングファイル(*.map)の作成 プロファイルの実行 プロファイルの結果 参考 更新履歴 はじめに 今回はNetFlixが開発したOSSである「FlameScope」を利用して、Javaアプリケーションのパフォーマンスの可視化をしてみます。 最終的には上記画像のように、一定期間のCPU利用割合をメソッド単位で表示させてみます。 このツールを使うことで、どのメソッドがボトルネックになっているのかを特定することが確認することができます。 github.com 検証環境 $ uname -a Linux ip-172-31-23-235 4
github.com JSON Web Tokenの説明は下記の記事を参照。 qiita.com 事前準備 新規アプリを生成 Gemfileに追記 モデルの作成 Postモデル Userモデル テストデータの追加 コントローラの作成 PublicPostsコントローラ ルーティング設定 PrivatePostsコントローラ ルーティング設定 動作確認 リクエスト "/public-posts"にアクセス "/private-posts"にアクセス 認証を行う トークンを取得する認証リクエスト トークンを使用してアクセス 事前準備 新規アプリを生成 $ rails new railsJWT --api Gemfileに追記 必要なライブラリをGemfileに追記します。 $ vim Gemfile # 下記を追記 gem "faker" gem "bcrypt" gem "jsonapi-r
はじめに やること 使ったブラウザ 手順 1. 初期状態だと証明書エラー 2. 証明書のダウンロード 3. インポート済みの証明書一覧を表示 4. ダウンロードした証明書をインポート 5. ダイアログの上部にチェック後、「OK」 6. 証明書がインポートがされたことを確認 7. HTTPSサイトにアクセス はじめに 証明書のインポート毎に忘却しており、証明書探しの旅に出てしまっているので「THE 備忘録」 やること Burp SuiteのSSL証明書を Firefox にインポート 使ったブラウザ Firefox : 57.0.4 手順 1. 初期状態だと証明書エラー 2. 証明書のダウンロード プロキシが動作している IPアドレス:ポート番号 にアクセス 右上の「CA Certificate」を押下 3. インポート済みの証明書一覧を表示 4. ダウンロードした証明書をインポート 5.
はじめに 構築 プロジェクトの作成 Scaffoldの導入 サービスプロバイダーの追加 scaffoldの実行 ルーティングの設定 データベースの作成 マイグレーション Webアプリケーションへアクセス 認証機能(Auth)の導入 魔法の呪文『make:auth』 認証の確認 認証後の遷移先を変更 アプリケーションを確認 はじめに PHP製のWebフレームワークである『Laravel』を使って"認証あり"のアプリケーションを作成していきます。 今回はLaravelバージョン5.3系を使います。 構築 プロジェクトの作成 $ laravel new auth_scaffold $ cd auth_scaffold $ php artisan --version Laravel Framework version 5.3.29 Scaffoldの導入 github.com 下記のコマンドで容易
はじめに 環境構築 インストール データベース設定 データベース・テーブル初期化 動作確認 Less-1 (GET - Error based - Single quotes - String) Less-5 (GET - Double Injection - Single Quotes - String) Less-10 (GET - Blind - Time based - double quotes) level 1 ⇒ 失敗 Less-11 (POST - Error Based - Single quotes - String) Less-18 (POST - Header Injection - Uagent field - Error based) Less-23 (GET - Error based - strip comments) Less-53 (GET - Blin
はじめに 「sessionauth」を使ってのパスワード保存状態 パスワードのハッシュ化 パスワード文字列とハッシュ値を比較 ハッシュ値の生成・比較を1つのコードにまとめる 認証のデモ 出力結果 更新履歴 はじめに 本記事は、 ・bcrypt.GenerateFromPassword ・bcrypt.CompareHashAndPassword を使ってみる話です。 Go言語を使ったWeb開発で認証機能を実装したくて調べてみたら、「sessionauth」というパッケージがありました。 試しに sessionauth を追加って認証機能を実装してみることにする。 github.com 認証の有無のセッションを管理してくれるのは便利なのだが、パスワード格納(DBへの保存)の機能は提供されていないので、その部分は自ら実装する必要がありそう。 「sessionauth」を使ってのパスワード保存状
※本記事で紹介する hey は 2020年8月6日のリリースからアップデートされていません。 はじめに 百聞は一見に如かず「hey」を使う インストール 動作確認(オプションを指定) GETリクエストを送信 POSTリクエストを送信 Basic認証に対応 まとめ 更新履歴 はじめに Web界隈では「Apache Bench」「JMeter」などのベンチマークツールが有名ですが、本記事ではGo言語で開発されたベンチマークツール『hey』を紹介します。 github.com スターは約7,500個で人気なソフトウェアになっているのは確かです。 百聞は一見に如かず「hey」を使う 結果は下記ような形式で出力されます。 abコマンドと比べて非常にシンプルな結果表示になっています。 このツールの実装自体もシンプルで可読性が高く(さすがはGo)、カスタマイズしても良し、このツールを参考に自分自身でベン
はじめに btproxyをRaspberryPi3に導入 BlueZをインストールする前の下準備 必要パッケージのインストール(※失敗) APTのパッケージリストの更新 再び必要パッケージのインストール BlueZ − インストール btproxy − インストール btproxyを使う 動作確認 通信のキャプチャ ノートPC側からスマートフォン側へテキストファイルを送ってみます。 はじめに IoTというワードが流行りつつあり、Bluetoothの通信を見てみたいという欲求が出てきたので、Bluetooth通信のプロキシを探してみました。 「btproxy」というツールが良さげ、このキャプチャ技術を応用したら以下の場面などで活用できそう。 Bluetoothデバイス開発のデバッグ Bluetoothデバイスに対してのセキュリティ診断 ▼ btproxy のリポジトリ github.com
このページを最初にブックマークしてみませんか?
『blog.motikan2010.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く