์ธ๋ถ์์ ping์ด๋ tracert์ ์๋ตํ์ง ์๊ธฐ
ํด์ปค๊ฐ ํ๊ฒ ์๋ฒ์ IP๋ฅผ ์์ ์ ์ถ๋ฐ์ง ๋คํธ์ํฌ๋ก ์์ฅํด์ ์ ์ฒด ๋คํธ์ํฌ์์ ํน์ ๋
ธ๋๋ฅผ ์ฐพ๋ ARP echo request๋ฅผ ๋ธ๋ก๋์บ์คํ
ํ๋ฉด, ๋ชจ๋ ํด๋ผ์ด์ธํธ๋ค์ด ์ด ๋ธ๋ก๋์บ์คํธ๋ฅผ ๋ฐ๊ณ ํด๋น ๋
ธ๋๊ฐ echo reply ์ ๋์บ์คํ
์ผ๋ก ์์ ์ MAC ์ฃผ์๋ฅผ ํด์ปค์๊ฒ ์๋ตํ๋ฏ๋ก ๋คํธ์ํฌ์์ ํธ๋ํฝ์ด ๊ณผ๋ถํ ๋์ด ์๋ฒ๊ฐ DoS ๊ณต๊ฒฉ์ ๋ฐ๊ฒ ๋๋ ์
์ด ๋ ์๋ ์๋ค. <- ping of death ๊ณต๊ฒฉ
๋ nmap -sS(stealth) 192.168.100.100(ํ๊ฒ)์์ผ๋ก ํ๊ฒ๋จธ์ ์ ์๋น์ค์ ํฌํธ๋ฅผ ์์๋ด๋ nmap ๋๊ตฌ๋ ICMP ํ๋กํ ์ฝ์ด ์ฌ์ฉ๋๋ฏ๋ก echo request์ ๋ํ echo reply๋ฅผ ๋ง์๋๋ฉด ๋ด๋ถ ์ ๋ณด๊ฐ ๋
ธ์ถ๋์ง ์์ ๊ฒ์ด๋ค.
=>์ด๋ฐ ๊ณต๊ฒฉ์ ๋ง์ผ๋ ค๋ฉด ๋ธ๋ก๋์บ์คํธ๋ก ์์ฒญ๋๋ echo request ICMP ํจํท์ ์๋ตํ์ง ์๊ฒ ํ๊ฑฐ๋, ๋ผ์ฐํฐ์ ์๋ฒ์ ํจํท ํํฐ๋ง์ ๊ฑธ์ด์ ํจํท ๋์ ์กฐ์ ํด๋๋ฉด ๋๋ค.
BT์์ ํ์ ๋ณด๋ด๋ฉด ์ ๊ฐ๋ค.
1๋ก ๋ฐ๋์๋ค.
์๋ต์ ์ํ๊ฒ ํด์คฌ๋ค.
๋ค์ด๋ฒ์ ์ผ๋ฐ ํํ์ด์ง์ ํ ์ฐจ์ด, ์๋ต์ ํ๊ณ ์ ํ๊ณ ๊ฐ ๋ณด์์ ์ฐจ์ด๋ค.
Buffer Overflow ๊ณต๊ฒฉ
ํ๋ก๊ทธ๋จ์ ๊ฒฐํจ์ ์ด์ฉํด์ ์คํ ์ค์ธ ํ๋ก์ธ์ค๋ฅผ ๋นผ์์ ์
์ฑ ์ฝ๋๋ฅผ ์คํ์ํค๊ฑฐ๋, ์์คํ
์ ๊ฐ์ ์ข
๋ฃ์ํค๊ฑฐ๋, ๊ถํ์์น์ ํตํด์ ๊ด๋ฆฌ์ ์์ ์ป๊ฒ ํด์ฃผ๋ ๋ฒํผ(ํ๋ก๊ทธ๋จ์ด ์คํ๋ ๋ ์ผ์์ ์ผ๋ก ์ฌ์ฉํ๋ ๋ฉ๋ชจ๋ฆฌ ์์ญ) ์ค๋ฒํ๋ก๋ฅผ ๋ง์ ์ ์์ด์ผ ํ๋ค. ์ผ๋ฐ์ ์ผ๋ก ํ๋ก๊ทธ๋จ์ ๋ฒํผ ๋ฉ๋ชจ๋ฆฌ์ ํ๋ณด๋ ์์ ์ ๋ฉ๋ชจ๋ฆฌ ์์ญ(๋ฉ๋ชจ๋ฆฌ ์ฃผ์)์์ ์คํ๋๋ฏ๋ก ์ด ์์ญ์ ๋๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ค. ํ์ง๋ง ๋ฒ๊ทธ๋ ์
์ฑ์ฝ๋ ๋ฑ์ผ๋ก ์ด ์ ์ฅ ๊ณต๊ฐ ์์ญ์ ๋์ด์๋ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์ผ๋ฉด ์ค๋ฒ๋๋ ์ฉ๋๋งํผ ์ด์ํ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ผ๋ก ๋ค์ด๊ฐ๊ฒ ๋์ด์ ์ด์ํ ๋ฉ๋ชจ๋ฆฌ์ ๋ค์ด์๋ ๋ฐ์ดํฐ๊ฐ ์คํ๋๊ฑฐ๋ ์ธ๋ถ๋ก ๋ด์ฉ์ด ๋๋ฌ๋๊ฒ ๋๋ค. ์ด๋ฐ ๊ณต๊ฒฉ์ด ๋ฒํผ ์ค๋ฒํ๋ก์ด๋ค. ์์ ๊ณผ ๋ค๋ฅด๊ฒ ์ต๊ทผ์ ํ๋ก๊ทธ๋จ๋ค์์๋ ์ด๋ฐ ๋ฒํผ ์ค๋ฒํ๋ก ๊ณต๊ฒฉ์ด ์ด๋ ต์ง๋ง C๋ C++๋ก ์์ฑ๋ ํ๋ก๊ทธ๋จ์ ์์ ๋กญ๊ฒ ๋ฉ๋ชจ๋ฆฌ ์์ญ์ ๋๋๋ค ์ ์์ด์ ์ํํ๋ฏ๋ก C/C++๋ก ์์ฑ๋ ํ๋ก๊ทธ๋จ์ ๋ณด๋ฉด ์ฃผ์๋ฅผ ๊ธฐ์ธ์ฌ์ผ ํ๋ค. <=์ต๊ทผ์๋ ๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น(malloc: memory allocation)์ ์ด์ฉํ๊ธฐ ๋๋ฌธ์ ์คํ๋ ค ๋ ๋ฒํผ ์ค๋ฒํ๋ก ๊ณต๊ฒฉ์ด ์ฌ์์ง๊ธฐ๋ ํ๋ค.
=>๋ฐ๋ผ์ malloc(), strcpy(), wcscpy(), strcat(), getwd(), scanf() ๋ฑ ์์ ํ์ง ์์ ํจ์๋ฅผ ๊ฒ์ฌํด์ฃผ๋ ์๊ณ ๋ฆฌ์ฆ(LibSafe)์ด ์์คํ
์ ๋ค์ด ์์ด์ผ ํ๋ค. ๋ฌผ๋ก gcc-c++๊ณผ ๊ฐ์ ์ปดํ์ผ๋ฌ๋ฅผ ์ผ๋ฐ ์ฌ์ฉ์๊ฐ ์ฌ์ฉํ๊ฒ ํด์๋ ์ ๋๋ ๊ฒ์ ์์์ ์์ ๋ณด์๋ค.
*์ด๊ธฐํ: ์ด์ ์ ์คํํ๋ ํ๋ก๊ทธ๋จ, ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ ๋ฑ์ debris๋ฅผ ์ ๋ถ ์์ ๋ฒ๋ฆฌ๋ ๊ฒ
gcc-c++์ ์ค์นํด์ค๋ค.
exit ํ๊ณ nano buffer.c์ ๋ค์ด๊ฐ ๋ด์ฉ
#include <stdio.h>
#include <stdlib.h>
int main() {
char *name; #๋ฉ๋ชจ๋ฆฌ๊ฐ ์ ์ฅ๋ ๊ณต๊ฐ์ ์ง์ ํ๋ ๊ฒ
char *command;
name=(char *)malloc(10); #๋์ ๋ฉ๋ชจ๋ฆฌ ํ ๋น, ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋์ด๋ ์ ์๋ค
command=(char *)malloc(128);
printf("Address of name is : %d\n", name);
printf("Address of command is : %d\n", command);
printf("Difference between name and command is : %d\n", command-name);
printf("Enter your name: ");
gets(name);
printf("Hello %s\n", name);
system(command);
}
gcc buffer.c -o bufferํ๋ค.
ls๋ฅผ ๋๋ฅด๋ฉด buffer ์คํํ์ผ์ด ์๊ฒจ ์๋ค.
์คํํด์คฌ๋๋ ์์ฃผ ์ ๋๋ค. paul์ 4๋นํธ๋ฐ์ ์ ๋ผ์ overflow๊ฐ ๋์ง ์์๋ค.
๋๊ฒผ๋๋ ๋ช ๋ น์ด๊ฐ ๋ญ์ง ๋ชจ๋ฅด๊ฒ ๋๋ฐ?
๋ช ๋ น์ด๋ฅผ ์คํํ๋ค.
Server ์ค์ผ(contamination) ๊ณต๊ฒฉ
ํ๊ฒ ์น ์ฌ์ดํธ์ ๋ํด์ ์๋ฒ ์ค์ผ(Server contamination)์ผ๋ก ๊ณต๊ฒฉํ๊ธฐ๋ ํ๋๋ฐ XSS์ CSRF๊ฐ ์๋ค.
a. XSS(Cross Site Script)
์ธ๋ถ์
๋ ฅ์ ๋ฐ๋ ์น ์๋ฒ์ ์ธํฐํ์ด์ค์ ์ธ๋ถ์ ๊ณต๊ฐ๋๋ ๊ฒ์ํ์ด๋ ๋ฐฉ๋ช
๋ก ๋ฑ ์๋ฒ ์ฌ์ดํธ์ ํด๋ผ์ด์ธํธ๊ฐ ์ ์ํ ๋ ์ด XSS๋ฅผ ํตํด์ ์ฐ๊ฒฐ๋๋ ํด๋ผ์ด์ธํธ ๋จธ์ ์ด ํดํน๋นํ ์ ์๋ค. ์ค์ผ๋ ์๋ฒ๋ฅผ ํตํด์ ํด๋ผ์ด์ธํธ์ ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด์ ๊ฐ์ผ๋๊ฒ ํ๋ ๊ธฐ๋ฒ์ผ๋ก์จ ํด๋ผ์ด์ธํธ๊ฐ ์น ์๋ฒ์ ์ ์ํ๋ฉด ์๋ฒ์์ ์คํ์ค์ธ Java Script/HTML ์์ค์ฝ๋๊ฐ ํด๋ผ์ด์ธํธ์ ์น ๋ธ๋ผ์ฐ์ ์ ์ ์ก๋์ด์ ธ ํ์๋๋ ์๋ฆฌ๋ฅผ ์
์ฉํด์ ํด์ปค๊ฐ ๊ณต๊ฒฉ ์คํฌ๋ฆฝํธ๊ฐ ํฌํจ๋ ๊ธ์ ๊ฒ์ํ์ ์ฌ๋ ค๋๊ณ ์ผ๋ฐ ์ฌ์ฉ์๊ฐ ์ด๋ฅผ ์ฝ์ผ๋ ค๊ณ ํด๋ฆญํ๋ฉด ๊ฒ์ํ์ ํฌํจ๋ ์
์ฑ์ฝ๋๊ฐ ์ฌ์ฉ์์ ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด์ ์ฌ์ฉ์ ๋จธ์ ์ผ๋ก ๋ค์ด๊ฐ์ ์ฌ์ฉ์์ ๋ก๊ทธ์ธ ์ ๋ณด ๋ฑ์ ํด์ปค์๊ฒ ์ ์กํ๋ ์์ ์นจํฌ๊ฐ ์ด๋ค์ง๋ ๊ฒ์ด๋ค.
์ด๋ฐ ์นจํฌ๋ ์น ์๋ฒ์ (์คํ) ์คํฌ๋ฆฝํธ๊ฐ ํํฐ๋ง๋์ง ์๊ณ ๊ทธ๋๋ก ์ฌ์ฉ์ ๋จธ์ ์ผ๋ก ์ฎ๊ฒจ์ ธ์ ์คํ๋๋๋ฐ ๋ฌธ์ ๊ฐ ์๋ค. XSS์๋ reflected(์ธ๋ถ์์ ์ฌ๋ฆฌ๊ธฐ)์ stored(์๋ฒ์ ์ ์ฅํด๋๊ธฐ) ๋ ๊ฐ์ง ๊ธฐ๋ฒ์ด ์๋ค.
=>์ด๋ฐ ๊ณต๊ฒฉ์ ๋ง์ผ๋ ค๋ฉด ์ด๋ ฅ์๋ ์์์ ๋ฑ ์
๋ ฅ๋๋ ํ์ผ์ด๋ ์ฒจ๋ถํ์ผ์ ํ์ฅ์๊ฐ com, bat, exe, sh, php ๋ฑ ์คํ ํ์ผ์ด๋ฉด ๊ธ์งํ๊ณ ,
=>ํ์ฅ์๋ฅผ ๋ณ๊ฒฝํด์ ์ฌ๋ฆฌ๋ ๊ฒฝ์ฐ๋ ๋ง๊ธฐ ๋๋ฌธ์ ํ์ฅ์์ ๋ณ๊ฒฝ์ฌ๋ถ๋ ํ์ธํ๋ ์๋จ์ด ์์ด์ผ ํ๋ค. jpg(steganography), pdf, zip ๋ฑ์ ํต๊ณผ๋๋ฏ๋ก ๋งค์ฐ ์ฃผ์ํด์ผ ํ๋ค.
b. CSRF(Cross Site Request Forgery)
CSRF๋ XSS์ ์ ์ฌํ ์๋ฒ ์ค์ผ ๊ณต๊ฒฉ๋ฒ์ผ๋ก ์๋ฒ๋ฅผ ์ฅ์
ํ๊ธฐ ์ํด์ ์๋ฒ๋ฅผ ๊ณต๊ฒฉํ๋ ๊ธฐ๋ฒ์ด๋ค. ์๋ฒ ์ฌ์ดํธ์ ๋ํ ์ธ์ฆ์๋ฅผ ์์ด๊ฑฐ๋ ์
์ฑ ์คํฌ๋ฆฝํธ๊ฐ ์ฝ์
๋ ๊ฒ์๋ฌผ ๋ฑ์ ์๋ฒ์ ๋
ธ์ถ์์ผ์ ์๋ฒ์ ์นจํฌํ ๋ค ๋ฃจํธํท(์
์ฑ์ฝ๋ ๊ฐ์ถ๊ธฐ๋ ํ๊ณ ๋ง ๊ทธ๋๋ก ๋ฃจํธํท์ ๋ฃจํธ(Root) ๊ถํ์ ์ฝ๊ฒ ์ป๊ฒ ํด์ฃผ๋ ํท(Kit), ํดํน ๋๊ตฌ)์ด๋ ๋ฐฑ๋์ด ๋ฑ์ ์ฌ์ด๋๋ค.
=>์ด๋ฐ ๊ณต๊ฒฉ์ ๋ง์ผ๋ ค๋ฉด ์์ง ๋ชปํ๋ ํ์ผ์ ์ด๊ฑฐ๋ ์๋ก์ด ์
๋ฐ์ดํธ ๋ฑ์ด ์๋ค๋ ์๋ด์ ๋ฐ๋ผ์ ํจ๋ถ๋ก ํด๋ฆญํ์ง ์๋ ๊ฒ์ด ์ข๋ค.
==>๋ฐ๋ผ์ ์น์์ ์ด๋ฐ ์
๋ฐ์ดํธ๋ ์๋ก์ด ์๋ด์ ๋ฐ๋ฅด์ง ๋ง๊ณ ๋ก์ปฌ์ ํ์์๋ฒ๋ฅผ ๊ตฌ์ถํด์ ์ด์ํ๋ ๊ฒ์ด ์ข๋ค.
XSS์ CSRF์ ์ฐจ์ด์์ฝ
- XSS๋ ๊ณต๊ฒฉ๋์์ด Client์ด๊ณ , CSRF๋ Server์ด๋ค.
- XSS๋ ์ฌ์ดํธ๋ณ์กฐ๋ ๋ฐฑ๋์ด๋ฅผ ํตํด ํด๋ผ์ด์ธํธ์ ๋ํ ์ ์ฑ๊ณต๊ฒฉ์ ํ๋ค.
- CSRF๋ ์์ฒญ์ ์์กฐํ์ฌ ์ฌ์ฉ์์ ๊ถํ์ ์ด์ฉํด ์๋ฒ์ ๋ํ ์ ์ฑ๊ณต๊ฒฉ์ ํ๋ค.
์ถ์ฒ: https://program-developer.tistory.com/99
Session์ ๋
ธ๋ A์ ๋
ธ๋ B๊ฐ ์๋ก ์ฐ๊ฒฐ๋์ด์ ธ ์๋ ์ํ์์ ์ธ์
์ด ์๋ค๊ณ ๋ถ๋ฅธ๋ค.
=>Session Hijacking์ด ์๋ค.
hunt๋ผ๋ ๋๊ตฌ๊ฐ ์๋๋ฐ Man in the Middle์์ ๊ณต๊ฒฉ์ด๋ค. MitM์์๋ ๊ฐ์ด๋ฐ ๋ผ์ด์๋ ํด์ปค ๋จธ์ ์ด A์๊ฒ๋ B์ฒ๋ผ, B์๊ฒ๋ A์ฒ๋ผ ํ๋ํด์ผ ํ๋ฏ๋ก ์ค๊ฐ์ ip packet forward๋ฅผ ํด ๋์ด์ผ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ํด์ปค ๋จธ์ ์ ์ค๊ฐ๋ ๋ชจ๋ ํจํท์ ๋ณด๊ธฐ ์ํด์ NIC๋ฅผ Promisc(uous) mode๋ก ํด๋์ด์ผ ํ๋ค. ๋ ๋
ธ๋์ ์ธ์
์ ๋ง๋ค๊ธฐ ์ํด์ Telnet ๋ฑ์ผ๋ก ์ฐ๊ฒฐ์ด ๋์ด ์์ด์ผ ํ๋ค.
*Node A์ B๊ฐ ์ํตํ๊ธฐ ์ํด์ ip forward๊ฐ 1์ด์ด์ผ ํ๋ค.
promisc ๋ชจ๋์ฌ์ผ MAC์ฃผ์๋ฅผ ๋ค ํ์ธํ ์ ์๋ค.
์ถ์ฒ: https://ehwjswjdtls.tistory.com/18
ํํธ๋ก ํ์ด์ฌํน ์ค์ต์ ์ฃผ๋ง์ ํด์ ์ฌ๋ ค์ผ๊ฒ ์ต๋๋ค.....
BT์ ํํธํ์ผ์ ์ฌ๋ ค์ค๋ค.(SHAREDํ์ผ์ ๊ณต์ )
tar xvfz ํํธ
cd hunt-1.5
make
ls
์ผํ ์ค1์์ ๋ฉํ๋ก ๋ค์ด๊ฐ๋ค.
์ด์ฏค์์ ๋ฉํ์ ๋ก๊ทธ์ธํด์ ์ธ์ ์ ๋ง๋ค์ด์ฃผ๊ณ
์ค์ค l(๋ฆฌ์คํธ)์ ๋๋ ๋๋ ๋ด๋ค
ํจ์๋ธ ๋ฐฉ์์ผ๋ก ์๋ตํ๋ค.
a๋ฅผ ๋๋ฅด๊ณ ,
๋ง์ง๋ง yes
์ด์ ์ผํ ์ค์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด ๋ณธ๋ค.
์ด๋ด ์๊ฐ~
ํํธ๊ฐ ์ฃผ๊ณ ๋ฐ์ ๋ํ๋ฅผ ๊ฐ๋ก์ฑ๋ค. both. ๋๋ฌธ์. ๊ฒน์ณ์ ๋ณด์ธ๋ค.
ํจ์ค์๋๊น์ง ๊ฐ๋ก์ฑ๋ค.
์ค์ต ์๋ฃ.