[보안] 자동 취약점 도구 - 스캐너(Scanner)와 웹 쉘(Webshell)

취약점 분석에 있어서 자동 취약점 도구 스캐너와 웹 쉘에 대한 소개

 

보안 취약점 검사를 하는데 수동으로 하실 수 있지만 속도나 정합성에 있어서 오히려 검증된 자동화 도구를 사용하는 것이 더 나을 수 있습니다. 스캐너와 웹 쉘에 대해서 알아보겠습니다.


취약점-도구-스캐너-웹쉘


1. 스캐너 사용

1) 수동으로 점검하는 것에 비해 네트워크 request 속도가 빠름

2) Exploit(Exploit+Paload) 즉, 공격 코드가 삽입될 경우 장애 발생 가능

 - 포트스캔(x)

 - SQL injection, command injection, DoS Injection 등은 사용 지양

3) 스캐너 사용의 경우에는 반드시 고객사 협의를 통해서 제한적으로 진행

 - Exploit 코드 삽입은 제외

 - 쓰레드 속도는 최대로 낮추어서 진행

 - 횡이 발생해서 서버에 장애가 발생 할 수 있으므로 장시간 자리 비우지 않기

 - 해당 시스템의 설정 등 백업 이후 진행

4) 대적인 스캐너 사용 도구

 - 웹 : IBM Webscanner, NET Spaker 등 

 - 시스템 : Nexpose 등

 - 기타 서비스 거부라던가 임의의 데이터가 쓰여지는 형태는 주의!


2. 검증되지 않은 공격 코드 사용

 1) Webshell(웹 페이지에 쉘 실행 기능)

 - 자체 제작하거나 검증된 코드로 구성된 Webshell 사용

 - 오픈소스인데 난독화 등 코드가 검증되기 어려운 Webshell 사용 금지 (e.g 중국웹쉘 등)

 2) 기타 검증되지 않은 Exploit 등

* 소프트웨어 또는 하드웨어 등의 취약점을 공격할 때 자주 사용되는 용어

* PoC: Exploit + Payload를 통해 취약점이 존재한다는 것을 증명

* Exploit : payload를 실행하기 위한 흐름조작

* Payload : 취약점을 이용해서 최종적으로 실행하고자 하는 목적을 의미

  ex) shell (시스템 명령실행 권한), privilege escalation(권한상승) 등