사이버 보안
위협 인텔리전스 최고의 실천 팁

많은 사람들이 위협 인텔리전스(TI)가 좋다고 말하지만, 실제로 어떻게 사용하는지 이해하는 사람은 적습니다. 또한 TI가 작동하고 이익을 가져다줄 수 있는 프로세스를 참여하는 방법을 아는 사람은 더 적습니다. 더욱이, 피드 제공자를 선택하는 방법, 거짓 양성 지표를 확인하는 방법, 그리고 동료가 WhatsApp로 보낸 도메인을 차단해야 하는지 여부를 알지 못하는 사람은 거의 없습니다.
우리는 두 개의 상업적 APT 구독, 열 개의 정보 교환, 약 열 개의 무료 피드, 그리고 광범위한 TOR出口 노드 목록을 가지고 있었습니다. 또한 몇 개의 강력한 리버서, 마스터 파워셸 스크립트, Loki 스캐너, 그리고 유료 VirusTotal 구독을 사용했습니다. 보안 사고 대응 센터가 이러한 도구 없이 작동하지 않는다는 것은 아니지만, 복잡한 공격을 잡으려면 모든 것을 사용해야 합니다.
저는 특히 위협 지표의 자동화에 관심이 있었습니다. 인공 지능이 인간을 대체하는 것은 비도덕적입니다. 그러나 저의 회사가 고객을 늘리고 있기 때문에, 이러한 도전을 극복해야 할 것입니다.
몇 년 동안의 지속적인 TI 활동을 통해, 저는 많은 실수를 저지르었습니다. 이러한 실수를 피하기 위한 몇 가지 팁을 제공하고자 합니다.
팁 1. 해시로만 공격을 잡으려 하지 마십시오. 대부분의 악성 코드는 다형성이기 때문입니다.
위협 인텔리전스 데이터는 다양한 형식과 прояв으로 제공됩니다. 이는 봇넷의 명령 및 제어 센터의 IP 주소, 피싱 캠페인에 참여한 이메일 주소, 그리고 APT 그룹이 사용하는 회피 기술에 대한 기사를 포함할 수 있습니다. 간단히 말해, 이는 다양한 것들이 될 수 있습니다.
이 모든 것을 정리하기 위해, David Bianco는 Pyramid of Pain이라고 불리는 것을 제안했습니다. 이는 공격자가 사용하는 다양한 지표와 공격자에게 가하는 “통증”의 상관관계를 설명합니다.
예를 들어, 악성 파일의 MD5 해시를 알고 있다면, 이를 쉽게 감지할 수 있습니다. 그러나 이는 공격자에게 큰痛을 주지 않습니다. 왜냐하면 파일에 1비트의 정보만 추가해도 해시가 완전히 변경되기 때문입니다.
팁 2. 공격자가 변경하기 어렵거나 비용이 많이 드는 지표를 사용하십시오.
악성 파일의 해시 값을 사용하여 감지하는 방법에 대한 질문에 답하려면, 다음과 같이 말할 수 있습니다. 다양한 방법이 있습니다. 가장 쉬운 방법은 기업 내의 모든 실행 파일의 MD5 해시를 유지하는 솔루션을 사용하는 것입니다.
Pyramid of Pain으로 돌아가면, 해시 값으로 감지하는 것보다 공격자의 전술, 기술, 절차(TTP)를 식별하는 것이 더 생산적입니다. 이는 더 어려울 수 있지만, 공격자에게 더 큰痛을 줄 수 있습니다.
예를 들어, 특정 산업 분야를 표적으로 하는 APT 그룹이 *.HTA 파일을 포함한 피싱 이메일을 보내는 경우, 이러한 이메일을 감지하는 규칙을 생성하면 공격자에게 큰 피해를 줄 수 있습니다. 공격자는 스팸 전송 전략을 변경해야 하며, 0-데이 또는 1-데이 악성 코드를 구입해야 할 수도 있습니다.
팁 3. 다른 사람이 생성한 감지 규칙에 대한 기대치를 너무 높게 설정하지 마십시오. 이러한 규칙을 거짓 양성으로 확인하고 미세 조정해야 하기 때문입니다.
감지 규칙을 생성할 때, 이미 존재하는 규칙을 사용하는 유혹이 있습니다. Sigma는 무료 저장소의 예입니다. 이는 SIEM과 독립적인 감지 방법의 형식으로, Sigma 언어에서 ElasticSearch, Splunk, 또는 ArcSight 규칙으로 번역할 수 있습니다. 저장소에는 수백 개의 규칙이 포함되어 있습니다. 그러나 세부 사항에서 악마가 숨어 있습니다.
Loki와 같은 IOC 스캐너를 사용하여 호스트를 스캔하거나, 취약점 스캐너를 사용하여 네트워크를 스캔할 수 있습니다. 또한 파워셸 스크립트를 작성하여 WinRM을 통해 실행할 수 있습니다.
위협 인텔리전스 데이터는 인간의 오류나 기계 학습 알고리즘의 오류로 인해 생성될 수 있습니다. 저는 다양한 제공업체가 의도하지 않게 합법적인 샘플을 악성 샘플 목록에 추가하는 경우를 목격했습니다. 이러한 지표를 사용하기 전에 관련성과 정확성을 확인해야 합니다.
팁 4. 도메인 이름과 IP 주소를 프록시 서버와 방화벽에서뿐만 아니라 DNS 서버 로그에서도 확인하십시오. 성공한 요청과 실패한 요청 모두를 확인해야 합니다.
악성 도메인과 IP 주소는 감지의 단순성과 공격자에게 가하는痛의 양 측면에서 최적의 지표입니다. 그러나 이러한 지표를 처리하는 것은 처음에는 쉽게 보일 수 있습니다. 적어도 도메인 로그를 어디에서 가져올지 물어보아야 합니다.
프록시 서버 로그만 확인한다면, 직접 네트워크에 연결하거나 DGA를 사용하여 생성된 도메인 이름을 요청하는 악성 코드를 놓칠 수 있습니다. 또한 DNS 터널링을 사용할 수 있습니다. 이러한 경우에는 기업 프록시 서버의 로그에 나타나지 않습니다.
팁 5. 차단 또는 모니터링을 결정하기 전에 지표의 유형과 차단의 결과를 고려하십시오.
모든 IT 보안 전문가는 공격을 차단할지 또는 모니터링할지 결정해야 하는 어려운 결정을 직면했습니다. 일부 지침은 명확하게 차단을 권장하지만, 때때로 이는 실수입니다.
지표가 APT 그룹이 사용하는 도메인 이름인 경우, 차단하지 마십시오. 대신 모니터링을 시작하십시오. 최신의 공격 전략은 추가적인 비밀 통신 채널을 가정합니다. 자동 차단은 이러한 채널을 발견하는 것을 방해할 수 있습니다. 또한 공격자는 곧 자신의 공격이 감지되었다는 것을 알게 될 것입니다.
반면에, 지표가 암호화 랜섬웨어에 사용되는 도메인인 경우, 즉시 차단해야 합니다. 그러나 차단된 도메인에 대한 모든 실패한 요청을 모니터링하는 것을 잊지 마십시오. 악성 인코더의 구성에는 여러 명령 및 제어 서버 URL이 포함될 수 있습니다. 이러한 URL 중 일부는 피드에 포함되지 않을 수 있으며 따라서 차단되지 않을 수 있습니다. 감염은 이러한 서버에 연결하여 암호화 키를 얻으려고 할 것입니다. 이러한 모든 명령 및 제어 서버를 차단하는唯一한 방법은 샘플을 역공학적으로 분석하는 것입니다.
팁 6. 모니터링 또는 차단하기 전에 모든 새로운 지표를 관련성과 정확성을 확인하십시오.
위협 데이터는 인간의 오류나 기계 학습 알고리즘의 오류로 인해 생성될 수 있습니다. 저는 다양한 제공업체가 의도하지 않게 합법적인 샘플을 악성 샘플 목록에 추가하는 경우를 목격했습니다. 이러한 지표를 사용하기 전에 관련성과 정확성을 확인해야 합니다.
팁 7. 위협 데이터 워크플로를 최대限으로 자동화하십시오. 경고 목록을 통해 거짓 양성을 확인하는 것을 시작하십시오.
개방형 소스에서 얻은 지표로 인해 발생하는 거짓 양성을 피하기 위해, 이러한 지표를 경고 목록에서 예비 검색을 실행할 수 있습니다. 이러한 목록을 생성하기 위해, 가장 많이 방문되는 웹사이트, 내부 서브넷 주소, Google (GOOGL ), Amazon (AMZN ) AWS, MS Azure 등의 주요 서비스 제공업체가 사용하는 도메인을 사용할 수 있습니다. 또한 회사 직원이 지난 주 또는 지난 달에 방문한 최상위 도메인/IP 주소를 포함하는 경고 목록을 동적으로 변경하는 솔루션을 구현하는 것도 좋은 아이디어입니다.
이러한 경고 목록을 생성하는 것은 중간 규모의 SOC에게는 문제가 될 수 있습니다. 따라서 위협 인텔리전스 플랫폼을 채택하는 것을 고려하는 것이 좋습니다.
팁 8. 호스트 지표를 위해 전체 기업을 스캔하십시오. SIEM에 연결된 호스트만이 아닌 모든 호스트를 스캔하십시오.
- IOC 스캐너를 사용하십시오. Loki와 같은 도구를 사용하여 모든 호스트를 스캔할 수 있습니다.
- 취약점 스캐너를 사용하십시오. 일부 스캐너는 특정 파일이나 경로를 네트워크에서 확인하는 컴플라이언스 모드를 제공합니다.
- 파워셸 스크립트를 작성하고 WinRM을 통해 실행하십시오.
위의 내용은 위협 인텔리전스를 올바르게 사용하는 방법에 대한 포괄적인 지침서가 아닙니다. 그러나 저의 경험에 비추어 볼 때, 이러한 간단한 규칙을 따르면 새로운人が 다양한 지표를 처리할 때 치명적인 실수를 피할 수 있을 것입니다.












