
Weaponized web shell
Weevely는 침투 후(post-exploitation) 작업을 위해 설계된 웹 셸로, 런타임에 네트워크를 통해 확장할 수 있습니다.
weevely PHP 에이전트를 대상 웹 서버에 업로드하면 원격 셸 액세스 권한을 얻을 수 있습니다. 관리 작업 지원, 액세스 유지, 상황 인식 제공, 권한 상승, 대상 네트워크 확산을 위한 30개 이상의 모듈을 갖추고 있습니다.
weevely 및 해당 종속성을 설치하려면 Install 페이지를 읽으십시오.
에이전트를 생성하고 연결하려면 Getting Started 페이지를 읽으십시오.
예제와 사용 사례를 보려면 Wiki를 둘러보십시오.
weevely generate <password> <path>
weevely <URL> <password> [cmd]
에이전트는 AV(Antivirus)에 거의 탐지되지 않는 작고 다형성(Polymorphic)을 가진 PHP 스크립트이며, 통신 프로토콜은 HTTP 요청 내에서 난독화됩니다.
Weevely는 내부 감사, 계정 열거자(account enumerator), 민감 데이터 스크레이퍼, 네트워크 스캐너를 구현하고 모듈을 HTTP 또는 SQL 클라이언트로 작동시키는 등 다양한 멋진 기능을 쉽게 확장할 수 있습니다.
| 모듈 | 설명 |
|---|
| :audit_filesystem | 파일 시스템의 취약한 권한을 감사합니다. |
| :audit_suidsgid | SUID 또는 SGID 플래그가 있는 파일을 찾습니다. |
| :audit_disablefunctionbypass | mod_cgi 및 .htaccess를 사용하여 disable_function 제한을 우회합니다. |
| :audit_etcpasswd | 다양한 기술로 /etc/passwd를 읽습니다. |
| :audit_phpconf | PHP 구성을 감사합니다. |
| :shell_sh | 셸 명령을 실행합니다. |
| :shell_ssh | SSH를 통해 셸 명령을 실행합니다. |
| :shell_su | su로 명령을 실행합니다. |
| :shell_php | PHP 명령을 실행합니다. |
| :system_extensions | PHP 및 웹 서버 확장 목록을 수집합니다. |
| :system_info | 시스템 정보를 수집합니다. |
| :system_procs | 실행 중인 프로세스를 나열합니다. |
| :backdoor_reversetcp | 리버스 TCP 셸을 실행합니다. |
| :backdoor_tcp | TCP 포트에 셸을 생성합니다. |
| :bruteforce_sql | SQL 데이터베이스에 무차별 대입 공격을 수행합니다. |
| :file_gzip | gzip 파일을 압축하거나 해제합니다. |
| :file_clearlog | 파일에서 문자열을 제거합니다. |
| :file_check | 파일의 속성과 권한을 가져옵니다. |
| :file_upload | 원격 파일 시스템에 파일을 업로드합니다. |
| :file_webdownload | URL을 다운로드합니다. |
| :file_tar | tar 아카이브를 압축하거나 해제합니다. |
| :file_download | 원격 파일 시스템에서 파일을 다운로드합니다. |
| :file_bzip2 | bzip2 파일을 압축하거나 해제합니다. |
| :file_edit | 로컬 편집기에서 원격 파일을 편집합니다. |
| :file_grep | 여러 파일에서 패턴과 일치하는 줄을 출력합니다. |
| :file_ls | 디렉터리 내용을 나열합니다. |
| :file_cp | 단일 파일을 복사합니다. |
| :file_rm | 원격 파일을 제거합니다. |
| :file_upload2web | 파일을 웹 폴더에 자동으로 업로드하고 해당 URL을 가져옵니다. |
| :file_zip | zip 파일을 압축하거나 해제합니다. |
| :file_touch | 파일 타임스탬프를 변경합니다. |
| :file_find | 지정된 이름과 속성으로 파일을 찾습니다. |
| :file_mount | HTTPfs를 사용하여 원격 파일 시스템을 마운트합니다. |
| :file_enum | 경로 목록의 존재 여부와 권한을 확인합니다. |
| :file_read | 원격 파일 시스템에서 원격 파일을 읽습니다. |
| :file_cd | 현재 작업 디렉터리를 변경합니다. |
| :sql_console | SQL 쿼리를 실행하거나 콘솔을 실행합니다. |
| :sql_dump | 다중 DBMS용 mysqldump 대체 도구. |
| :net_mail | 메일을 보냅니다. |
| :net_phpproxy | 대상에 PHP 프록시를 설치합니다. |
| :net_curl | curl과 유사한 HTTP 요청을 수행합니다. |
| :net_proxy | 대상을 통해 HTTP/HTTPS 브라우징을 피보팅하도록 로컬 프록시를 실행합니다. |
| :net_scan | TCP 포트 스캔. |
| :net_ifconfig | 네트워크 인터페이스 주소를 가져옵니다. |