搜索
查看: 29808|回复: 11

[网站] 微盾php加密专家(phpcodelock)破解解密方法

[复制链接]
发表于 2014-7-15 17:15:34 | 显示全部楼层 |阅读模式
今天碰到一个网站的源码用的是以下的加密方式,看起来很乱但又有一定的规律,找了下破解方式" w5 R7 N4 @- r3 ?
文件加密方式,变量混淆+字符串加密7 g# B" i, f4 w+ f- ~
  文件原始内容 :
2 }  |4 e8 J. t5 g  $OOO0O0O00=__FILE__;( s" l5 X8 N/ A8 J
  $OOO000000=urldecode('%74%68%36%73%62%65%68%71%6c%61%34%63%6f%5f%73%61%64%66%70%6e%72');
5 h+ P& L* f# Q  O0 z  $OO00O0000=164;! u& A% y3 ?8 A$ x2 Y2 F2 g
  $OOO0000O0=$OOO000000{4}.$OOO000000{9}.$OOO000000{3}.$OOO000000{5};! O' X& P5 z6 O
  $OOO0000O0.=$OOO000000{2}.$OOO000000{10}.$OOO000000{13}.$OOO000000{16};* l2 g3 ~; A6 u4 F2 X# G  u/ F+ Z
  $OOO0000O0.=$OOO0000O0{3}.$OOO000000{11}.$OOO000000{12}.$OOO0000O0{7}.$OOO000000{5};+ Q1 ?/ Z, Z( o: V8 f+ z! L1 l
  $O0O0000O0='OOO0000O0';7 T" R  O: k7 H  ?/ u3 B2 c
  eval(($$O0O0000O0('JE9PME9PMDAwMD0kT09PMDAE3fS4kT09PMDAwAwezEyfS4kT09PMDAwMDAwezE4fS4kT09PMDAwMDAwezV9LiRPT08wMDAwMDB7MTl9O2lmKCEwKSRPMDAwTzBPMDA9JE9PME9PMDAwMCgkT09PME8wTzAwLCdyYicpOyRPTzBPTzAwME89JE9PTzAwMDAwMHsxN30uJE9PTzAwMDAwMHsyMH0uJE9PTzAwMDAwMHs1fS4kT09PMDAwMDAwezl9LiRPT08wMDAwMDB7MTZ9OyRPTzBPTzAwTzA9JE9PTzAwMDAwMHsxNH0uJE9PTzAwMDAwMHswfS4kT09PMDAwMDAwezIwfS4kT09PMDAwMDAwezB9LiRPT08wMDAwMDB7MjB9OyRPTzBPTzAwME8oJE8wMDBPME8wMCwxMjYxKTskT08wME8wME8wPSgkT09PMDAwME8wKCRPTzBPTzAwTzAoJE9PME9PMDAwTygkTzAwME8wTzAwLDcwMCksJ0VudGVyeW91d2toUkhZS05XT1VUQWFCYkNjRGRGZkdnSWlKakxsTW1QcFFxU3NWdlh4WnowMTIzNDU2Nzg5Ky89JywnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLycpKSk7ZXZhbCgkT08wME8wME8wKTs=')));
; E4 F3 o  W( B' ]+ l% l  return;?>
2 b# v: [+ B2 i  K* _8 w  这是一段php代码,后面跟了一串加密过的字符串。
3 x7 ^8 g( w  n0 ]* B' C  很显然,开头的这几行代码是执行解密的,或者是解密的前秦工作。& i' a) R" G2 e7 W) {
  进行分析:6 C1 N1 K- o/ w8 F2 t4 I
  $OOO0O0O00=__FILE__;//本文件路径和文件名
4 ^1 w/ W" B) _9 |% A  //字符串用于下面构造新的字符串
) F& V& f$ c( m" i' L  $OOO000000=urldecode('%74%68%36%73%62%65%68%71%6c%61%34%63%6f%5f%73%61%64%66%70%6e%72');$ H5 {+ F! U' N! E3 q) t
  //下面几行构造字符串base64_decode
6 Q4 Q" z4 m/ v/ O  n  s- ]  $OOO0000O0=$OOO000000{4}.$OOO000000{9}.$OOO000000{3}.$OOO000000{5};
0 i$ f: h9 J  Z- A  $OOO0000O0.=$OOO000000{2}.$OOO000000{10}.$OOO000000{13}.$OOO000000{16};6 ^+ W# X, m1 S
  $OOO0000O0.=$OOO0000O0{3}.$OOO000000{11}.$OOO000000{12}.$OOO0000O0{7}.$OOO000000{5};
3 A' M# |! r( f, K8 ]; X% R  //下面通过base64 decode生成一段读取自身文件的代码,先读取了若干字节,丢弃了,分析可能是头部执行初步解密的PHP代码,接着又读取700字节,进行字符串变换 base64_decode之后,得到一段继续读取文件解密的代码,经分析发现,第二次读取的700 字节中包含一版权声明的代码。第三次读取文件后经过解密,得到了原始代码 。解密过程分析完毕,下面开始写破解算法,' N  W, q8 y) K  W7 S0 A
  function crack($src, $dst) {
- U  O: G5 h8 j) P% I$ g  $content = file_get_contents($src);) @7 j. d) W* Q' a* ]. i/ }8 i
  $pos = strpos($content, '?>');
