強網杯2024 Web Write-up: pyblockly問題の解法

今回はwgpsecチームと共に参加しました。再現環境がないためwrite-upを作成できず、国内の大会に初参加したため少し手間取りました。pyblocklyについて詳しく解説します(pyblocklyには問題解決の記録が残っています) wgpsecのwrite-upはこちら:https://mp.weixin.qq.com/s/NzZ-ZJlyCh2sk3vbNbswiw Web部門はほぼ完全攻略、師匠たちのスキルに感服しました このようなPyt ...

6月24日 00:09 投稿

Apache Tomcatの脆弱性を利用したJava Webアプリケーションの侵入手法

ez_java サンプルを開くと、またログインフォームが表示されます。adminが使用済みならAdminで登録してみましょう。 ログインに成功しました。 前の問題の経験から、Cookieを開くとJWTでエンコードされていることがわかります。 Adminをadminに変更してエンコードします。 eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJhZG1pbiIsImV4cCI6MTc2NTYyMjE4M30.uqlZpRIPHzHnA45-ddAwJwLT1Ga6 ...

6月17日 18:37 投稿

PythonのlinecacheライブラリにおけるRCE脆弱性の分析

最近、Pythonの標準ライブラリを調査する中で、linecacheモジュールに存在するRCE(リモートコード実行)の脆弱性を発見しました。この記事では、その脆弱性の詳細と実証コードを紹介します。 実証コード(PoC) linecache.getline関数を使用してファイルの特定行をキャッシュできますが、第三引数がユーザーによって完全に制御可能な場合、RCE脆弱性が発生する可能性があ ...

6月14日 18:48 投稿

PHPシリアライズ展開とセッション操作によるRCE攻撃手法解説

ソースコード構造の解析 出題されたPHPスクリプトは、ユーザー入力をunserialize()で復元した後に条件分岐を行う設計になっています。セキュリティホールを特定するには、魔术メソッドの呼び出し順序と動的変数展開の仕組みを理解する必要があります。 <?php // 属性参照時に内部ルーティングをトリガーするクラス class RouteHandler { public function __get($pr ...

5月28日 20:48 投稿

AJ-Reportにおけるコマンドインジェクション脆弱性の回避手法と検証

脆弱性の核心は、検証ルールの処理に利用される `engine.eval` メソッドにあります。開発者はセキュリティパッチを適用しましたが、その対策は限定的であり、内部コマンド実行に関わる3つのクラスに対してのみブラックリストによる制限が設けられました。 Java 8で導入されたNashorn JavaScriptエンジンは、スクリプト内からJavaのクラスやメソッドを呼び出すことを可能に ...

5月13日 10:12 投稿