JJANG-JOON
article thumbnail
Published 2023. 9. 14. 13:47
[Attack] Web shell? 웹 쉘 ? Attack
반응형

 

 

 

 

 

 

 

 

 

 

 

 

"쉘(Shell)"은 컴퓨터 운영 체제에서 사용자와 운영 체제 커널 또는 하드웨어 간의 인터페이스 역할을 하는 프로그램 또는 환경을 가리키며 쉘은 사용자가 운영 체제 기능을 조작하고 명령을 실행하며 파일 및 프로세스 관리와 같은 작업을 수행할 수 있도록 하는 명령 줄 인터페이스 또는 그래픽 사용자 인터페이스를 제공한다.

 

 

 

 

 

 

 

 

 

 

 

 

웹 쉘

 

 

 

 

 

 

웹 쉘이란 웹 서버에 원격으로 액세스하여 명령을 실행하고 시스템에 대한 제어를 획득할 수 있는 웹 기반 쉘이다. 웹 쉘을 사용하는 공격자는 웹 서버에 액세스 권한이 있는 경우 해당 서버에서 다양한 명령을 실행하고 시스템을 조작할 수 있다. 

웹을 통해 시스템 명령어를 실행하기에 서버사이드 스크립트 언어와 함께 작성된다.

 

 

 

 

 

 

 

 

 

 

예시 코드

 

 

<?php
if(isset($_REQUEST['cmd'])){
   $cmd = ($_REQUEST['cmd']);
   system($cmd);
}
?>

 

이 코드 예제는 PHP로 작성된 웹 쉘의 간단한 버전이다.

공격자는 웹 페이지의 입력 필드나 URL 매개 변수를 통해 "cmd"라는 매개 변수를 제출하여 시스템 명령을 실행할 수 있으며 이것은 웹 쉘이 설치된 경우 시스템에서 악의적인 명령을 실행할 수 있는 위험한 상황을 만든다.

웹 쉘은 보안에 취약한 웹 애플리케이션을 통해 액세스되기 때문에 웹 개발자와 시스템 관리자는 웹 애플리케이션을 보호하고 취약점을 해결하는 데 주의를 기울여야 한다.

 

 

이러한 공격을 방지하기 위한 조치로 입력 검증, 웹 애플리케이션 방화벽, 보안 패치 및 보안 업데이트 등이 있습니다.

 

+

추가 대응방안

(화이트 리스트 방식 확장자 검증,, magic number 확인 , 업로드 디렉터리 분리, content-type 검증, 파일명 암호화(파일명은 DB에 저장), 업로드 경로 미노출, 디렉터리 내 실행권한 설정)

 

 

 

 

 

 

 

 

 

 

 


 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

반응형
profile

JJANG-JOON

@JJANG-JOON

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!

profile on loading

Loading...