* M& j, w2 p# Q, Y( a6 P) V2 q  //删除读取文件的代码, U) g/ v( }6 [& b
  $code = substr($content, $pos + 3);) q: W) @6 P6 X( {
  //删除解码代码* H% E$ d5 _8 e- n: [4 a, i
  $code = substr($code, 700);
# n! J& v  g5 x  //解码目标代码5 H- M7 m, \4 `4 u& [- i
  $cracked = base64_decode(strtr($code, 'EnteryouwkhRHYKNWOUTAaBbCcDdFfGgPpQqSsVvXxZz0123456789+/=', 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklvwxyz0123456789+/'));8 }5 h8 k4 J8 K  x
  //写入目标文件
* a/ ]; P1 Q6 ^9 j. q  file_put_contents($dst, "<?php " . $cracked . " ?>");3 q9 n( @1 \, M6 O" i
  log_info("解码文件:$src 至 $dst 完成");0 v; U/ A" P; e' N7 l5 ^
  }
- M  F7 S* Q% Q. x  使用该函数对加密的文件进行解密,打开解密的文件 ,格式化代码,原始代码完善呈现!0 }8 U, e. \4 ^
在线解密工具:http://www.niusoso.net/vidun-decode.php
' O/ ~, @4 w7 |5 e0 f* m4 e7 @$ g3 I* p6 _5 B
/ g* ^  A( n8 ]3 c# }9 W
回复

使用道具 举报

发表于 2016-11-11 11:10:34 | 显示全部楼层
大家有什么好看法,赶快说说
$ `2 [) f8 u% ~0 p% @" ^3 ~# G" t
& M; K' T+ ~' N

' R" N+ J; v* i/ M8 P+ c! \7 |+ b7 X2 t) k0 q& U

) n% M) e+ T' z
- u2 x% l, a  i# ?* X1 T& N+ V6 {' f( {4 a  }* ]
& U& P2 y; E3 A

) ?* k, R  N7 k& {3 y& n
" {% g9 I# r1 @, E0 C% I+ o& k1 L/ h* g: ?; f
7 E. _) O1 b! c7 Q
                               
登录/注册后可看大图
' s1 D/ q* r+ y- g
父亲和妈妈最喜欢的电影网
发表于 2017-2-16 08:42:14 | 显示全部楼层
大家有什么好看法,赶快说说
您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

热议作品
精华帖子排行
精彩推荐

虾皮社区,成立十年了!

站长自己也搞不懂想做个什么,反正就是一直在努力的做!

Copyright © 2007-2019 xp6.org Powered by Discuz

QQ|Archiver|手机版|小黑屋|虾皮社区 鲁公网安备 37021102000261号 |网站地图
返回顶部 返回列表