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 投稿

NCTF2021暗号問題の解法と実装

NCTF2021 暗号問題の解法 signin 問題 この問題では、RSA暗号のパラメータに関する特定の関係が与えられています。与えられた式は以下の通りです: [k = (p2^{1024})//(q+r)--> p2^{1024}=k*(q+r)+m--> 2^{1024}/k=(q+r)/p+m/(k*p) ] ここでk*p>>mであるため、 [2^{1024}/k は (q+r)/p よりも若干大きい ] この性質を利用して、2**1024/kの連分数近似を行い、( ...

7月11日 17:48 投稿

PHPコードレビューの課題2: filter_var()関数の脆弱性

脆弱性分析 以下のコードを例にとって、XSS(クロスサイトスクリプティング)脆弱性について調査します。 <?php require 'vendor/autoload.php'; class Template{ private $twig; public function __construct() { $templateString = 'img src="https://loremflickr.com/320/240"><a href="{{url|esc}}">次のスライド »</a>'; ...

7月10日 23:39 投稿

CTF暗号学チャレンジ:RSA攻撃と古典暗号の解析

RDSA派生アルゴリズムと攻撃手法 連続素数を利用したRSA (MRCTF2020 babyRSA) この課題では、RSAの鍵生成に連続する素数と特殊な演算が使用されています。まず、公開情報から17個の連続した小さな素数を復元し、それらの積からなる $n$ を算出する必要があります。与えられた $p^{65537} \pmod n$ という値を利用し、離散対数問題的なアプローチあるいは既知の構造を利用 ...

7月10日 20:25 投稿