PHPの型変換と比較処理におけるCTF脆弱性パターン

1. intval()関数の型変換挙動 PHPのintval()は文字列を整数に変換する際、特定のパターンで停止位置が異なる特性を持つ。特にbaseパラメータが0の場合、接頭辞に応じて自動で進数を判定する。 <?php // 8進数・16進数による回避 var_dump(intval("012")); // 10 (8進数として解釈) var_dump(intval("0xA")); // 10 (16進数として解釈) // 小数点以下の切り捨て v ...

10月3日 17:07 投稿

CTFウェブチャレンジ解析:ファイルインクルードとコマンド実行の脆弱性

本記事では、特定のCTFウェブチャレンジ「easy_web」を題材に、ファイルインクルードとコマンド実行の脆弱性を悪用した攻略手法を解説します。課題のURLは、http://xxx/index.php?img=...&cmd= のような形式でした。 イメージパラメータ (img) の解析 まず、img パラメータに注目します。このパラメータはエンコードされた文字列を含んでおり、デコードするとファイル ...

9月25日 20:17 投稿

howtoheap入門:西湖論劍Storm_noteの解説

how2heapはshellphishチームによって作成されたヒープ利用のチュートリアルであり、さまざまなヒープ攻撃技術を紹介しています。この記事では、このチュートリアルを通じて学習します。環境設定については、「pwn環境の最適化」をご覧ください。 1. 問題情報 問題リンク root@ubuntu:/work/how2heap/storm_note# chmod +x Storm_note root@ubuntu:/work/how2heap/storm ...

9月9日 10:42 投稿

CTF MISC問題攻略ガイド:データ暗号と隠蔽の解法

CTF MISCカテゴリにおける解析手法の概要 CTF(Capture The Flag)競技の MISC(Miscellaneous)カテゴリーでは、多様な形式のデータからフラグを検出する能力が問われます。ここでは、ファイル構造の解析、画像やアーカイブへの情報隠蔽技術、およびネットワークトラフィックからのデータ抽出に関する主要なアプローチを解説します。 1. ファイルフォーマットの特定と修 ...

8月1日 21:42 投稿

Pikachu CTFにおけるRCE脆弱性の悪用:WindowsおよびLinux環境での実践的アプローチ

Pikachuは、Webアプリケーションの一般的な脆弱性を学ぶための有名な演習プラットフォームです。中でもリモートコード実行(RCE)の脆弱性は、攻撃者がサーバー上で任意のコマンドを実行できるため、非常に危険であり、学習において重要なトピックとなります。本記事では、Pikachu環境を題材に、WindowsおよびLinuxサーバーにおけるRCE脆弱性の悪用方法と、実践的なペイロ ...

7月31日 23:47 投稿

CSCTF 2024 EICS1 Web問題 解答

最近の難しいCTFに参加してみることにした Web ZipZone Feature Unlocked Trendz Trendzzz Trendzz Web ZipZone 添付ファイルをダウンロードして開始 main.py import logging import os import subprocess import uuid from flask import ( Flask, abort, flash, redirect, render_template, request, send_from_directory, ) app = Flask ...

7月30日 19:38 投稿

ironCTF 2024 Web 問題の解法考察:JWTからGit漏洩まで

はじめに ironCTF 2024のWebセクションに挑戦した記録です。初の表彰台(チーム内)で非常に嬉しい経験となりました。一部の問題は知識重視の「唐」な出題もありましたが、学びが多くありました。 順位表 ユーザー名 スコア LamentTyphon 2468 Jerrythepro123 2610 Dragonkeep ...

7月28日 20:38 投稿

2023年紅明谷CTF「It Takes Two!」問題の解法

2023年紅明谷CTF「It Takes Two!」問題の解法 競技中の問題 本問題は行列演算と暗号理論を組み合わせたクリプトグラフィ challenge です。競技中、行列除算の方向を間違えてしまい、時間切れとなりました。 問題のコード: #task from sage.all import * from Crypto.Util.number import * from os import urandom from secret import flag n = 16 bound = 2^15 A = [ZZ. ...

7月19日 18:57 投稿

CTF WriteUp:ファイルヘッダ解析とPNG CRC問題の解法

破損した圧縮ファイル 基礎知識 一般的なファイルのヘッダとフッタ https://devtool.tech/filetype 1、画像ファイル JPEG ファイルヘッダ:FF D8 FF ファイルフッタ:FF D9 TGA 非圧縮の先頭4バイト 00 00 02 00 RLE圧縮の先頭5バイト 00 00 10 00 00 PNG ファイルヘッダ:89 50 4E 47 0D 0A 1A 0A ファイルフッタ:AE 42 60 82 GIF ファイルヘッダ:47 49 46 38 39(37) 6 ...

7月18日 19:57 投稿

ヒープオーバーフローにおけるOff-by-One脆弱性の解析

Off-by-One脆弱性の概要 Off-by-oneは特殊なバッファオーバーフロー脆弱性で、プログラムがバッファに書き込む際に、確保されたサイズを1バイトだけ超過する状態を指します。この脆弱性を悪用すると、メモリ構造を改変し機密情報の漏洩や制御フローの乗っ取りが可能になります。 実例解析:BUUCTF課題1 脆弱性の特定 編集機能にoff-by-one脆弱性が存在し、隣接するチャン ...

7月14日 23:58 投稿