Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/raise-isayan/ViewStateDecoder

Burpsuite extension. Supports ASP.NET ViewStateDecoder
https://github.com/raise-isayan/ViewStateDecoder

aspnet burp-extensions burpsuite-extender viewstate

Last synced: about 2 months ago
JSON representation

Burpsuite extension. Supports ASP.NET ViewStateDecoder

Awesome Lists containing this project

README

        

Microsoft .NET ViewState Parser および Burp suite 拡張 ViewStateDecoder
=============

Language/[English](Readme.md)

このツールは、PortSwigger社の製品であるBurp Suiteの拡張になります。
Burp Pro/Communityに対応しています。

## 概要

この拡張は ASP.NET の ViewStateの表示を行うことが可能なツールです。
なお、コマンドラインを利用してデコードを行うことも可能です。

Burp suite の v2020.3 以降において、 ViewState 表示がされなくなりました。
このため、Burp suite v2020.x 以降のバージョンでの利用を想定しています。

また既存の Burp suite の ViewState にあった一部の問題を修正しています。

## 最新版について

メインのリポジトリ(master)には開発中のコードが含まれている場合があります。
安定したリリース版は、以下よりダウンロードしてください。

* https://github.com/raise-isayan/ViewStateDecoder/releases

利用するバージョンは以下のものをご利用ください

* Burp suite v2023.1.2 より前のバージョン
* ViewStateDecoder v0.5.3.0 以前

* Burp suite v2023.1.2 より後のバージョン
* ViewStateDecoder v3.0.0 以降
* ViewStateDecoder v0.5.3.0 以前(現時点で利用可)

## 利用方法

Burp suite の Extenderは以下の手順で読み込めます。

1. [Extender]タブの[add]をクリック
2. [Select file ...]をクリックし、ViewStateDecoder.jar を選択する。
3. 「Next」をクリックし、エラーがでてないことを確認後、「Close」にてダイヤログを閉じる。

### Message タブ

__VIEWSTATE のパラメータが存在する場合、History の Message Tabにおいて、「select extension...」ボタンから ViewState を選択できるようになります。

![ViewState-Tree Tab](/image/ViewState-Tree.png)

タブを切り替えてRAW JSONを表示することができます。

![ViewState-JSON Tab](/image/ViewState-JSON.png)

### ViewStateDecoder タブ

![ViewStateDecoder Tab](/image/ViewStateDecoder.png)

- [expand] ボタン
選択したツリーを展開します。

- [collapse] ボタン
選択したツリーを折りたたみます。

- [Decode] ボタン
入力したViewState値をデコードします。

- [Clear] ボタン
デコードした値をクリアします。

## コマンドラインオプション

コマンドラインから ViewState の値をデコードすることが可能です。

```
java -jar ViewStateDecoder.jar -vs=
```

にデコードしたいViewStateを指定します。レスポンスはJSON形式で出力されます。

例)
```
java -jar ViewStateDecoder.jar -vs=/wEPDwUKLTM0MjUyMzM2OWRkmW75zyss5UROsLtrTEuOq7AGUDk=

{
"Pair": [
{
"Pair": [
{
"string": "-342523369"
},
null
]
},
null
]
}
```

ViewState が URLEncode されている場合でも URLDecode 後に ViewState が表示されます。

例)
```
java -jar ViewStateDecoder.jar -vs=%2FwEPDwUKLTM0MjUyMzM2OWRkmW75zyss5UROsLtrTEuOq7AGUDk%3D
```

また、-gui オプションで Burp sute を必要としないスタンドアローンで起動できます。

```
java -jar ViewStateDecoder.jar -gui
```

## ビルド

```
gradlew release
```

## 実行環境

.Java
* JRE (JDK) 17 (Open JDK is recommended) (https://openjdk.java.net/)

.Burp suite
* v2023.1.2 or higher (http://www.portswigger.net/burp/)

## 開発環境
* NetBean 18.0 (https://netbeans.apache.org/)
* Gradle 7.5 (https://gradle.org/)

## 必須ライブラリ
ビルドには別途 [BurpExtensionCommons](https://github.com/raise-isayan/BurpExtensionCommons) のライブラリを必要とします。
* BurpExtensionCommons v3.1.x
* https://github.com/raise-isayan/BurpExtensionCommons

## 利用ライブラリ

* google gson (https://github.com/google/gson)
* Apache License 2.0
* https://github.com/google/gson/blob/master/LICENSE

* Universal Chardet for java (https://code.google.com/archive/p/juniversalchardet/)
* MPL 1.1
* https://code.google.com/archive/p/juniversalchardet/

以下のバージョンで動作確認しています。
* Burp suite v2023.9.2

## 注意事項
このツールは、私個人が勝手に開発したもので、PortSwigger社は一切関係ありません。本ツールを使用したことによる不具合等についてPortSwiggerに問い合わせないようお願いします。