
웹셸(web shell)은 웹(web)과 셸(shell)의 합성어로 ‘웹(web)’은 일반적인 웹페이지(web page)를, ‘셸(shell)’은 운영체제상에서 다양한 운영체제의 기능과 서비스를 구현하고 제공하는 프로그램을 의미한다. 웹셸은 웹서버를 장악하기 위해 업로드 취약점을 파고들어 관리자 권한을 획득함으로써 원격으로 시스템에 명령을 내릴 수 있는 악성코드를 말한다.
웹셸, 업로드 취약점 악용해 원격으로 시스템 조종
웹셸은 ASP, JSP, PHP 등 간단한 서버 스크립트를 통해 만들어지는 작은 악성코드의 조각이다. 스크립트들은 웹서버의 취약점을 통해 업로드된다. 웹셸 설치 시 해커들은 보안 시스템을 피해 별도의 인증 없이 쉽게 시스템에 접속 가능하다. 공격자는 다양한 웹셸 기능을 통해 해당 서버의 제어권을 장악하고 정보 탈취, 위변조, 악성 스크립트 삽입 등 각종 악성행위를 수행한다. 이를 통해 해커는 서버의 정상적인 서비스를 방해하고, 기밀정보 취득, 유출 데이터를 이용한 피싱 범죄는 물론 인접한 타 시스템도 공격할 수 있다.웹셸이 사용자의 컴퓨터에 설치되면 공격자는 원격으로 명령을 실행해 데이터를 훔치거나 자격증명 도용, 키보드 조작을 통한 사용자 정보 탈취 등 다양한 악의적인 행위를 위한 시발점의 역할이 가능하다.
공격 방식에 따라 세 가지 유형으로 구분
웹셸 공격의 유형은 △바인드 셸(Bind Shell) △리버스 셸(Reverse Shell) △더블 리버스 셸(Double Reverse Shell) 등 3가지로 나뉜다고 긱스포긱스(geeksforgeeks)는 설명했다.웹셸을 서버에 올리는 방법은 파일 업로드 창을 이용하는 확장자 우회 방법과 파일 업로드 기능을 이용하지 않고 서버에 웹셸을 생성하는 취약점 방식 등 두 가지로 나눌 수 있다. 확장자 우회는 파일 확장자 우회로 △서버(Server Side Script) 우회 △CSS(Client Side Script) 우회로 구분 가능하다. 취약점 방식으로는 크게 △정상 확장자를 이용한 우회 △웹·앱 애플리케이션 서버 △애플리케이션 △에디터 등 네 가지로 분류할 수 있다.
웹셸 방어, 분야별 그물망 방어 전략 세워야
웹셸을 방어하기 위해서는 분야별로 세분화된 전략을 세우는 것이 중요하다. 온라인 학습 플랫폼 튜토리얼스포인트닷컴은 웹셸 방어를 위해서는 △파일 무결성 모니터링(File Integrity Monitoring, FIM) △웹 애플리케이션 권한 △침입방지 및 웹 애플리케이션 방화벽 △엔드포인트 감지 및 대응(EDR) △네트워크 세분화 등으로 전략을 세워야 한다고 강조했다.‘엔드포인트 감지 및 대응(EDR)’ 측면에서는 특정 호스트 로깅 및 EDR 솔루션으로 웹셸 공격을 방어할 수 있다. 이 도구는 시스템 호출 추적, 프로세스 기록 불규칙성과 악의적인 동작 패턴으로 웹셸을 찾는다. 마지막으로 ‘네트워크 세분화’는 네트워크를 독립적인 하위 네트워크로 나누며, 이를 통해 관련 없는 부분 간의 연결을 방지하는 것이다. 네트워크 세분화를 통해 웹셸 확산을 차단할 수 있다.
해당 게시물에 음란물(아동 포함), 도박,광고가 있거나 바이러스, 사기파일이 첨부된 경우에 하단의 신고를 클릭해주세요.
단, 정상적인 게시물을 신고할 시 사이트 이용에 불이익을 받으실 수 있습니다.
또융 님의 최근 커뮤니티 글.