Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Codecepticon — .NET/PowerShell/VBA 공격적 보안 난독화 도구 | Kitploit
도구/GitHubGitHub/sadreck/codecepticon
Defensive ToolsStatic AnalysisCode AnalysisIDS/IPS EvasionScripting & AutomationPenetration TestingRed TeamingPayload Development
GitHubsadreck/codecepticon

Codecepticon

.NET/PowerShell/VBA 공격적 보안 난독화 도구

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Codecepticon version

목차

  • 소개
  • 먼저 읽어주세요
  • 사전 요구 사항
    • Visual Studio
    • Roslyn 컴파일러
    • 작동 여부 확인
  • Codecepticon 사용하기
    • C#
    • VBA/VB6
    • PowerShell
    • 명령줄 인수 난독화
    • 기능 심층 분석
    • 팁
    • 알려진 문제
    • 실행 파일 서명
  • FAQ
  • 문제 해결
  • 기여
  • 참고 자료 / 크레딧

소개

Codecepticon은 C#, VBA/VB6(매크로), PowerShell 소스 코드를 난독화할 수 있는 .NET 애플리케이션으로, Red/Purple Team과 같은 공격적 보안 활동을 위해 개발되었습니다. Codecepticon을 다른 난독화 도구와 구별하는 점은 컴파일된 실행 파일이 아닌 소스 코드를 대상으로 한다는 것이며, AV/EDR 회피를 위해 특별히 개발되었습니다.

Codecepticon은 코드를 난독화하고 재작성할 수 있을 뿐만 아니라 명령줄을 재작성하는 기능도 제공합니다.

먼저 읽어주세요

! 시작하기 전에 !

  • 이 문서는 Codecepticon의 설치 및 사용 방법만 다룹니다. Rubeus 및 SharpHound와 같은 도구의 컴파일, 사용 및 지원은 제공되지 않습니다. 자세한 내용은 각 프로젝트의 저장소를 별도로 참조하십시오.

  • Codecepticon은 VS2022에서 활발히 개발/테스트되고 있지만, VS2019에서도 작동해야 합니다. VS2019 이하 버전에 대해 생성된 티켓/이슈는 VS2022에서 문제가 재현되지 않는 한 조사되지 않습니다. 따라서 최신 VS2022를 사용하십시오.

  • 다음 패키지는 반드시 v3.9.0이어야 합니다. 최신 버전에는 아직 해결되지 않은 다음 문제가 있기 때문입니다: https://github.com/dotnet/roslyn/issues/58463

    • Microsoft.CodeAnalysis.CSharp.Workspaces
    • Microsoft.CodeAnalysis.Workspaces.MSBuild

    Codecepticon은 런타임에 이 패키지들의 버전을 확인하며, 버전이 v3.9.0과 다를 경우 알려줍니다.

  • 이 점은 아무리 강조해도 부족합니다: 항상 난독화된 코드를 먼저 로컬에서 테스트하십시오.

사전 요구 사항

Visual Studio Pro/Community 2022

VS2022 .NET

Roslyn 컴파일러

VS2022 Roslyn

열기 및 컴파일

Codecepticon을 열고 모든 NuGet 패키지가 다운로드될 때까지 기다린 후 솔루션을 빌드하십시오. 미리 컴파일된 Release를 다운로드할 수도 있습니다.

Codecepticon 사용하기

Codecepticon을 사용하는 방법은 두 가지가 있습니다. 모든 인수를 명령줄에 넣거나, 단일 XML 구성 파일을 전달하는 것입니다. 지원되는 사용자 정의 수준이 높기 때문에 --help 출력을 직접 살펴보며 어떤 매개변수를 어떻게 사용해야 할지 파악하는 것은 권장되지 않습니다. CommandLineGenerator.html을 사용하여 명령을 빠르게 생성하십시오:

Command Line Generator

명령 생성기의 출력 형식은 선호도에 따라 Console 또는 XML 중 하나일 수 있습니다. 콘솔 명령은 다음과 같이 실행할 수 있습니다:

Codecepticon.exe --action obfuscate --module csharp --verbose ...etc

XML 구성 파일을 사용하는 경우:

Codecepticon.exe --config C:\Your\Path\To\The\File.xml

Codecepticon의 기능을 자세히 살펴보고 싶다면 이 문서를 확인하세요.

활용할 수 있는 팁은 이 문서를 확인하세요.

C#

C# 프로젝트를 난독화하는 것은 간단합니다. 대상으로 삼을 솔루션을 선택하기만 하면 됩니다. 솔루션 자체의 백업은 생성되지 않으며, 현재 솔루션이 난독화 대상이 됩니다. Codecepticon을 대상 프로젝트에 대해 실행하기 전에 해당 프로젝트를 독립적으로 컴파일할 수 있는지 확인하세요.

VBA/VB6

VBA 난독화는 Microsoft Office 문서가 아닌 소스 코드 자체에 대해 작동합니다. 즉, doc(x) 또는 xls(x) 파일을 Codecepticon에 전달할 수 없습니다. 모듈 자체의 소스 코드여야 합니다(Alt-F11을 누르고 거기서 코드를 복사하세요).

PowerShell

PowerShell 스크립트의 복잡성과 스크립트 작성 방식에 있어 제공하는 자유도 때문에 모든 엣지 케이스를 포괄하고 난독화된 결과가 완전히 기능하도록 보장하는 것은 어렵습니다. Codecepticon이 간단한 스크립트/기능에 대해서는 잘 작동할 것으로 예상되지만, PowerView와 같은 복잡한 스크립트에 대해 실행하면 작동하지 않을 것입니다. 이는 진행 중인 작업입니다.

