Skip to content

Commit

Permalink
エンコード種類指定対応
Browse files Browse the repository at this point in the history
  • Loading branch information
isayan committed Jul 20, 2024
1 parent 8717f26 commit 5cbcecf
Show file tree
Hide file tree
Showing 11 changed files with 316 additions and 64 deletions.
24 changes: 22 additions & 2 deletions help/help-ja.html
Original file line number Diff line number Diff line change
Expand Up @@ -2047,6 +2047,10 @@ <h5 id="_hashchecksum">Hash/Checksum</h5>
<dd>
<p>md2によるハッシュを計算します。</p>
</dd>
<dt class="hdlist1">md4</dt>
<dd>
<p>md4によるハッシュを計算します。</p>
</dd>
<dt class="hdlist1">md5</dt>
<dd>
<p>md5によるハッシュを計算します。</p>
Expand Down Expand Up @@ -2257,7 +2261,23 @@ <h5 id="_hashchecksum">Hash/Checksum</h5>
</dd>
<dt class="hdlist1">SM3</dt>
<dd>
<p>SM3Lによるハッシュを計算します。</p>
<p>SM3によるハッシュを計算します。</p>
</dd>
<dt class="hdlist1">PARALLEL128-256</dt>
<dd>
<p>PARALLELHASH128-256によるハッシュを計算します。</p>
</dd>
<dt class="hdlist1">PARALLEL256-512</dt>
<dd>
<p>PARALLELHASH256-512によるハッシュを計算します。</p>
</dd>
<dt class="hdlist1">TUPLE128-256</dt>
<dd>
<p>TUPLEHASH128-256によるハッシュを計算します。</p>
</dd>
<dt class="hdlist1">TUPLE256-512</dt>
<dd>
<p>TUPLEHASH256-512によるハッシュを計算します。</p>
</dd>
<dt class="hdlist1">CRC32</dt>
<dd>
Expand Down Expand Up @@ -2772,7 +2792,7 @@ <h3 id="_version">3.11. Version</h3>
<div id="footer">
<div id="footer-text">
Version unspecified<br>
Last updated 2024-07-10 20:23:42 +0900
Last updated 2024-07-19 21:38:54 +0900
</div>
</div>
</body>
Expand Down
24 changes: 22 additions & 2 deletions help/help.html
Original file line number Diff line number Diff line change
Expand Up @@ -2070,6 +2070,10 @@ <h5 id="_hashchecksum">Hash/Checksum</h5>
<dd>
<p>Calculate hash with md2</p>
</dd>
<dt class="hdlist1">md4</dt>
<dd>
<p>Calculate hash with md4</p>
</dd>
<dt class="hdlist1">md5</dt>
<dd>
<p>Calculate hash with md5</p>
Expand Down Expand Up @@ -2270,6 +2274,22 @@ <h5 id="_hashchecksum">Hash/Checksum</h5>
<dd>
<p>Calculate hash with Tiger</p>
</dd>
<dt class="hdlist1">PARALLEL128-256</dt>
<dd>
<p>Calculate hash with PARALLELHASH128-256</p>
</dd>
<dt class="hdlist1">PARALLEL256-512</dt>
<dd>
<p>Calculate hash with PARALLELHASH256-512</p>
</dd>
<dt class="hdlist1">TUPLE128-256</dt>
<dd>
<p>Calculate hash with TUPLEHASH128-256</p>
</dd>
<dt class="hdlist1">TUPLE256-512</dt>
<dd>
<p>Calculate hash with TUPLEHASH256-512</p>
</dd>
<dt class="hdlist1">GOST3411</dt>
<dd>
<p>Calculate hash with GOST3411</p>
Expand All @@ -2280,7 +2300,7 @@ <h5 id="_hashchecksum">Hash/Checksum</h5>
</dd>
<dt class="hdlist1">SM3</dt>
<dd>
<p>SM3Lによるハッシュを計算します。</p>
<p>Calculate hash with SM3</p>
</dd>
<dt class="hdlist1">CRC32</dt>
<dd>
Expand Down Expand Up @@ -2804,7 +2824,7 @@ <h3 id="_version">3.11. Version</h3>
<div id="footer">
<div id="footer-text">
Version unspecified<br>
Last updated 2024-07-10 20:31:16 +0900
Last updated 2024-07-19 21:39:19 +0900
</div>
</div>
</body>
Expand Down
Binary file modified help/images/custom_jtranscoder.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified release/YaguraExtension-v3.1.jar
Binary file not shown.
Binary file modified src/main/help/images/custom_jtranscoder.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
195 changes: 154 additions & 41 deletions src/main/java/burp/BurpExtension.java

