大商创去后门eval-stdin.php,大商创的开源代码都有哪些后门,如何去除大商创后门...
大商创的开源代码中有很多后门,以方便官方监控系统的使用,官方做的真是无孔不入啊,我找到了下面几种。
1、数据库表dsc_shop_config 中,code值为certi的记录。我们发现这就是大商创的后门地址了,那我们去代码中看看,大商创是怎么利用的这个地址的吧,我们全局搜索一下。
搜索关键词:write_static_cache('seller_goods_str', $httpData);
搜索结果:$httpData = array('domain' => $ecs->get_domain(), 'url' => urldecode($shop_url), 'shop_name' => $_CFG['shop_name'], 'shop_title' => $_CFG['shop_title'], 'shop_desc' => $_CFG['shop_desc'], 'shop_keywords' => $_CFG['shop_keywords'], 'country' => $shop_country, 'province' => $shop_province, 'city' => $shop_city, 'address' => $shop_address, 'qq' => $qq, 'ww' => $ww, 'ym' => $service_phone, 'msn' => $_CFG['msn'], 'email' => $service_email, 'phone' => $_CFG['sms_shop_mobile'], 'icp' => $_CFG['icp_number'], 'version' => VERSION, 'release' => RELEASE, 'language' => $_CFG['lang'], 'php_ver' => PHP_VERSION, 'mysql_ver' => $db->version(), 'charset' => EC_CHARSET);
$Http = new Http();
$Http->doPost($_CFG['certi'], $httpData);
write_static_cache('seller_goods_str', $httpData);
好吧,我们可以搜索出N条这样的记录。官方基本上拿到了我们系统的所有信息了,我们把$Http = new Http();$Http->doPost($_CFG['certi'], $httpData);这段代码去掉,那么请求就失效了吧,但是!!!
2、既然certi是官方的地址,那么我们把它改了不更好吗,好了我们把修改成一个无关紧要的地址。但是刷新后,我们发现地址居然又变回之前的地址了。好吧,我们认为代码中应该是更新了这条记录。我们开始全局搜索吧。
搜索词为:http://ecshop.ecmoban.com/dsc.php;
搜索结果:$certi_url = 'http://ecshop.ecmoban.com/dsc.php';
if (empty($arr['certi']) || $arr['certi'] != $certi_url) {
$sql = 'UPDATE ' . $GLOBALS['ecs']->table('shop_config') . (' SET value = \'' . $certi_url . '\' WHERE code = \'certi\'');
$row = $GLOBALS['db']->query($sql);
}
----------------------------------------------------------------------------------------------------------------
$certi_url = $GLOBALS['db']->getOne('SELECT value FROM ' . $GLOBALS['ecs']->table('shop_config') . ' WHERE code = \'certi\'');
$certi_size = 'http://ecshop.ecmoban.com/dsc.php';
if (empty($certi_url) || $certi_url != $certi_size) {
$sql = 'UPDATE ' . $GLOBALS['ecs']->table('shop_config') . (' SET value = \'' . $certi_size . '\' WHERE code = \'certi\'');
$row = $GLOBALS['db']->query($sql);
}
我这里搜到了两处,这不就是直接更新了certi这条记录了嘛,我们把它去掉。
3、既然certi这个地址是官方的授权信息,那我们是不是可以直接去掉呢,好!我们去掉他吧!但是这样官方也是有办法的,这个后门做的,很不好找到的。
搜素关键词:cat_goods_config 或者 aHR0cDovL2Vjc2hvcC5lY21vYmFuLmNvbS9kc2MucGhw
搜素结果:
$cer_url = $GLOBALS['db']->getOne('SELECT value FROM ' . $GLOBALS['ecs']->table('shop_config') . ' WHERE code = \'certi\'');
$post_type = 0;
if (strpos($section, $cp_str) !== false) {
$post_type = 1;
}
if (empty($cer_url) && $post_type != 1) {
$post_type = 2;
}
if (empty($cer_url)) {
if (file_exists(ROOT_PATH . 'temp/static_caches/cat_goods_config.php')) {
require ROOT_PATH . 'temp/static_caches/cat_goods_config.php';
}
else {
$shop_url = urlencode($GLOBALS['ecs']->url());
$shop_country = $GLOBALS['db']->getOne('SELECT region_name FROM ' . $GLOBALS['ecs']->table('region') . ' WHERE region_id=\'' . $GLOBALS['_CFG']['shop_country'] . '\'');
$shop_province = $GLOBALS['db']->getOne('SELECT region_name FROM ' . $GLOBALS['ecs']->table('region') . ' WHERE region_id=\'' . $GLOBALS['_CFG']['shop_province'] . '\'');
$shop_city = $GLOBALS['db']->getOne('SELECT region_name FROM ' . $GLOBALS['ecs']->table('region') . ' WHERE region_id=\'' . $GLOBALS['_CFG']['shop_city'] . '\'');
$url_data = array('domain' => $GLOBALS['ecs']->get_domain(), 'url' => urldecode($shop_url), 'shop_name' => $GLOBALS['_CFG']['shop_name'], 'shop_title' => $GLOBALS['_CFG']['shop_title'], 'shop_desc' => $GLOBALS['_CFG']['shop_desc'], 'shop_keywords' => $GLOBALS['_CFG']['shop_keywords'], 'country' => $shop_country, 'province' => $shop_province, 'city' => $shop_city, 'address' => $GLOBALS['_CFG']['shop_address'], 'qq' => $GLOBALS['_CFG']['qq'], 'ww' => $GLOBALS['_CFG']['ww'], 'ym' => $GLOBALS['_CFG']['service_phone'], 'msn' => $GLOBALS['_CFG']['msn'], 'email' => $GLOBALS['_CFG']['service_email'], 'phone' => $GLOBALS['_CFG']['sms_shop_mobile'], 'icp' => $GLOBALS['_CFG']['icp_number'], 'version' => VERSION, 'release' => RELEASE, 'language' => $GLOBALS['_CFG']['lang'], 'php_ver' => PHP_VERSION, 'mysql_ver' => $GLOBALS['db']->version(), 'charset' => EC_CHARSET, 'post_type' => $post_type);
$cp_url_size = 'base64_decode(\'aHR0cDovL2Vjc2hvcC5lY21vYmFuLmNvbS9kc2MucGhw\')';
$cp_url_size = '$url_http = ' . $cp_url_size . ";\r\n";
$cp_url = $cp_url_size;
$cp_url .= '$purl_http = new Http();' . "\r\n";
$cp_url .= '$purl_http->doPost($url_http, $url_data);';
write_static_cache('cat_goods_config', $cp_url, '/temp/static_caches/', 1, $url_data);
}
}
代码分析:代码最终会生成一个缓存文件,下次请求就直接加载文件了,但是我们发现,这个缓存文件内容就是请求官方地址的,官方将地址base64加密了,aHR0cDovL2Vjc2hvcC5lY21vYmFuLmNvbS9kc2MucGhw,这个就地址的加密后的串,你可以解开看下,就是certi的值啊,就算数据库里没有,我代码中还有加密的呢。(官方好手段!!!!!)那么,我们将这段代码整体删除吧。
4、搜索关键词:http://cloud.ecmoban.com/api.php
搜素结果:$apiget = 'act=ent_sign&ent_id= ' . $ent_id . ' & certificate_id=' . $certificate_id;
$t->request('http://cloud.ecmoban.com/api.php', $apiget);
虽然不知道这块具体的逻辑,但是请求官方地址,那么我们也要拿掉。
大商创去后门eval-stdin.php,大商创的开源代码都有哪些后门,如何去除大商创后门...相关推荐
- 跨境电商自建站后台系统原型rp_外贸业务员和跨境电商运营哪个好,跨境电商可以去哪个网站学...
我做跨境电商也有六年的时间了,在电商这个行业也有自己的一些经验.经验也许没有其他大卖家丰富,但会将我知道的都进行分享.如果有不懂得亚马逊问题可以+我(V:543482465).我这里给大家安排一堂直播 ...
- 软件测试人员找工作,去大公司还是去小公司?今天就和大家唠唠
马云曾经说过,员工离开一个公司无非就两种原因,一个是钱给少了,一个是干的不开心.我觉得非常符合现在IT从业者离开一个公司的心里想法,很多时候我们IT从业者找工作都会给自己定一个目标,比如有的人觉得找 ...
- 刚毕业的大学习,去大数据机构培训,工作好找吗?
大数据开发工程师在一线城市和大数据发展城市的薪资是比较高的,刚毕业的大学习,去大数据机构培训,工作好找吗? 因为我接触到的学生毕业后一般在北京.广东.上海.南京地区就业的居多,所以可能我的概括也有局限 ...
- 渭南师范计算机学院男女比例,全国高校男女比例大揭秘!去这些大学怕是要单身四年了...
原标题:全国高校男女比例大揭秘!去这些大学怕是要单身四年了 希望每天收到我们的文章吗,点上面蓝色文字"语文日刊"关注就可以. 更多初中内容,请关注:初中试题库大(stkuda) 给 ...
- IT人的纠结:去大公司还是去小公司?
对于 IT 人来说,选择到大公司工作的理由可能有:觉得"钱多人傻,干嘛不去?";有人认为 "机会多,有发展"; 也有人被小公司的眉毛胡子一把抓吓怕了. 去大公司 ...
- IT 人的纠结:去大公司还是去小公司?
对于 IT 人来说,选择到大公司工作的理由可能有:觉得"钱多人傻,干嘛不去?";有人认为 "机会多,有发展"; 也有人被小公司的眉毛胡子一把抓吓怕了. 去大公司 ...
- python练习 世界这么大,我想去看看
代码如下: str1=input("请输入一个人的名字:") str2=input("请输入一个国家的名字:") print("世界这么大,{}想去{ ...
- [转] 去大公司还是去小公司?做专业性的工作,还是做销售?
首先要澄清一个流毒广泛的说法:大学毕业第一份工作不重要. 这绝对是极其错误的.它给了大学毕业生一个错误的认识,对相当一部分人造成了无可挽回的损失!大学生就业选择,是对一个人十年内的生活产生重大影响的关 ...
- 大学生应不应该大二就去实习, 大学应该去干些什么, 怎么知道自己是否适合竞赛
目录 谈谈我自己的经历 应不应该大二那么早实习 适合的 不适合的 自己适合竞赛吗? 竞赛可以给自己带来什么? 服务器开发方向要学什么,几乎所有C/C++后端开发方向都必须学什么? 几乎所有C/C++后 ...
最新文章
- 5月第3周业务风控关注 |网信办公布整治教育类应用的成果 关闭“作业狗”等20余款应用...
- JBPM对象主键生成机制
- 是什么使你留在你的公司
- mysql jdbc路径,mysql转存数据库后,如何修改jdbc:mysql的路径
- C语言中 if 和 else if 的区别
- 为什么比尔盖茨,马斯克、霍金都提醒你:要警惕人工智能?(上)
- tensorflow教程 开始——数据集:快速了解 tf.data
- [C++调试笔记]/* 求解-0.5dt时刻速度 */
- hive.ql.exec.DDLTask. MetaException(message:java.io.IOException: Attempt to start meta tracker faile
- 在oracle中通过connect by prior来实现递归查询!
- 华为交换机 查看IP和MAC对应关系
- Github博客地址
- UpdatePanel 的 UpdateMode 和 ChildrenAsTriggers(较好的总结了前面几篇博客的内容)
- 软件工程 speedsnail 第二次冲刺1次
- mysql创建学生信息选课系统_MySQL学生信息管理系统
- 有向图的拓补排序算法
- 计算机如何引用表格,(Excel如何实现跨文件表引用数据)excel引用其他表格数据路径...
- MySQL 数据库和MySQL核心知识总结宝典
- linux ps aux tty,linux ps命令中的tty表示什么意思?
- win10批量修改文件扩展名
热门文章
- 【PAT乙级】1044 火星数字 (20 分)
- 一个判断字符是不是10进制数的函数------isdigit()
- Freemarker静态化ActiveMQ实现
- ActiveMQ中Queue生产者
- nmon结果分析工具_Nmon实时监控并生成HTML监控报告
- 基于python的视频监控系统_Python远程视频监控程序的实例代码
- 【程序人生】这一年 —— 2020
- Spring Boot + EasyExcel 导入导出,好用到爆!
- 认真看看, 以后写 SQL 就爽多了:MyBatis 动态 SQL
- SpringBoot+MyBatis+Shiro 搭建杂谈