명령줄 인수 난독화

애플리케이션 또는 스크립트를 난독화한 후에는 명령줄 인수도 이름이 변경되었을 가능성이 매우 높습니다. 이에 대한 해결책은 HTML 매핑 파일을 사용하여 새 이름이 무엇인지 찾는 것입니다. 예를 들어, 다음 명령줄을 변환해 보겠습니다:

SharpHound.exe --CollectionMethods DCOnly --OutputDirectory C:\temp\

각 인수에 대해 HTML 매핑 파일을 검색하면 다음을 얻습니다:

Mapping One

Mapping Two

Mapping Three

그리고 모든 문자열을 바꾸면 결과는 다음과 같습니다:

ObfuscatedSharpHound.exe --AphylesPiansAsp TurthsTance --AnineWondon C:\temp\

하지만 일부 값은 둘 이상의 범주에 존재할 수 있습니다:

Mapping Four

따라서 항상 먼저 로컬 환경에서 결과를 테스트하는 것이 중요합니다.

실행 파일 서명

Codecepticon을 사용하여 실행 파일(컴파일된 출력물)에 디지털 서명을 하는 것도 가능합니다. Codecepticon은 서명 인증서를 생성해 줄 수 있을 뿐만 아니라, 이를 사용하여(또는 사용자가 제공한 다른 인증서를 사용하여) 대상 파일에 서명할 수 있습니다.

FAQ

Releases에 다운로드할 수 있는 컴파일된 버전이 없는 이유는 무엇인가요?

컴파일된 출력물에는 많은 종속 DLL이 포함되어 있으며, 라이선스 요구 사항으로 인해 서면 동의 없이는 재배포할 수 없습니다.

Codecepticon은 이미 지원되는 프로필이 있는 C# 프로젝트에서만 작동하나요?

아니요, Codecepticon은 모든 것과 함께 작동해야 합니다. 프로필은 대상 프로젝트를 더 안정적이고 작업하기 쉽게 만들기 위해 수행되는 약간의 추가 조정일 뿐입니다.

하지만 모든 코드는 고유하기 때문에, 프로젝트를 난독화하면 컴파일되거나 실행되지 못하게 하는 오류가 한두 개 발생하는 경우가 있을 수 있습니다. 이 경우 새로운 프로필이 필요할 수 있습니다. 그런 경우 새로운 이슈를 제기해 주세요.

동일한 원칙이 PowerShell/VBA 코드에도 적용됩니다. 현재 Codecepticon에 포함된 프로필은 없지만, 필요한 경우 추가하는 것은 쉬운 작업입니다.

기여할 수 있나요?

버그를 보고하고 새로운 기능을 제안하려면 이슈를 생성해 주세요.

풀 리퀘스트를 제출하려면 Contributions 섹션을 참조하세요.

문제 해결

C# 프로젝트에 대해 Codecepticon을 실행하면 실행은 되지만, 이후 대상 프로젝트를 컴파일할 수 없습니다.

Codecepticon을 실행하기 전에 대상 프로젝트의 깨끗한 버전을 컴파일할 수 있는지 확인하세요. 이 문제가 나타날 때는 Codecepticon 때문이 아니라 대상 솔루션의 종속성 누락 때문인 경우가 매우 많습니다. 그래도 컴파일되지 않는다면:

  • 공개 프로젝트인가요? 이슈를 생성하고 가능한 한 자세히 링크를 붙여넣어 주세요. 해당 도구가 SharpCollection의 일부라면 더욱 좋습니다.
  • 비공개 프로젝트인가요? Codecepticon 개선을 위해 스크린샷과 오류/디버그 메시지를 통해 가능한 한 많은 지원을 제공하려고 노력할 것입니다. 하지만 비공개 저장소 등을 통해 깨끗한/난독화된 코드에 접근하거나 실행하지는 않을 것입니다.

위와 같지만 PowerShell/VBA 스크립트입니다. 도와주실 수 있나요?

최선을 다하겠지만, PowerShell 스크립트는 매우 복잡할 수 있고 PSParser가 C#의 Roslyn만큼 고급스럽지 않기 때문에 약속드릴 수는 없습니다. VBA/VB6에도 동일하게 적용됩니다.

계속 "Method not found: 'System.Collections.Immutable.ImmutableArray" 오류가 발생합니다.

어느 시점에 다음과 같은 오류가 발생할 수 있습니다:

Method not found

아직 이 문제의 원인을 파악하려고 노력 중이며, 빠른 해결 방법은 NuGet 패키지 관리자에서 System.Collections.Immutable 패키지를 제거한 후 다시 설치하는 것입니다.

기여

오타, 버그, 새로운 기능 등 어떤 것이든 Codecepticon은 다음 사항에 동의하는 한 기여를 매우 환영합니다:

  • 이 프로젝트의 MIT 라이선스에 동의합니다.
  • 풀 리퀘스트를 생성하기 전에 이슈를 생성하여 작업을 시작하기 전에 논의할 수 있도록 하세요. 내부 개발은 공개 GitHub 저장소를 통해 추적되지 않기 때문입니다. 그렇지 않으면 예를 들어 이미 동일하거나 유사한 기능을 작업 중이거나 다른 이유로 풀 리퀘스트가 거부될 위험이 있습니다.

참고 자료 / 크레딧

도구 다운로드