Large diffs are not rendered by default.

17 changes: 13 additions & 4 deletions src/main/java/extend/util/external/TransUtil.java
Original file line number Diff line number Diff line change
Expand Up @@ -74,11 +74,22 @@ public static ChronoUnit toChronoUnit(DateUnit unit) {
}

public enum EncodeType {
ALL, ALPHANUM, STANDARD, LIGHT, BURP_LIKE, JAVA_SCRIPT
ALL("All"), ALPHANUM("Alphanum"), STANDARD("Standard"), LIGHT("Light"), BURP_LIKE("BurpLike");

private final String ident;

EncodeType(final String ident) {
this.ident = ident;
}

public String toIdent() {
return this.ident;
}

};

public enum ConvertCase {
UPPER, LOWLER
UPPER, LOWLER;
};

public static Pattern getEncodeTypePattern(EncodeType type) {
Expand All @@ -93,8 +104,6 @@ public static Pattern getEncodeTypePattern(EncodeType type) {
return SmartCodec.ENCODE_PATTERN_LIGHT;
case BURP_LIKE:
return SmartCodec.ENCODE_PATTERN_BURP;
case JAVA_SCRIPT:
return SmartCodec.ENCODE_PATTERN_JS;
default:
break;
}
Expand Down
28 changes: 19 additions & 9 deletions src/main/java/yagura/model/OptionProperty.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,21 +23,26 @@ public Map<String, String> loadConfigSetting() {
return this.config;
}

/**
* implements YaguraProperty
*/
@Expose
private final YaguraProperty yaguraProperty = new YaguraProperty();

public YaguraProperty getYaguraProperty() {
return this.yaguraProperty;
}

public void setYaguraProperty(YaguraProperty yaguraProperty) {
this.yaguraProperty.setProperty(yaguraProperty);
}

/**
* implements UniversalViewProperty
*/
@Expose
private final UniversalViewProperty universalViewProperty = new UniversalViewProperty();

public void defaultSettingProperty() {
Map<String, String> map = loadConfigSetting();
String value = map.get(UniversalViewProperty.CJK_VIEW_PROPERTY);
if (value == null) {
value = this.universalViewProperty.defaultSetting();
this.universalViewProperty.saveSetting(value);
}
}

public UniversalViewProperty getEncodingProperty() {
return this.universalViewProperty;
}
Expand Down Expand Up @@ -176,6 +181,7 @@ public void setDebugMode(boolean debugMode) {
* @return
*/
public Map<String, String> getProperty() {
this.config.put(this.yaguraProperty.getSettingName(), this.yaguraProperty.loadSetting());
this.config.put(this.universalViewProperty.getSettingName(), this.universalViewProperty.loadSetting());
this.config.put(this.matchReplaceProperty.getSettingName(), this.matchReplaceProperty.loadSetting());
this.config.put(this.matchAlertProperty.getSettingName(), this.matchAlertProperty.loadSetting());
Expand All @@ -189,6 +195,10 @@ public Map<String, String> getProperty() {
}

public void setProperty(Map<String, String> config) {
String configYaguraProperty = config.get(this.yaguraProperty.getSettingName());
if (configYaguraProperty != null) {
this.yaguraProperty.saveSetting(configYaguraProperty);
}
String configUniversalViewProperty = config.get(this.universalViewProperty.getSettingName());
if (configUniversalViewProperty != null) {
this.universalViewProperty.saveSetting(configUniversalViewProperty);
Expand Down
78 changes: 78 additions & 0 deletions src/main/java/yagura/model/YaguraProperty.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
package yagura.model;

import com.google.gson.annotations.Expose;
import extend.util.external.TransUtil;
import extension.burp.IPropertyConfig;
import extension.helpers.json.JsonUtil;
import java.nio.charset.StandardCharsets;

/**
*
* @author isayan
*/
public class YaguraProperty implements IPropertyConfig {

public final static String YAGURA_PROPERTY = "YaguraProperty";

@Expose
private String selectEncoding = StandardCharsets.UTF_8.name();

/**
* @return the selectEncoding
*/
public String getSelectEncoding() {
return selectEncoding;
}

/**
* @param selectEncoding the selectEncoding to set
*/
public void setSelectEncoding(String selectEncoding) {
this.selectEncoding = selectEncoding;
}

@Expose
private TransUtil.EncodeType encodeType = TransUtil.EncodeType.ALL;

/**
* @return the encodeType
*/
public TransUtil.EncodeType getEncodeType() {
return encodeType;
}

/**
* @param encodeType the encodeType to set
*/
public void setEncodeType(TransUtil.EncodeType encodeType) {
this.encodeType = encodeType;
}

public void setProperty(YaguraProperty property) {
this.setSelectEncoding(property.getSelectEncoding());
this.setEncodeType(property.getEncodeType());
}

@Override
public String getSettingName() {
return YAGURA_PROPERTY;
}

@Override
public void saveSetting(String value) {
YaguraProperty property = JsonUtil.jsonFromString(value, YaguraProperty.class, true);
this.setProperty(property);
}

@Override
public String loadSetting() {
return JsonUtil.jsonToString(this, true);
}

@Override
public String defaultSetting() {
YaguraProperty property = new YaguraProperty();
return JsonUtil.jsonToString(property, true);
}

}
7 changes: 4 additions & 3 deletions src/main/java/yagura/view/JTransCoderTab.form
Original file line number Diff line number Diff line change
Expand Up @@ -479,7 +479,6 @@
<Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
<ComponentRef name="btnGrpEncodeType"/>
</Property>
<Property name="selected" type="boolean" value="true"/>
<Property name="text" type="java.lang.String" value="All"/>
</Properties>
<Events>
Expand All @@ -491,7 +490,9 @@
<Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
<ComponentRef name="btnGrpEncodeType"/>
</Property>
<Property name="text" type="java.lang.String" value="[^A-Za-z0-9]"/>
<Property name="selected" type="boolean" value="true"/>
<Property name="text" type="java.lang.String" value="Alphanum"/>
<Property name="toolTipText" type="java.lang.String" value="[^A-Za-z0-9]"/>
</Properties>
<Events>
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="rdoAlphaNumActionPerformed"/>
Expand All @@ -502,7 +503,7 @@
<Property name="buttonGroup" type="javax.swing.ButtonGroup" editor="org.netbeans.modules.form.RADComponent$ButtonGroupPropertyEditor">
<ComponentRef name="btnGrpEncodeType"/>
</Property>
<Property name="text" type="java.lang.String" value="Burp"/>
<Property name="text" type="java.lang.String" value="BurpLike"/>
<Property name="toolTipText" type="java.lang.String" value="[^A-Za-z0-9!\u005c&quot;$&apos;()*,/:&lt;&gt;@\u005c[\u005c\u005c\u005c]^`{|},.~-]" containsInvalidXMLChars="true"/>
</Properties>
<Events>
Expand Down
7 changes: 4 additions & 3 deletions src/main/java/yagura/view/JTransCoderTab.java
Original file line number Diff line number Diff line change
Expand Up @@ -913,7 +913,6 @@ public void actionPerformed(java.awt.event.ActionEvent evt) {
pnlEncode.setLayout(new java.awt.GridLayout(5, 0));

btnGrpEncodeType.add(rdoAll);
rdoAll.setSelected(true);
rdoAll.setText("All");
rdoAll.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
Expand All @@ -923,7 +922,9 @@ public void actionPerformed(java.awt.event.ActionEvent evt) {
pnlEncode.add(rdoAll);

btnGrpEncodeType.add(rdoAlphaNum);
rdoAlphaNum.setText("[^A-Za-z0-9]");
rdoAlphaNum.setSelected(true);
rdoAlphaNum.setText("Alphanum");
rdoAlphaNum.setToolTipText("[^A-Za-z0-9]");
rdoAlphaNum.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
rdoAlphaNumActionPerformed(evt);
Expand All @@ -932,7 +933,7 @@ public void actionPerformed(java.awt.event.ActionEvent evt) {
pnlEncode.add(rdoAlphaNum);

btnGrpEncodeType.add(rdoURLSafe);
rdoURLSafe.setText("Burp");
rdoURLSafe.setText("BurpLike");
rdoURLSafe.setToolTipText("[^A-Za-z0-9!\\\"$'()*,/:<>@\\[\\\\\\]^`{|},.~-]");
rdoURLSafe.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
Expand Down

0 comments on commit 5cbcecf

Please sign in to comment.