2024. 9. 19. 12:24ใSWLUG/web hacking
๐์น ๊ธฐ์ด ์ง์
- ์ด์ฉ์๊ฐ ๋ธ๋ผ์ฐ์ ๋ฅผ ์ด์ฉํ์ฌ ์น์๋ฒ์ ์ ์
- ๋ธ๋ผ์ฐ์ ๋ ์ด์ฉ์์ ์์ฒญ์ ํด์ํ์ฌ HTTPํ์์ผ๋ก ์น ์๋ฒ์ ๋ฆฌ์์ค๋ฅผ ์์ฒญ
- HTTP๋ก ์ ๋ฌ๋ ์ด์ฉ์์ ์์ฒญ์ Server Application์์ ํด์
- ํด์ํ ์ด์ฉ์์ ์์ฒญ์ ๋ฐ๋ผ ์ ์ ํ ๋์์ ์ํ
- ๊ณ์ข ์ก๊ธ, ์ ๊ธ๊ณผ ๊ฐ์ ๋ณต์กํ ๋์์ ์๊ตฌํ ๊ฒฝ์ฐ ๋ด๋ถ์ ์ผ๋ก ํ์ํ ์ฐ์ฐ์ ์ฒ๋ฆฌ
- ์ด์ฉ์์๊ฒ ์ ๋ฌํ ๋ฆฌ์์ค๋ฅผ HTTP ํ์์ผ๋ก ์ด์ฉ์์๊ฒ ์ ๋ฌ
- ๋ธ๋ผ์ฐ์ ๋ ์๋ฒ์๊ฒ ์๋ต๋ฐ์ HTML,CSS,JS ๋ฑ์ ์น ๋ฆฌ์์ค๋ฅผ ์๊ฐํํ์ฌ ์ด์ฉ์์๊ฒ ๋ณด์ฌ์ค
๐HTTP /HTTPS
HTTP๋ ์๋ฒ์ ํด๋ผ์ด์ธํธ์ ๋ฐ์ดํฐ ๊ตํ์ ์์ฒญ๊ณผ ์๋ต ํ์์ผ๋ก ์ ์ํ ํ๋กํ ์ฝ์ ๋งํ๋ค.
HTTP ํ๊ณ์ : HTTP์ ์๋ต๊ณผ ์์ฒญ์ ํ๋ฌธ์ผ๋ก ์ ๋ฌ๋๋ฉฐ, ๋ง์ฝ ๋๊ตฐ๊ฐ ์ด๋ฅผ ๊ฐ๋ก์ฑ๋ค๋ฉด ์ค์ํ ์ ๋ณด๊ฐ ์ ์ถ๋ ์ ์๋ค.
๐Hijack a session
๊ณต๊ฒฉ๊ฐ์๋ ๋ค์๊ณผ ๊ฐ๋ค.
OWASP ์ ์ : ์ธ์ ํ ํฐ์ ํตํด ๊ด๋ฆฌ๋๋ ์น ์ธ์ ์ ์ด ๋งค์ปค๋์ฆ์ ์ ์ฉํ๋ ๊ฒ
๊ฐ๋ฐ์๊ฐ ์ง์ ๊ฐ๋ฐํ ์ธ์ ๋๋ ํ ํฐ์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์ฉํ ๋ ์์ ์ ์ํ ์ธ์ ๊ฐ์ ๋ณต์ก์ฑ๊ณผ ๋ฌด์์์ฑ์ ๋ฌด์ํด ์งํํ๋ฉด ํด์ปค๋ ๋ฌด์ฐจ๋ณ ๋์ ๊ณต๊ฒฉ์ผ๋ก ์ธ์ ๊ฐ์ ํ์ทจํ ์ ์๋ค.
์ฐ์ ์ค์ต์ ์ WebGoat ๋ก๊ทธ์ธ์ ํ๊ณ Hijack a session ํญ์ผ๋ก ์ด๋ํด์ค๋ค.
Desktop Docker ์ปจํ ์ด๋ ์คํ์ฌ๋ถ๋ฅผ ํ์ธํ๋๋ฐ ๋๋ ์ฌ๊ธฐ์ ์คํ์ด ๋์ง ์์์, Windows Powershell ๋ก ์คํํ๋ค.
์คํ์ ./mvnw spring-boot:run ์ ํตํด ๊ฐ๋ฅํ๋ค.
์ค์ต์ ์ BurpSuite๋ ์ ํ ํด์ผํ๋๋ฐ, WebGoat์ ๋ง์ถฐ์ 8080ํฌํธ๋ก ์์ ํด์ค์ผํ๋ค.
์ดํ ์ฃผ์์ฐฝ์ ํตํด WebGoat์ ์ํ๋๋ฐ, ์ด๋ BurpSuite์์ intercept๋ฅผ offํ๋ฉด ๋ก๊ทธ์ธ ํ์ด์ง๋ก ๋์ด๊ฐ๋ค.
๊ทธ๋ฆฌ๊ณ ๋ค์ on์ผ๋ก ๋ณ๊ฒฝํ๊ณ username๊ณผ password๋ฅผ ์์์ ๊ฐ์ผ๋ก ์ ๋ ฅํ ํ ๋ก๊ทธ์ธ์ ์๋ํ๋ค.
์ด๋ ๊ฒ ํ๋ฉด ์์๋ก ์ ๋ ฅํ ๊ฐ์ด BurpSuite๋ฅผ ํตํด ์ถ๋ ฅ๋ ๊ฒ์ ํ์ธ ํ ์์๋ค.
๋ณธ ์ค์ต์ ๊ณ์ BurpSuite๋ฅผ ์ฌ์ฉํ๋ฏ๋ก off์ํ๋ก ๋ณ๊ฒฝํ์ง ์๊ณ BurpSuite์ ์ ์ํ WebGoat๋ธ๋ผ์ฐ์ ์์ ๋ก๊ทธ์ธ ์งํํ๋๋ฐ, ์๋์ง ์์ ๊ฒฝ์ฐ on, off๋ฅผ ์๋ค๊ฐ๋ค ํ๋ฉด์ ํ๋ฉด ๋๋ค.
์ค์ต์ ํ๋ฉด์ ํ๋ก์ ์ ํ๋ฆฌ์ผ์ด์ ์ธ BurpSuite๋ฅผ ๊ฑฐ์น HTTP ์์ฒญ ๋ฐ ์๋ต ๊ธฐ๋ก์ ๋ณด๊ธฐ์ํด HTTP history ํญ์ผ๋ก ์ด๋ํ๋ค.
๊ทธ๋ฌ๋ฉด ์์ฒญ ๋ด์ฉ์ค์ login๊ณผ ๊ด๋ จํ HTTPํต์ ์ ์ฐพ์ ์ ์๋ค.
Request์์ญ์ ์์ฒญ ๋ด์ฉ์ ํ์ธํ๋ฉด ์์๋ก ์ ๋ ฅํ ๊ฐ์ ํ์ธ ํ ์ ์๋ค.
๋ํ Response์์ญ์ HTTP ๊ธฐ๋ก์์ Set-Cookie๋ผ๋ ์๋ต header๋ฅผ ๋ณผ์ ์๊ณ , hijack cookie๊ฐ๋ ํ์ธํ ์ ์๋ค.
Intruder๋ฅผ ์ด์ฉํ ๊ณต๊ฒฉ ์๋๋ฅผ ํ๊ธฐ์ํด ์ฐํด๋ฆญํ์ฌ Send to Intruder๋ฅผ ์งํํ๋ค.
์ดํ Intruder ํญ์ ํด๋ฆญํ๊ณ Positions์ ์ ํํด์ ํ์ด๋ก๋ Positions ํ๋ฉด์ ํ์ธํ ์ ์๋ค.
์ฐธ๊ณ ๋ก Intruder๋ ์๋ํ ๊ณต๊ฒฉ ๋๊ตฌ๋ก ๋์ผํ HTTP์์ฒญ์ ์ฌ๋ฌ ๋ฒ ๋ฐ๋ณต์ ์ผ๋ก ๋ณด๋ด๋ ๋ฌด์ฐจ๋ณ ๊ณต๊ฒฉ์ ์์ํ๋๋ฐ ํ์ ์ ์ค์ ๋ ์์น์ ๊ฐ์ ๋ณ๊ฒฝ๊ฐ๋ฅํ ๊ฒ์ ์๋ฏธํ๋ค.
๋ฌด์ฐจ๋ณ ๊ณต๊ฒฉ ์ ์ค์ ํ ์์น์ ๊ฐ์ ๋ณ๊ฒฝํ๊ธฐ ์ํด ์ด๊ธฐํ ์์ ์ ์งํํด์ค๋ค.
Intruder๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด ๋ฌด์กฐ๊ฑด ๋ณ๊ฒฝํ ๊ฐ์ ์์น๋ฅผ ์ง์ ํด์ค์ผํ๊ธฐ ๋๋ฌธ์ ์์๋ก password ํ๋ผ๋ฏธํฐ๋ฅผ ๋ณ๊ฒฝํ์ฌ ๊ณต๊ฒฉ์ ์ํํ๋ค.
passwordํ๋ผ๋ฏธํฐ์ ๋์ ๋ ๊ฐ์ ๋๋๊ทธํ ํ Add § ๋ฒํผ์ ํด๋ฆญํ๋ฉด ๋๋๊ทธํ ๋ถ๋ถ์ ์ถ๊ฐ๋๋ฉด์ ์์น๊ฐ ์ง์ ๋๋ค.
- ๋๋๊ทธํ ๋ถ๋ถ์ §๊ฐ ์ถ๊ฐ๋๋ฉด์ ์์น๊ฐ ์ง์ ๋๋ ๊ฒ์ด๋ค.
์ดํ, Payloads, Payload sets, Payload settings, Number format ์์ญ์ ์๋ง๊ฒ ์ง์ ํ์ฌ ์ค๋ค.
์ค์ต์ ์งํํ๋ฉด, ์ ํด์ง ํฌ๊ธฐ๋งํผ ์ ์ก๋ ์์ฒญ์ ํ์ธํ ์ ์๊ณ , ํต์ ์ ๋ํ ์์ฒญ๊ณผ ์๋ต ๋ด์ฉ์ ํ์ธ ํ ์ ์๋๋ฐ,
'-'๊ธฐํธ๋ฅผ ๊ธฐ์ค์ผ๋ก ์์ ์ซ์ 1์ด ์ฆ๊ฐ๋๋ ๊ฒ์ ์ ์ ์๋ค.
์์ฒญ์ ๋ณด๋ผ๋๋ง๋ค ์ซ์๊ฐ ํ๋์ฉ ์ฆ๊ฐํ๋ค๋ ์๋ฏธ์ด๋ค.
๊ทผ๋ฐ '-'๊ธฐํธ๋ฅผ ๊ธฐ์ค์ผ๋ก ์ซ์ 2๊ฐ ์ฆ๊ฐ๋ ๊ฒ์ด ์๋ค. ์ด๋ ๊ทธ ์์ฒญ ์ฌ์ด์ ๋๊ตฐ๊ฐ๊ฐ ์์ฒญ์ ๋ณด๋๊ณ ๊ทธ ์์ฒญ์ ๋ํ hijack cookie ๊ฐ์ ํ ๋น๋ฐ์์ ๊ฑฐ๋ ๊ฒ์ ์๋ฏธํ๋ฏ๋ก ๊ทธ๋ถ๋ถ์ ์ฌ์ด๊ฐ๊ณผ ๊ณตํต๋ ๊ฐ์ ์ ์ถํ๋ค.
๋๋ -์์ผ๋ก 3์๋ฆฌ๊ฐ 930์ด๋ผ๊ณ ์ถ์ธกํ ์ ์๊ณ , -๊ธฐ์ค์ผ๋ก ์ค๋ฅธ์ชฝ ๋งจ๋ค ์๋ฆฌ๊ฐ 3์๋ฆฌ๋ง ๋ฐ๋๊ณ ์๋ค.
ํด๋น ๋ถ๋ถ๋ง positions์ผ๋ก ๊ฐ์ ์ค์ ํด์ฃผ๊ณ , payloads๋ฅผ ํตํด ๋ค์ ๊ณต๊ฒฉ์ ์งํํด์ค๋ค.
-----------------------+ ์ถ๊ฐ ์ค์ต ์คํ------------------------(์ง์๋ ์ค๋ฅ๋ก WebGoat์คํ์ด ์์์๋๋๋ฐ, ์์ ๋ฃ๊ธฐ์ ์ ์ง์์ ์ผ๋ก ์๋ํด์ ์ฑ๊ณตํจ)
์ค์ต์ ์ํด ํฌํธ ๋ฒํธ๋ฅผ ๋ฐ๊ฟจ๋ค.
์ธํฐ์ ํธ๋ฅผ on์ผ๋ก ๋๊ณ ๋์ ํด๋น ๋ฌธ์ ๋ฅผ ๋ค์ด๊ฐ์ login์ testํด๋ณด๋ฉด ํด๋น ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด username๊ณผ password๊ฐ ๋ณด์ธ๋ค.
http history๋ก ๊ฐ๋ฉด webgoat hijacking๋ฌธ์ ๋ก๊ทธ์ธ ์๋์ ๊ดํ ๊ธฐ๋ก์ด ๋จ์์๋๋ฐ ์ด์ ๊ฐ์ด request์ response๋ก ๊ตฌ์ฑ๋์ด ์๊ณ , ์ ์์ ์ผ๋ก ์์ฒญ์ด ์คํ๋ ๊ฒ์ ์ ์ ์๋ค.
์ถ๊ฐ ์ค์ต ๋!!
'SWLUG > web hacking' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Web Hacking ๊ณผ์ _1(webhacking.kr /old-52) (0) | 2024.09.19 |
---|---|
7์ฃผ์ฐจ_Webhacking ๊ณผ์ 1 : dreamhack [command-injection-chatgpt] (1) | 2023.11.18 |
7์ฃผ์ฐจ_Webhacking ๊ณผ์ 4 : dreamhack [Command Injection Advanced] (0) | 2023.11.18 |
7์ฃผ์ฐจ_Webhacking ๊ณผ์ 3 : webhacking.kr [challenge 44] (1) | 2023.11.18 |
7์ฃผ์ฐจ_Webhacking ๊ณผ์ 2 : dreamhack [command-injection-1] (0) | 2023.11.17 |