Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
demiguise — RedTeams를 위한 HTA 암호화 도구 | Kitploit
도구/GitHubGitHub/nccgroup/demiguise
Phishing ToolsPayload GenerationIDS/IPS EvasionWeb Application ExploitationRed Teaming
GitHubnccgroup/demiguise

demiguise

RedTeams를 위한 HTA 암호화 도구

저장소 보기
1.4k24674년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
웹사이트

Demiguise - HTA 암호화 도구

NCC Group Plc가 오픈 소스로 공개 - http://www.nccgroup.trust/

Richard Warren 개발, richard [dot] warren [at] nccgroup [dot] trust

http://www.github.com/nccgroup/demiguise

AGPL 라이선스로 배포, 자세한 내용은 LICENSE 참조

기능?

이 프로젝트의 목표는 암호화된 HTA 파일을 포함하는 .html 파일을 생성하는 것입니다. 아이디어는 대상자가 페이지를 방문하면 키를 가져와서 브라우저 내에서 HTA가 동적으로 복호화되어 사용자에게 직접 전달된다는 것입니다. 이는 일부 보안 어플라이언스에서 구현된 콘텐츠/파일 형식 검사를 우회하기 위한 회피 기술입니다. 이 도구는 멋진 HTA 콘텐츠를 만들기 위해 설계된 것이 아닙니다. 이를 도와줄 수 있는 다른 많은 도구/기술이 있습니다. 이 도구가 도움이 될 수 있는 점은 처음에 HTA를 환경에 도입하는 것과 (환경 키잉을 사용하는 경우) 샌드박스 처리되지 않도록 하는 것입니다.

어떻게 작동하나요?

이는 HTA 파일을 RC4로 암호화한 다음 navigator.msSaveBlob을 사용하여 런타임에 파일을 "저장"함으로써 달성됩니다. 즉, 서버에서 HTA를 직접 가져오는 대신, HTA 파일이 평문 형태로 포함된 HTTP 요청/응답이 전혀 없습니다. 프록시는 암호화된 블롭이 포함된 text/html 파일만 볼 수 있습니다. 최신 Edge 버전에서는 사용자에게 HTA를 "실행"하라는 메시지가 표시됩니다.

이 도구의 주요 목적은 아니지만, 기본 HTA에 대한 몇 가지 페이로드 옵션이 있습니다. 각 옵션은 Matt Nelson, Matthew Demaske, Ryan Hanson 및 Etienne Stalmans가 이전에 문서화한 다양한 기술을 사용합니다. 이러한 기술을 사용하면 코드가 mshta.exe의 자식 프로세스로 실행되지 않는다는 이점이 있습니다. 앞서 언급했듯이 HTA의 콘텐츠는 이 도구의 주요 목적이 아닙니다. HTA 템플릿을 수정하여 자신만의 사용자 정의 코드를 포함할 것을 권장합니다 :)

어떻게 실행하나요?

demiguise.py 파일을 실행하고 암호화 키, 페이로드 유형, 출력 파일 이름 및 HTA가 실행할 명령을 지정합니다.

예시: python demiguise.py -k hello -c "notepad.exe" -p Outlook.Application -o test.hta

환경 키잉

샌드박스를 회피하기 위해 키를 HTA에 직접 포함시키지 않아야 합니다. 대신 대상이 있는 환경에서 동적으로 키를 가져와야 합니다. 예를 들어 클라이언트의 외부 IP 주소를 키로 사용할 수 있습니다. 이렇게 하면 코드가 타사 샌드박스에서 실행될 경우 HTA가 복호화되지 않습니다. 사실 파일 이름조차 복호화되지 않으므로 아무도 페이로드가 무엇인지/무엇을 하는지 알 수 없습니다 :)

환경 키잉의 예는 examples/externalip.js 및 examples/virginkey.js에 나와 있습니다.

보너스

도구가 JavaScript를 포함하는 HTML 파일을 출력하므로 이 JS를 가져와서 원하는 곳에 호스팅할 수 있습니다. 즉, 클라이언트의 웹사이트가 반사형 XSS에 취약한 경우 이를 사용하여 (매우 신뢰할 수 있는) 도메인에서 HTA 파일을 제공할 수 있습니다.

또한 Outlook은 기본적으로 .html 첨부 파일을 차단하지 않으며, 다른 일부 애플리케이션도 마찬가지입니다. 상상력을 발휘해보세요! :)

탐지

현재 VT에서 탐지되지 않습니다:

https://www.virustotal.com/en/file/24b86ee6210b2abc446021feacfe25502b60403455aa24a32c80b2e7b0f81a70/analysis/1499880541/

방어

난독화 기술은 시그니처화하기 어려울 수 있지만, HTA 공격을 방어하는 한 가지 방법은 HTA 자체가 실행되지 못하도록 하는 것입니다. 이는 소프트웨어 제한 정책(SRP), Device Guard(Windows 10 및 Server 2016)를 사용하거나 .hta 파일과 연결된 기본 파일 처리기를 변경함으로써 달성할 수 있습니다.

이러한 변경은 HTA 실행에 의존하는 소프트웨어의 실행에 영향을 미칠 수 있습니다. 따라서 수정 사항을 자체 환경에서 완전히 테스트하는 것이 좋습니다.

SRP 사용:

기본 파일 처리기 변경:

root@kitploit:~
ftype htafile=%SystemRoot%\system32\NOTEPAD.EXE %1

다시 변경 (x64):

root@kitploit:~
ftype htafile=C:\Windows\SysWOW64\mshta.exe "%1" {1E460BD7-F1C3-4B2E-88BF-4E770A288AF5}%U{1E460BD7-F1C3-4B2E-88BF-4E770A288AF5} %*

FAQ

  • 디스크에 저장되지 않나요?
    • 최신 Edge 버전에서 테스트한 결과, 일반 HTA를 제공하는 것과 같은 방식으로만 "디스크에 저장"됩니다. 어느 쪽이든 결국 디스크의 임시 파일이 됩니다.
  • 도메인 가입 상태/프린터 등을 확인하여 $product에 대한 샌드박스 탐지가 이미 있는데 왜 이 도구를 사용해야 하나요?
    • 이 도구의 목표는 처음부터 샌드박스에서 실행되는 것을 피하는 것입니다. 키를 현명하게 선택하면 HTA가 올바르게 복호화되지 않을 뿐만 아니라 $product도 HTA 파일인지 인식하지 못하므로 샌드박스에서 실행될 수 없습니다.
  • 대상 네트워크에 먼저 접근하지 않고 환경 키 소스를 찾으려면 어떻게 해야 하나요?
    • 이는 독자의 과제로 남겨두지만, 좋은 OSINT를 통해 종종 발견할 수 있습니다. 핑거프린팅 캠페인을 수행하는 경우 WebFEET 및 BeEF에서 영감을 얻으세요.

감사 / 선행 기술

  • Matt Nelson - WbemScripting.SWbemLocator & ShellBrowserWindow COM 실행 기술
  • Matthew Demaske - WbemScripting.SWbemLocator COM 실행 PoC
  • Ryan Hanson - Excel.Application.RegisterXLL COM 실행 기술
  • Etienne Stalmans - Outlook.Application.CreateObject COM 실행 기술
  • Brandon Arvanaghi와 Chris Truncer의 CheckPlease 도구
  • The Empire Project
도구 다운로드