많은 사람들은 애플리케이션과 사용자 정보의 사이버 보안 과 데이터 개인 정보 보호를 보장하는 데 있어 QA의 중요한 역할을 과소평가합니다. QA는 종종 기능 및 유용성 테스트와 연관되어 있지만 그 영향은 애플리케이션이 의도한 대로 작동하는지 확인하는 것 이상으로 확장됩니다. 민감한 정보를 보호하고 사이버 보안 침해를 방지하는 것이 중요합니다. QA는 데이터 유출이나 애플리케이션에 대한 무단 액세스로 이어질 수 있는 버그와 취약점을 식별함으로써 이러한 노력에서 큰 역할을 합니다.
이 문서는 QA 전문가 또는 취약성 스캐너 및 사이버 보안 위협에 익숙하지 않지만 앱과 사용자를 보호하려는 모든 사람을 대상으로 하는 보안 취약성 스캐너에 관한 것입니다. 이 포괄적인 개요에서는 OWASP ZAP, Burp Suite, Nessus, Sn1per, Metasploit 및 SQLMap과 같이 제가 사용해 보았고 친숙한 일부 취약점 스캐너의 기능, 기능 및 실제 응용 프로그램을 간략하게 고려합니다.
아래에 언급된 도구를 사용하여 수많은 취약점을 발견할 수 있었으며 일부는 사용자와 기업 모두에 심각한 위험을 초래했습니다.
OWASP ZAP은 오픈 소스 웹 애플리케이션 보안 스캐너입니다. 다양한 기능을 제공하는 ZAP는 자동화된 스캐닝, 수동 탐색 및 포괄적인 취약점 감지를 용이하게 합니다. 사용자 친화적인 인터페이스를 통해 숙련된 보안 전문가와 신규 사용자 모두가 접근할 수 있습니다.
조직이 웹 애플리케이션의 보안 상태를 평가하는 것을 목표로 하는 시나리오를 생각해 보십시오. OWASP ZAP, 개발자 및 QA를 활용하면 능동 검색을 수행하고, HTTP 트래픽을 분석하고, SQL 주입, XSS, 안전하지 않은 IDOR(직접 개체 참조)과 같은 취약점을 식별할 수 있습니다. 강력한 보고 기능을 활용하면 실행 가능한 통찰력을 얻어 식별된 문제를 즉시 해결할 수 있습니다.
예:
ZAP는 HTTP 요청의 악성 페이로드를 통해 SQL 주입 취약점을 식별합니다. 예를 들어:
GET /products?id=1' UNION SELECT user, password FROM users --
ZAP가 감지하는 또 다른 일반적인 취약점은 다음과 같은 악성 JS 페이로드를 통한 XSS입니다.
<script>alert('XSS Vulnerability Detected')</script>
Burp Suite 는 사이버 보안 분야에서 유명한 이름이며 선도적인 웹 취약성 스캐너 및 침투 테스트 툴킷입니다. Community Edition은 기본적인 기능을 제공하는 반면, Professional 버전은 플러그인을 통한 스캐닝 자동화, 세션 처리 및 확장성과 같은 고급 기능을 제공합니다(Pro 버전 평가판을 등록하고 얻을 수 있음).
전자상거래 플랫폼 내에서 보안 허점을 찾으려는 시나리오를 가정해 보겠습니다. Burp Suite의 능동 검색 기능을 활용함으로써 테스터는 애플리케이션의 공격 표면을 면밀히 조사하고, 취약점을 식별하고, 표적 공격을 통해 심각도를 검증할 수 있습니다. 이 제품군의 차단 프록시는 테스터가 요청을 가로채고 조작할 수 있도록 지원하여 식별된 취약점에 대한 심층 분석 및 활용을 촉진합니다.
예:
Burp는 내부 서비스를 대상으로 작성된 요청을 통해 SSRF 취약점을 식별합니다.
GET http://vulnerable-website.com/endpoint?url=http://internal-service.com/confidential_data
Burp는 제한된 파일에 액세스하기 위한 페이로드를 통해 디렉터리 탐색 취약점을 탐지할 수 있습니다.
GET /uploads/../../../../etc/passwd HTTP/1.1 Host: vulnerable-website.com
Burp는 가장 널리 퍼진 보안 위협 중 하나인 SQL 주입 취약점을 식별하는 데 탁월합니다. 다음은 취약한 매개변수를 대상으로 하는 페이로드의 예입니다.
POST /search HTTP/1.1 Host: vulnerable-website.com Content-Type: application/x-www-form-urlencoded searchTerm=' OR 1=1 --
IT는 이러한 취약점을 표시하여 테스터가 이를 악용하고 그 영향을 입증할 수 있도록 합니다.
Burp는 CSRF 취약점도 감지할 수 있습니다. 예를 들어 적절한 CSRF 토큰이 부족한 웹 애플리케이션을 식별하여 공격자가 인증된 사용자를 대신하여 무단 작업을 실행할 수 있습니다.
Nessus 는 Home 및 Professional 버전을 통해 개인과 기업 모두의 요구 사항을 충족하는 복잡한 취약성 평가 솔루션입니다. Nessus는 광범위한 취약점 검사 저장소를 활용하여 네트워크, 시스템 및 애플리케이션 전반에 걸쳐 철저한 평가를 수행하여 보안 방어 메커니즘에 대한 실행 가능한 통찰력을 제공합니다.
Nessus Home Edition을 활용하면 사용자는 라우터, IoT 장치 및 PC와 같은 연결된 장치에 대해 정기적인 취약성 검사를 수행할 수 있습니다. 오래된 소프트웨어 버전, 취약한 비밀번호, 잘못 구성된 설정 등의 취약점을 식별함으로써 사용자는 위험을 사전에 완화하고 잠재적인 악용으로부터 디지털 자산을 보호할 수 있습니다.
예:
Nessus는 악용의 일반적인 벡터인 오래된 소프트웨어 버전을 탐지하는 데 탁월합니다. 예를 들어 알려진 악용에 취약한 이전 버전의 Apache를 실행하는 시스템을 식별할 수 있습니다. 취약한 비밀번호를 탐지할 수 있습니다. Nessus는 비밀번호 정책과 인증 메커니즘을 분석하여 무차별 대입 공격이나 사전 기반 공격에 취약한 비밀번호를 식별합니다.
Nessus는 버전 확인을 통해 소프트웨어에서 누락된 보안 패치를 식별합니다.
OpenSSH < 7.2p2
Nessus가 감지한 또 다른 일반적인 취약점은 암호 제품군 분석을 통한 약한 SSL/TLS 구성입니다.
SSL Medium Strength Cipher Suites Supported
Sn1per는 대상 환경에 대한 철저한 평가를 수행하려는 침투 테스터 및 레드 팀 담당자의 요구에 적합한 강력한 정찰 및 취약성 검색 도구입니다. 초보자에게는 다소 복잡해 보일 수 있지만 여전히 사용하기 쉽습니다. 포괄적인 기능 세트에는 자동화된 스캐닝, 포트 스캐닝 및 OSINT 수집 기능이 포함됩니다.
Sn1per를 배포하면 정찰을 수행하여 대상 자산에 대한 정보를 수집하고, 노출된 서비스를 식별하고, 취약성 스캔을 수행하여 악용 가능한 약점을 찾아낼 수 있습니다. 실행 가능한 인텔리전스를 통해 테스터는 방어를 우회하고 목표를 달성하기 위한 표적 공격 벡터를 고안할 수 있습니다.
예:
Sn1per는 포괄적인 포트 스캐닝을 통해 개방형 포트를 감지합니다.
sniper -t vulnerable-website.com
Sn1per는 무차별 대입 공격이나 비밀번호 스프레이 기술을 통해 약한 자격 증명을 식별할 수도 있습니다.
Metasploit은 광범위한 공격, 페이로드 및 공격 후 모듈을 통해 사용자에게 권한을 부여하는 침투 테스트 및 공격 개발을 위한 다목적 프레임워크입니다. 모듈식 아키텍처와 확장성으로 인해 전 세계의 윤리적인 해커와 보안 연구원이 선택합니다.
지능형 위협에 대한 기업 네트워크의 복원력을 평가하려는 시나리오를 생각해 보십시오. 테스터는 Metasploit의 익스플로잇 모듈과 페이로드 생성기를 활용하여 실제 공격 시나리오를 시뮬레이션하고 식별된 취약점을 활용하며 성공적인 침입의 잠재적 영향을 보여줄 수 있습니다. 또한 Metasploit의 악용 후 모듈을 통해 분석가는 액세스를 유지하고, 권한을 확대하고, 손상된 네트워크 내에서 방향을 전환하여 추가 취약점을 찾아낼 수 있습니다.
예:
Metasploit은 원격 코드 실행을 위해 Shellshock 취약점을 활용합니다.
use exploit/multi/http/apache_mod_cgi_bash_env_exec
Metasploit은 FTP, SSH 또는 SMB와 같은 취약한 서비스도 악용할 수 있습니다.
use exploit/windows/smb/ms17_010_eternalblue
Metasploit은 MS08-067과 같은 공격 모듈을 활용하여 취약한 시스템을 표적으로 삼아 손상시켜 공격의 잠재적인 영향을 보여줍니다.
use exploit/windows/smb/ms08_067_netapi set RHOSTS target-ip exploit
Metasploit은 취약한 웹 애플리케이션을 악용하는 데에도 사용될 수 있습니다. 예를 들어 CMS의 알려진 취약점을 표적으로 삼는 익스플로잇 모듈을 사용하여 무단 액세스를 얻을 수 있습니다.
SQLMap은 SQL 주입 취약점과 씨름하는 보안 전문가 및 개발자의 요구 사항을 충족하는 자동화된 SQL 주입 및 데이터베이스 활용을 위한 강력한 오픈 소스 도구입니다. 직관적인 명령줄 인터페이스와 광범위한 기능 세트를 통해 SQL 주입 공격에 맞서 싸우는 강력한 자산이 됩니다.
웹 애플리케이션 개발자가 SQL 주입 취약점에 대해 자신의 애플리케이션을 확인하려고 한다고 가정해 보겠습니다. SQLMap을 활용함으로써 개발자 또는 QA는 취약한 진입점을 식별하고, 악성 페이로드를 삽입하고, 매개변수화된 쿼리 및 입력 검증과 같은 구현된 방어의 효율성을 검증하기 위한 철저한 평가를 수행할 수 있습니다. 개발자는 잠재적인 SQL 주입을 찾아 무단 액세스로부터 중요한 데이터를 보호할 수 있습니다.
예:
SQL 주입 테스트, 데이터베이스 식별, 취약한 웹 애플리케이션에서 중요한 정보 추출을 자동화합니다.
sqlmap -u "http://vulnerable-website.com/search?id=1" --dbs
SQLMap은 시간 기반 블라인드 SQL 주입 공격을 수행할 수 있습니다.
sqlmap -u "http://vulnerable-website.com/search?id=1" --level=5 --time-sec=5
개인적으로 정보보안 엔지니어 포지션의 테스트 업무를 수행하면서 이 툴을 이용하여 쿠키에 SQL 인젝션을 사용하여 전체 DB를 복사하는 데 성공했습니다.
취약성 스캐너를 이해하고 활용하는 것은 특히 사이버 보안 전문 지식이 부족한 환경에서 데이터와 앱을 보호하는 데 중요합니다. 이러한 도구를 사용하면 보안 전문가뿐만 아니라 QA 및 개발 팀도 보안 위험을 사전에 식별, 평가 및 완화할 수 있습니다. 특히 사이버 보안 전문가가 작업에 압도될 수 있는 환경에서 취약성 스캐너는 접근 가능하고 사용자 친화적인 솔루션을 제공합니다. OWASP ZAP, Burp Suite, Nessus, Sn1per, Metasploit 및 SQLMap과 같은 도구를 마스터함으로써 팀은 사이버 보안 방어를 강화하고 자신감과 효율성을 가지고 사이버 보안 위협에 대처할 수 있습니다.
기본적인 취약점에 대해 더 자세히 알고 싶다면
항상 명시적인 허가를 받아 통제된 환경 내에서 침투 테스트를 수행하십시오. 이러한 윤리적 접근 방식은 보안 평가가 책임 있는 테스트 프로토콜과 일치하도록 보장하여 시스템에 대한 우발적인 손상을 방지하고 테스트 프로세스와 중요한 사이버 보안 전략 모두의 무결성을 유지합니다.