처음 만나는 클라우드 보안

웹쉘(WebShell)기본개념 + 실습하기 본문

정보보안

웹쉘(WebShell)기본개념 + 실습하기

영민하게 2022. 5. 10. 20:11
반응형

웹쉘(WebShell)이란?

: 운영체제의 커널과 사용자를 이어주는 쉘(Shell)을 이용한 공격을 뜻한다. 주로 공격자가 악성 프로그램을 공격 대상 서버에 업로드를 성공하는 것으로 시작되며, 서버 스크립트 (ASP, PHP, JSP)등으로 만들어진다. 이를 통해 공격자는 원격으로 명령어를 보내 대상 PC를 조종할 수 있다.

참조) 악성코드는 더 큰 범주이며, 웹쉘은 그 중 하나의 악성코드에 속한다.

 

-XSS (Cross Site Scripting)

: 웹서버에 공격 스크립트를 업로드하여 방문(클라이언트) 브라우저를 공격하는 기법을 말한다. 스크립트의 노출을 막기위해 난독화가 이루어지며, 주로 랜섬웨어 유포에 활용된다.

 

-CSRF (Cross Site Request Forgery) [씨 써프]

: 사용자의 요청을 위조해서 서버에 요청을 보내는 기법(웹서버를 공격)  Ex) 자동으로 좋아요 눌러지기, 자동 댓글 달기, 회원 탈퇴 요청 보내기 등등

 

- 웹쉘의 침투

: 외부 네트워크의 취약점을 타고 서버 내부에 침투한다. 난독화로 변조된 웹쉘은 특정할 수 있는 패턴이 없기 때문에 방화벽에서 완벽한 선제 차단이 어려운 실정이다.

 


웹셀 공격 실습

웹쉘: http://192.168.5.132/uploadfile/browser.jsp

해당 jsp구문 body안에 <DIV style="position:absolute; left:200; top:90; Z-index:2;"> <img src="hack.jpg"></DIV>

삽입, 해커 이미지를 해당 경로에 위치시키고 브라우저에 접속한다.

 

웹쉘을 이용한 Deface 해킹실습

 

참고) https://www.zone-h.org/archive/special=1/page=1  Deface제보 사이트

 

초간단 웹쉘

http://192.168.5.132/cmdjsp.jsp

 

웹서버를 관리자 권한으로 실행했기 때문(Whoami를 해보면 system이라고 나온다.)

일반 사용자 계정을 만들어서 웹서버를 실행, 그 계정은 잠금(locking)으로 설정해야 함(로그인 방지)

 

 

 

 

PHP용 웹쉘

[php웹쉘다운] http://192.168.5.132/uploadfile/browser.jsp?sort=1&dir=C%3A%5CWebApps%5CJspSrc%5Cphp

# 현위치

100kb 이상의 파일 업로드하기?

|| 또는 OR이라는 듯

&& 그리고 AND라는 뜻

 

High버전에서 b374k 업로드하기

확장자가 jpg여야 하는 경우, php확장자명이 꼭 끝에 없어도 됨

윈도에 비해 리눅스와 유닉스에서는 확장자가 크게 중요하지 않음, 파일 시그니처가 더욱 중요함.

 

 

명령 실행 취약점 (Command Execution, Command Injection)

Ping 서비스에서 리눅스 명령어 입력하기

 

예상되는 내부 명령어 => $ ping –c3 ________

; : 이전 명령어 종류 이후 따라오는 명령어 실행하라.

=> 주로 이러한 명령 실행 추 약점은 IoT에서 자주 발생함, 대부분 운영체제는 리눅스다.

CCTV, 공유기공유기, SmartPhone, Smart TV, Setop box

시큐어코딩이 존재한다

 

방명록(Guestbook)에 스크립트를 저장하기 <script> alert(‘web hacking’)</script>

Low 그냥실행됨

Medium:

addslashes(): ‘, “, \, NULL의 앞에 \를 붙여서 Escape처리를 하는 함수

htmlspecialchars(): html태그로 바꾸어서 실행되지 않도록 함 : Crossside scripting에 대해선 강력한 보안을 띔

ð  < &lt, >&gt, &&emp; ‘&apos; “&quote 

 

 

 

본 게시물은 학습기록을 위한 포스팅입니다. 악의적인 목적으로 이용 시 발생할 수 있는 모든 법적 책임은 자신에게 있습니다.

반응형
Comments