[2024.06.28]
01. 방화벽 비활성화/활성화
c:\netsh firewall set opmode mode=disable <-- 비활성화
c:\netsh firewall set opmode mode=enable <-- 활성화
오늘은 첫 번째로 진행할 실습은 방화벽 비활성화 및 활성화다
Kali linux에서 2008에 침투를 시도하고 shell 사용 화면을 만들어 놓는다
2008에서는 꺼져 있던 방화벽을 다시 켠다
다시 Kali linux에서 명령어를 실행
2008로 가서 확인해 보면 켜기를 설정해 놨던 방화벽이 다시 꺼짐 상태로 확인된다
반대로 꺼진 상태에서 켜는 명령어는 disable에서 enable로 변경만 해 주면 된다
명령어를 입력하고 다시 2008로 확인 시 켜져 있는 화면을 볼 수 있다
이번에는 bind_tcp로 Windows 7에 침투 후 shell을 이용하는 화면까지 설정한다
똑같이 방화벽을 켜고 나서 해당 명령어를 실행
켜져 있던 방화벽이 꺼져 있는 화면이 나온다
*Windows 7에서는 개인 네트워크 방화벽은 꺼지지만 공용 네트워크는 적용되지 않는다
Windows 7에서도 반대의 경우도 진행시켜 본다
꺼짐 상태던 방화벽이 다시 활성화되어 연결된 화면을 확인할 수 있다
02. 스크린 샷
> 5초 간격으로 6장 촬영
meterpreter > run post/windows/gather/screen_spy
> 파일 저장 경로
/root/.msf4/loot
posegresql을 실행시키고 msfdb init을 설정해 준다
Windows 2008로 침투 후 사용 가능한 환경을 만든다
run을 이용하여 위의 명령어를 입력하게 되면 5초 간격으로 6장의 화면이 찰영된다
/root/.msf4/loot 디렉터리로 가서 확인하게 되면 연속으로 찍힌 스크린샷이 존재한다
Kali linux에서 파일을 열고 View -> Show Hidden Files를 해야 하위 디렉터리까지 확인이 가능하다
그런 다음 root 디렉터리의
.msf4로 들어간다
그 중에서 loot를 찾아 들어가게 되면
이렇게 연속으로 찍힌 화면을 볼 수 있다
03. 설치된 애플리케이션 정보 수집
meterpreter > run post/windows/gather/enum_applications
meterpreter 상태에서 run을 이용하여 enum_applications를 입력하게 되면,
설치된 애플리케이션 정보를 수집 가능하다
*현재로는 설치된 게 없어서 빈 화면인 점 참고
04. 설치된 장치 정보 수집
meterpreter > run post/windows/gather/enum_devices
이번에는 설치된 장치 정보 수집을 위해 enum_devices 명령어를 사용한다
명령어를 입력함과 동시에 파일이 하나 더 생겼다
알파벳 순서대로 설치된 장치의 정보를 다 나열하여 확인할 수 있는 화면이 나온다
05. 서비스 정보 수집
meterpreter > run post/windows/gather/enum_services
이번에는 서비스 정보를 수집하는 명령어를 실행해 보려고 한다
이 화면은 파일이 아닌 meterpreter 화면에서 ps를 이용하여 프로그램 확인을 해 본 결과다
ps 입력 시에도 나왔지만 파일이 하나 더 생성되어 이렇게 파일로도 확인 가능하다
06. USB 사용 정보 수집
meterpreter > run post/windows/gather/usb_history
USB 사용 정보도 수집할 수 있지만,
현재 USB 장치를 사용 중이지 않아 실행되지 않는 화면이 나타난다
07. 무선 랜 정보 수집
meterpreter > run post/windows/wlan/waln_profile
무선 랜 정보 수집을 실행하려고 명령어를 찾는 중에
위치가 변경된 걸 알고 find 명령어를 이용하여 wlan 위치를 찾아냈다
마지막으로 waln_profile 명령어를 실행해 주지만 역시 실행되지 않는다
현재 데스크탑을 사용했고, 무선 랜 정보 수집이기 때문에 노트북으로 사용 시 정보가 나타난다
08. 로그 삭제(이벤트 뷰어)
> 시스템 로그 삭제
C:\>wevtutil.exe cl "System"
> 응용 프로그램 로그 삭제
C:\>wevtutil.exe cl "Application"
> 보안 로그 삭제
C:\>wevtutil.exe cl "Security"
로그 삭제 실습을 진행 전에
Windows 2008에서 로그의 기록을 볼 수 있는 것은
시작 -> 관리 도구 -> 이벤트 뷰어뿐이다
여기에서 응용 프로그램, 보안, 시스템이 3대 보안이다
본인이 검색, 다운로드받고 했던 기록들이 여기에 다 남아 있다
이제 그 로그를 삭제하는 실습을 진행해 보려고 한다
2008 서버로 침투 후 shell 화면을 사용할 수 있게 환경을 설정한다
wevtutil.exe cl "삭제할 로그명"
위의 명령어를 입력해 준 후 2008로 가서 확인한다
이벤트 뷰어를 열어 시스템, 응용 프로그램, 보안을 열어 확인
방금 전 무수히 많았던 기록들이 삭제 명령어를 사용하여 사라지고 없는 걸 확인할 수 있다
다시 로그를 생성하기 위해 검색 및 프롬프트를 이용하여 ping도 돌려 본다
내가 방금 전 했던 기록들이 다시 기록되어 있다
시스템에 기록되어 있기 때문에 System 삭제를 진행한다
그렇게 되면 시스템 로그에 생겨났던 기록도 다 삭제가 된다
로그 삭제에 이어 추가 실습을 진행하려고 한다
먼저 set rhost를 이용해 Windows 7으로 지정해 준다
공격 시 제대로 공격이 되어 해당 Windows 7의 정보가 나타나는 걸 알 수 있다
그러나 Windows 7에서 어댑터 -> 로컬 영역 연결 속성에 들어가서
Microsoft 네트워크용 파일 및 프린터 공유의 체크를 해제시키게 되면
아까 공격이 먹혀 정보를 제공해 주던 microsoft-ds가 사라지게 된다
이때 공격하게 되면 먹히지 않고 정보도 제공되지 않는다
Windows 10에서도 테스트를 해 본다
앱 및 기능 -> 프로그램 및 기능 -> Windows 기능 켜기/끄기로 들어가면
처음에는 SMB 1.0/CIFS 파일 공유 지원이 해제되어 있다
그렇기 때문에 정보를 얻기 위해서는 해당 부분을 체크 후 리부팅을 시도한다
set rhost 192.168.10.202로 Windows 10으로 지정시킨 후
nmap을 통해 microsoft-ds가 존재하는지 확인한다
나타나게 된다면 run이나 exploit을 이용하여 공격
공격 시도 시 Windows 10의 PC 정보를 얻을 수 있게 되는 걸 확인할 수 있다
이것을 취약점을 이용하여 윈도우 정보를 얻는 것이라고 보면 된다
강의 소감
아직도 완벽히 다룰 수 있는 게 아니기 때문에 초반부의 bind_tcp부터 헤맸다
rever_m과 bind_tcp를 둘 다 사용하려다 보니까 헷갈리기도 하고,
또 Windows가 업데이트를 하게 되면 또 msfconsole이 먹히지 않아 종종 곤란하다
그렇기 때문에 지금은 둘의 사용법부터 완벽하게 숙지해야 되는 점을 알게 됐다
오늘도 배울 점 많은 수업 시간이었고 내일도 열심히 해야겠다