有菊苣能帮忙 decode 一下加密内容嘛?

2016-01-28 10:40:41 +08:00
 batilo
https://gist.github.com/582033/bbb57123e9a209b932ae
4314 次点击
所在节点    PHP
15 条回复
zhangchunfei
2016-01-28 11:50:31 +08:00
啥叫菊苣?
xuboying
2016-01-28 12:16:45 +08:00
cooltechbs
2016-01-28 12:33:58 +08:00
菊苣就是巨巨,大大的升级版
moro
2016-01-28 12:35:10 +08:00
php 的一段,解出来是这样的
$global2['content']=substr(file_get_contents(__FILE__), 4415, 6148);
$global2['content']=base64_decode($global2['content']);
$global2['content']=gzuncompress($global2['content']);
return(eval($global2['content']));

substr 后面两个是写死的,更换文件路径后 gzuncompress 报错,应该是 substr 两个值不对。
moro
2016-01-28 12:36:28 +08:00
猜测至少还有别的程序处理这个文件。
necomancer
2016-01-28 12:47:15 +08:00
感觉像 base64 ,你 base64 -d 一下试试
batilo
2016-01-28 16:35:30 +08:00
@moro 好的, 感谢。 我们再看看
shuimugan
2016-01-28 18:15:44 +08:00
一个混淆过的 php 版 webshell,目测站点已被 getshell...
Sunyanzi
2016-01-29 00:26:16 +08:00
@shuimugan 这还真不是个 webshell ... 看似一个跟 wordpress 有关的授权文件 ...
vibbow
2016-01-29 01:26:57 +08:00
为什么我运行后直接提示语法错误...
vibbow
2016-01-29 01:52:26 +08:00
我知道了,源代码是有 unicode 的, LZ 是不是已经解密一遍了?
vibbow
2016-01-29 02:34:54 +08:00
看到了一个 register_sidebar
感觉真的是 wordpress 插件相关文件。
vibbow
2016-01-29 02:37:05 +08:00
目测 LZ 是想破解这个网站的主题了:
https://www.suxing.me/
vibbow
2016-01-29 02:44:55 +08:00
核心混淆算法就是这么一句话:
function dec($a, $b = '')
{
if (empty($a)) return '';
$a = base64_decode($a);

if ($b == '') return ~$a;
//if ($b = ='-1') // Do something weird

$length = strlen($a);
$b = str_pad($b, $length, $b);

return $b ^ $a;
}

文件最开始把代码里使用到的关键字,全部使用这个算法解密开。(包括函数名,变量值,常量值)
然后程序就可以正常运行了。

PHP 是可以使用 unicode 变量的,不过绝大多数 IDE 应该都不支持 unicode 的。
网上绝大多数 PHP 解混淆工具应该也不支持 unicode 的,所以就无法解开这个文件了。
文件实际混淆强度不大。
Roycom
2016-01-30 08:16:23 +08:00
mark 一下

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/253928

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX