ペネトレーションしのべくん

さようなら、すべてのセキュリティエンジニア

PortSwigger

Web Security Academy「Remote code execution via web shell upload」解いてみた

はじめに Web Security Academyの「Remote code execution via web shell upload」解いてみました。 portswigger.net 難易度的に簡単なものが続いているのはご容赦ください。。 あと、ウェブシェルって色々あると思うんですが、使いやすいもの、多機能なもの…

Web Security Academy「Basic SSRF against the local server」解いてみた

はじめに PortSwigger Web Security Academyの「Basic SSRF against the local server」を解きました。 portswigger.net Writeup 事前情報 在庫確認機能は、内部システムにデータをフェッチする Walkthrough 商品ページを見て、 在庫チェック機能のリクエス…

Web Security Academy「Forced OAuth profile linking」解いてみた

はじめに この記事は「shinobe179 Advent Calendar 2022」1日目の記事です。 adventar.org CISSP、eJPT以降、忙しさにかまけて精進が滞っていたので、アドベントカレンダーの力を借りてBurp Suite Certified Practitioner(BSCP)を取ろうかなと思います。 …

Burp Suiteを使ってGETとPOSTを相互変換する

はじめに Burp Suiteには、GETをPOSTへ(またはその逆)変換して送信する機能があります。 使い方 リクエストをプロキシしたら、右クリックメニューから「Change request method」を選択します。 POSTになりました。 Repeaterでも同じことができます。リクエ…

Blind SQL injection with out-of-band data exfiltration

はじめに 「Blind SQL injection with out-of-band data exfiltration」のWriteupです。 portswigger.net Summary || による文字列連結などを使って、データベースから送信されるトラフィックに機密情報を載せる手法です。 前回同様ですが、CookieもURLエン…

Blind SQL injection with out-of-band interaction

はじめに 「Blind SQL injection with out-of-band interaction」のWriteupです。Web Security Academy関連の最後の投稿から2ヶ月弱ほど間が空いてしまいました。 こんな手法があるのかーという驚きもさることながら、PortSwiggerがこの手法を検査するための…

SQL injection attack, listing the database contents on Oracle

はじめに 「SQL injection attack, listing the database contents on Oracle」のWriteupです。 portswigger.net Summary Oracleにおける information.schema 相当のテーブル information_schema.tables : ALL_TABLES information_schema.columns : ALL_TAB_…

SQL injection attack, listing the database contents on non-Oracle databases

はじめに 「SQL injection attack, listing the database contents on non-Oracle databases」のWriteupです。 portswigger.net Summary Oracleを除くデータベースでは、全テーブルやそれらの列に関する情報が information_schema というデータベースに集約…

SQL injection UNION attack, retrieving multiple values in a single column

はじめに 「SQL injection UNION attack, retrieving multiple values in a single column」のWriteupです。 portswigger.net Summary usersテーブルからusernameとpasswordを取り出さなければならないのに、アプリケーションが利用する文字列型の列が1つし…

SQL injection UNION attack, retrieving data from other tables

はじめに 「SQL injection UNION attack, retrieving data from other tables」のWriteupです。 portswigger.net Summary UNION SELECT を使って、別のテーブルの情報を読み出す 列数、型の辻褄を合わせなければならないことに留意 Writeup 目的は、usersテ…

SQL injection UNION attack, finding a column containing text

はじめに 「SQL injection UNION attack, finding a column containing text」のWireupです。 portswigger.net Summary '+UNION+SELECT+NULL,NULL,NULL-- や 'ORDER BY 1-- で列の数が分かったら、 NULL を 'a' や 0 に変えてひとつずつずらしていくことで、…

Blind SQL injection with time delays and information retrieval

はじめに 「Blind SQL injection with time delays and information retrieval」のWriteupです。 portswigger.net Summary 評価式がtrueの時だけwaitが発生するようなペイロードを投げることで、パスワード長や文字列を識別する Burpの基本機能だけでもレス…

Blind SQL injection with time delay

はじめに 「Blind SQL injection with time delays」のWriteupです。ちょっともやもやする結果にはなりましたが、たまにはこういうこともありますね。 portswigger.net Summary PostgreSQLの pg_sleep(seconds) など、指定した時間だけ待機するコマンドを使…

Blind SQL injection with conditional errors

はじめに 「Blind SQL injection with conditional errors」のWriteupです。 Summary データベースエラーによる挙動差異を利用したBlind SQL injection CASE文を使って、評価式の結果に応じて(主にtrueだった場合?)ゼロ除算などのエラーを意図的に発生させ…

Blind SQL injection with conditional responses

はじめに 「Blind SQL injection with conditional responses」のWriteupです。SUBSTRING() をあまりちゃんと分かっていなかったので、よい学びになりました。 Summary Blind SQL injection: クエリの結果を、ログなどの明示的な要素ではなく、レスポンスの…

SQL injection attack, querying the database type and version on MySQL and Microsoft

はじめに 「SQL injection attack, querying the database type and version on MySQL and Microsoft」のWriteupです。やってることは前回とほとんど変わりませんが、学びがあったので記事にします。 Summary MySQLとMicrosoft SQLでバージョンを表示するに…

SQL injection attack, querying the database type and version on Oracle

はじめに ウェブセキュリティの勉強のために、PortSwigger Web Security Academyを地道に進めていこうと思います。 今日は「SQL injection attack, querying the database type and version on Oracle」というラボのWriteupです。 portswigger.net Summary O…