์ ๋ 2020๋ XNUMX๋ถ๊ธฐ๋ฅผ OSCP ์ํ์ ์ค๋นํ๋ฉฐ ๋ณด๋์ต๋๋ค. Google์์ ์ ๋ณด๋ฅผ ๊ฒ์ํ๊ณ ๋ง์ "๋งน๋ชฉ์ ์ธ" ์๋๊ฐ ์์ ์๊ฐ์ ๋ชจ๋ ์ฐจ์งํ์ต๋๋ค. ๊ถํ ์์น ๋ฉ์ปค๋์ฆ์ ์ดํดํ๋ ๊ฒ์ด ํนํ ์ด๋ ค์ ์ต๋๋ค. PWK ๊ณผ์ ์ ์ด ์ฃผ์ ์ ๋ง์ ๊ด์ฌ์ ๊ธฐ์ธ์ด์ง๋ง ๋ฐฉ๋ฒ๋ก ์ ์๋ฃ๋ก๋ ํญ์ ์ถฉ๋ถํ์ง ์์ต๋๋ค. ์ธํฐ๋ท์๋ ์ ์ฉํ ๋ช ๋ น์ด ํฌํจ๋ ์ค๋ช ์๊ฐ ๋ง์ด ์์ง๋ง ์ด๊ฒ์ด ์ด๋๋ก ์ด์ด์ง์ง ์ดํดํ์ง ๋ชปํ ์ฑ ๊ถ์ฅ ์ฌํญ์ ๋งน๋ชฉ์ ์ผ๋ก ๋ฐ๋ฅด๋ ๊ฒ์ ์ง์งํ๋ ์ฌ๋์ ์๋๋๋ค.
์ํ์ ์ค๋นํ๊ณ ์ฑ๊ณต์ ์ผ๋ก ํต๊ณผํ๋ ๋์ ๋ฐฐ์ด ๋ด์ฉ์ ์ฌ๋ฌ๋ถ๊ณผ ๊ณต์ ํ๊ณ ์ถ์ต๋๋ค(Hack The Box์ ๋ํ ์ฃผ๊ธฐ์ ์ธ ์ต๊ฒฉ ํฌํจ). ๋ ์์์ ์ผ๋ก Try Harder์ ๊ธธ์ ๊ฑท๋ ๋ฐ ๋์์ด ๋ ๋ชจ๋ ์ ๋ณด์ ๋ํด ๊น์ ๊ฐ์ฌ๋ฅผ ๋๊ผ์ต๋๋ค. ์ด์ ์ปค๋ฎค๋ํฐ์ ๋ณด๋ตํ ๋์ ๋๋ค.
OS Linux์์ ๊ถํ ์์ค์ปฌ๋ ์ด์ ์ ๋ํ ๊ฐ์ด๋๋ฅผ ์ ๊ณตํ๊ณ ์ถ์ต๋๋ค. ์ฌ๊ธฐ์๋ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๋ฒกํฐ ๋ฐ ๋ฐ๋์ ํ์ํ ๊ด๋ จ ๊ธฐ๋ฅ์ ๋ํ ๋ถ์์ด ํฌํจ๋์ด ์์ต๋๋ค. ์ข ์ข ๊ถํ ์์ค์ปฌ๋ ์ด์ ๋ฉ์ปค๋์ฆ ์์ฒด๋ ๋งค์ฐ ๊ฐ๋จํ๋ฉฐ ์ ๋ณด๋ฅผ ๊ตฌ์กฐํํ๊ณ ๋ถ์ํ ๋ ์ด๋ ค์์ด ๋ฐ์ํฉ๋๋ค. ๋ฐ๋ผ์ "๊ด๊ด ์ฌํ"์ผ๋ก ์์ํ ๋ค์ ๋ณ๋์ ๊ธฐ์ฌ์์ ๊ฐ ๋ฒกํฐ๋ฅผ ๊ณ ๋ คํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์ฃผ์ ๋ฅผ ๊ณต๋ถํ๋ ๋ฐ ์๊ฐ์ ์ ์ฝํ ์ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
๊ทธ๋ ๋ค๋ฉด ๊ถํ ์์น ๋ฐฉ๋ฒ์ด ์์ฃผ ์ค๋ซ๋์ ์ ์๋ ค์ ธ ์์๋ค๋ฉด 2020๋ ์ ๊ถํ ์์น์ด ๊ฐ๋ฅํ ์ด์ ๋ ๋ฌด์์ผ๊น์? ์ค์ ๋ก ์ฌ์ฉ์๊ฐ ์์คํ ์ ์ฌ๋ฐ๋ฅด๊ฒ ์ฒ๋ฆฌํ๋ฉด ์์คํ ์์ ๊ถํ์ ๋์ด๋ ๊ฒ์ด ์ค์ ๋ก ๋ถ๊ฐ๋ฅํฉ๋๋ค. ๊ทธ๋ฌํ ๊ธฐํ๋ฅผ ๋ฐ์์ํค๋ ์ฃผ์ ๊ธ๋ก๋ฒ ๋ฌธ์ ๋ ์์ ํ์ง ์์ ๊ตฌ์ฑ. ์์คํ ์ ์ทจ์ฝ์ฑ์ด ํฌํจ๋ ์ค๋๋ ์ํํธ์จ์ด ๋ฒ์ ์ด ์กด์ฌํ๋ ๊ฒ๋ ์์ ํ์ง ์์ ๊ตฌ์ฑ์ ํน์ํ ๊ฒฝ์ฐ์ ๋๋ค.
์์ ํ์ง ์์ ๊ตฌ์ฑ์ ํตํ ๊ถํ ์์น
์ฐ์ , ์์ ํ์ง ์์ ๊ตฌ์ฑ์ ๋ค๋ฃจ๊ฒ ์ต๋๋ค. ์์ํ์ IT ์ ๋ฌธ๊ฐ๋ ์ข
์ข
stackoverflow์ ๊ฐ์ ๋งค๋ด์ผ๊ณผ ๋ฆฌ์์ค๋ฅผ ์ฌ์ฉํฉ๋๋ค., ๊ทธ ์ค ๋ค์๋ ์์ ํ์ง ์์ ๋ช
๋ น ๋ฐ ๊ตฌ์ฑ์ ํฌํจํฉ๋๋ค. ๋๋ผ์ด ์๋
์์ฌ ์ ๋ฐ ํ์ฅ
์์ฐ ๋จ๊ณ์์ ์ป์ ์์คํ ์ ธ์ ํนํ ์น ์๋ฒ ์ฌ์ฉ์๋ฅผ ํดํนํ์ฌ ์ป์ ๊ฒฝ์ฐ ์ ํ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์๋ฅผ ๋ค์ด ์ ธ ์ ํ์ผ๋ก ์ธํด sudo ๋ช ๋ น์ ์ค๋ฅ์ ํจ๊ป ์ฌ์ฉํ์ง ๋ชปํ ์ ์์ต๋๋ค.
sudo: no tty present and no askpass program specified
์ ธ์ ์ป์ ํ์๋ ์๋ฅผ ๋ค์ด Python์ ์ฌ์ฉํ์ฌ ๋ณธ๊ฒฉ์ ์ธ ํฐ๋ฏธ๋์ ๋ง๋๋ ๊ฒ์ด ์ข์ต๋๋ค.
python -c 'import pty;pty.spawn("/bin/bash")'
"์๋ฅผ ๋ค์ด ํ์ผ์ ์ ์กํ๋ ๋ฐ ํ๋๋ฅผ ์ฌ์ฉํ ์ ์๋๋ฐ ์ ์ฒ ๊ฐ์ ๋ช
๋ น์ด ํ์ํ๊ฐ์?" ์ฌ์ค์ ์์คํ
์ด ๋ค๋ฅด๊ฒ ๊ตฌ์ฑ๋์ด ๋ค์ ํธ์คํธ์ Python์ด ์ค์น๋์ง ์์ ์ ์์ง๋ง Perl์ ์ฌ์ฉํ ์ ์๋ค๋ ๊ฒ์
๋๋ค. ๊ธฐ์ ์ ์น์ํ ๋๊ตฌ ์์ด ์์คํ
์์ ์น์ํ ์์
์ ์ํํ ์ ์๋ ๊ฒ์
๋๋ค. ๊ธฐ๋ฅ์ ์ ์ฒด ๋ชฉ๋ก์ ์ฐพ์ ์ ์์ต๋๋ค.
๋ฎ์ ๊ถํ ์์ ๋ค์์ ์ฌ์ฉํ์ฌ ์ป์ ์ ์์ต๋๋ค.
๋ช ๋ น ๊ธฐ๋ก ๋ณด๊ธฐ
Linux๋ ์คํ๋ ๋ชจ๋ ๋ช ๋ น์ ๊ธฐ๋ก์ ํ์ผ์ ์์งํฉ๋๋ค. ~ / .bash_history. ์๋ฒ๊ฐ ํ์ฑ ์ฌ์ฉ ์ค์ด๊ณ ํด๋น ๊ธฐ๋ก์ด ์ง์์ง์ง ์์ ๊ฒฝ์ฐ ์ด ํ์ผ์์ ์๊ฒฉ ์ฆ๋ช ์ ์ฐพ์ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค. ๊ธฐ๋ก์ ์ง์ฐ๋ ๊ฒ์ ๋งค์ฐ ๋ถํธํฉ๋๋ค. ๊ด๋ฆฌ์๊ฐ ๋ฅผ ํตํด XNUMX๋จ๊ณ ๋ช ๋ น์ ์ ํํด์ผ ํ๋ ๊ฒฝ์ฐ์๋ ๋ค์ ์ ๋ ฅํ๋ ๊ฒ๋ณด๋ค ํ์คํ ๋ฆฌ์์ ์ด ๋ช ๋ น์ ํธ์ถํ๋ ๊ฒ์ด ๋ ํธ๋ฆฌํ ๊ฒ์ ๋๋ค. ๋ํ ๋ง์ ์ฌ๋๋ค์ด ์ด "ํดํน"์ ๋ํด ๋ชจ๋ฆ ๋๋ค. ์์คํ ์ Zsh ๋๋ Fish์ ๊ฐ์ ๋์ฒด ์ ธ์ด ์๋ ๊ฒฝ์ฐ ๊ณ ์ ํ ๊ธฐ๋ก์ด ์์ต๋๋ค. ๋ชจ๋ ์ ธ์์ ๋ช ๋ น ๊ธฐ๋ก์ ํ์ํ๋ ค๋ฉด ๋ช ๋ น ๊ธฐ๋ก์ ์ ๋ ฅํ๊ธฐ๋ง ํ๋ฉด ๋ฉ๋๋ค.
cat ~/.bash_history
cat ~/.mysql_history
cat ~/.nano_history
cat ~/.php_history
cat ~/.atftp_history
์๋ฒ๊ฐ ์ฌ๋ฌ ์ฌ์ดํธ๋ฅผ ํธ์คํ ํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๊ณต์ ํธ์คํ ์ด ์์ต๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ด ๊ตฌ์ฑ์์๋ ๊ฐ ๋ฆฌ์์ค์ ๋ณ๋์ ํ ๋๋ ํ ๋ฆฌ์ ๊ฐ์ ํธ์คํธ๊ฐ ์๋ ์์ฒด ์ฌ์ฉ์๊ฐ ์์ต๋๋ค. ๋ฐ๋ผ์ ์๋ชป ๊ตฌ์ฑ๋ ๊ฒฝ์ฐ ์น ๋ฆฌ์์ค์ ๋ฃจํธ ๋๋ ํฐ๋ฆฌ์์ .bash_history ํ์ผ์ ์ฐพ์ ์ ์์ต๋๋ค.
ํ์ผ ์์คํ ์์ ์ํธ ์ฐพ๊ธฐ ๋ฐ ์ธ์ ์์คํ ๊ณต๊ฒฉ
๋ค์ํ ์๋น์ค์ ๋ํ ๊ตฌ์ฑ ํ์ผ์ ํ์ฌ ์ฌ์ฉ์๊ฐ ์ฝ์ ์ ์์ต๋๋ค. ์ฌ๊ธฐ์์ ์ผ๋ฐ ํ
์คํธ๋ก ๋ ์๊ฒฉ ์ฆ๋ช
(๋ฐ์ดํฐ๋ฒ ์ด์ค ๋๋ ๊ด๋ จ ์๋น์ค์ ์ก์ธ์คํ๊ธฐ ์ํ ์ํธ)์ ์ฐพ์ ์ ์์ต๋๋ค. ๋์ผํ ์ํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ก์ธ์คํ๊ณ ๋ฃจํธ ์ฌ์ฉ์์๊ฒ ๊ถํ์ ๋ถ์ฌํ ์ ์์ต๋๋ค(์๊ฒฉ ์ฆ๋ช
์คํํ).
๋ฐ๊ฒฌ๋ ์๊ฒฉ ์ฆ๋ช
์ด ๋ค๋ฅธ ํธ์คํธ์ ์๋น์ค์ ์ํ๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํฉ๋๋ค. ์์๋ ํธ์คํธ๋ฅผ ํตํ ์ธํ๋ผ ๊ณต๊ฒฉ ๊ฐ๋ฐ์ ๋ค๋ฅธ ํธ์คํธ๋ฅผ ์
์ฉํ๋ ๊ฒ๋ณด๋ค ๋์์ง ์์ต๋๋ค. ํ์ผ ์์คํ
์์ IP ์ฃผ์๋ฅผ ๊ฒ์ํ์ฌ ์ธ์ ์์คํ
์ ์ฐพ์ ์๋ ์์ต๋๋ค.
grep -lRi "password" /home /var/www /var/log 2>/dev/null | sort | uniq #Find string password (no cs) in those directories
grep -a -R -o '[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}' /var/log/ 2>/dev/null | sort -u | uniq #IPs inside logs
์์๋ ํธ์คํธ์ ์ธํฐ๋ท์์ ์ก์ธ์คํ ์ ์๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ด ์๋ ๊ฒฝ์ฐ IP ์ฃผ์ ๊ฒ์์์ ํด๋น ๋ก๊ทธ๋ฅผ ์ ์ธํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ธํฐ๋ท์ ๋ฆฌ์์ค ์ฌ์ฉ์ ์ฃผ์๋ ์ฐ๋ฆฌ์๊ฒ ์ ์ฉํ์ง ์์ ์ ์์ง๋ง ๋ด๋ถ ๋คํธ์ํฌ์ ์ฃผ์(172.16.0.0/12, 192.168.0.0/16, 10.0.0.0/8) ๋ฐ ์ด๋ ์์น๋ ๊ด์ฌ์ด ์์ ์ ์์ต๋๋ค.
์๋
sudo ๋ช
๋ น์ ์ฌ์ฉํ๋ฉด ์ฌ์ฉ์๊ฐ ์์ ์ ์ํธ๋ฅผ ์ฌ์ฉํ๊ฑฐ๋ ์ ํ ์ฌ์ฉํ์ง ์๊ณ ๋ฃจํธ ์ปจํ
์คํธ์์ ๋ช
๋ น์ ์คํํ ์ ์์ต๋๋ค. Linux์ ๋ง์ ์์
์๋ ๋ฃจํธ ๊ถํ์ด ํ์ํ์ง๋ง ๋ฃจํธ๋ก ์คํํ๋ ๊ฒ์ ๋งค์ฐ ๋์ ์ต๊ด์ผ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. ๋์ ๋ฃจํธ ์ปจํ
์คํธ์์ ๋ช
๋ น์ ์คํํ๊ธฐ ์ํด ์ ํ์ ๊ถํ์ ์ ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ๊ทธ๋ฌ๋ vi์ ๊ฐ์ ํ์ค ๋๊ตฌ๋ฅผ ํฌํจํ์ฌ ๋ง์ Linux ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ํฉ๋ฒ์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก ๊ถํ์ ์์ค์ปฌ๋ ์ด์
ํ ์ ์์ต๋๋ค. ์ฌ๋ฐ๋ฅธ ๋ฐฉ๋ฒ์ ์ฐพ์ผ๋ ค๋ฉด ์ดํด ๋ณด๋ ๊ฒ์ด ์ข์ต๋๋ค
์์คํ ์ ๋ํ ์ก์ธ์ค ๊ถํ์ ์ป์ ํ ๊ฐ์ฅ ๋จผ์ ํด์ผ ํ ์ผ์ sudo -l ๋ช ๋ น์ ์คํํ๋ ๊ฒ์ ๋๋ค. sudo ๋ช ๋ น์ ์ฌ์ฉํ ์ ์๋ ๊ถํ์ด ํ์๋ฉ๋๋ค. ๋น๋ฐ๋ฒํธ๊ฐ ์๋ ์ฌ์ฉ์(์: apache ๋๋ www-data)๋ฅผ ์ป์ ๊ฒฝ์ฐ sudo ๊ถํ ์์ค์ปฌ๋ ์ด์ ๋ฒกํฐ๊ฐ ๋ฐ์ํ์ง ์์ต๋๋ค. sudo๋ฅผ ์ฌ์ฉํ ๋ ์์คํ ์์ ์ํธ๋ฅผ ๋ฌป์ต๋๋ค. ์ํธ๋ฅผ ์ค์ ํ๊ธฐ ์ํด passwd ๋ช ๋ น์ ์ฌ์ฉํ๋ ๊ฒ๋ ์๋ํ์ง ์์ผ๋ฉฐ ํ์ฌ ์ฌ์ฉ์ ์ํธ๋ฅผ ๋ฌป์ต๋๋ค. ๊ทธ๋ฌ๋ sudo๋ฅผ ๊ณ์ ์ฌ์ฉํ ์ ์๋ ๊ฒฝ์ฐ ์ค์ ๋ก ๋ค์์ ์ฐพ์์ผ ํฉ๋๋ค.
- ๋ชจ๋ ์ธํฐํ๋ฆฌํฐ, ๋๊ตฌ๋ ์(PHP, Python, Perl)์ ์์ฑํ ์ ์์ต๋๋ค.
- ๋ชจ๋ ํ ์คํธ ํธ์ง๊ธฐ(vim, vi, nano)
- ๋ชจ๋ ์์ฒญ์(๋ ์ ๊ฒ, ๋ ๋ง์ด);
- ํ์ผ ์์คํ (cp, mv) ์์ ๊ฐ๋ฅ์ฑ;
- bash์์ ๋ํ์์ผ๋ก ๋๋ ์คํ ๊ฐ๋ฅํ ๋ช ๋ น์ผ๋ก ์ถ๋ ฅ๋๋ ๋๊ตฌ(awk, find, nmap, tcpdump, man, vi, vim, ansible).
์์ด๋/SGID
๋ชจ๋ suid / sgid ๋ช
๋ น์ ๋น๋ํ๋๋ก ์กฐ์ธํ๋ ๋ง์ ์ค๋ช
์๊ฐ ์ธํฐ๋ท์ ์์ง๋ง ๋๋ฌธ ๊ธฐ์ฌ๋ ์ด๋ฌํ ํ๋ก๊ทธ๋จ์ผ๋ก ์ํํ ์์
์ ๋ํ ์ธ๋ถ ์ ๋ณด๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ต์คํ๋ก์ ์ฌ์ฉ์ ๊ณ ๋ คํ์ง ์์ ๊ถํ ์์ค์ปฌ๋ ์ด์
์ต์
์ ์ฐพ์ ์ ์์ต๋๋ค.
์ด์์ ์ธ ์ธ์์์๋ ์ ์ด๋ searchsploit์ ํตํด ์ค์น๋ ๋ชจ๋ ํจํค์ง๋ฅผ ์คํํด์ผ ํฉ๋๋ค. ์ค์ ๋ก ์ด๊ฒ์ sudo์ ๊ฐ์ ๊ฐ์ฅ ์ธ๊ธฐ ์๋ ํ๋ก๊ทธ๋จ์ ์ฌ์ฉํ์ฌ ์ํํด์ผ ํฉ๋๋ค. ๋ํ ๊ถํ ์์ค์ปฌ๋ ์ด์ ๊ด์ ์์ ํฅ๋ฏธ๋ก์ด suid/sgid ๋นํธ ์ธํธ๊ฐ ์๋ ์คํ ํ์ผ์ ๊ฐ์กฐ ํ์ํ๋ ์๋ํ ๋๊ตฌ์ ๊ฐ๋ฐ์ ์ฌ์ฉํ๊ณ ์ง์ํ๋ ์ต์ ์ด๊ธฐ๋ ํฉ๋๋ค. ๊ธฐ์ฌ์ ํด๋น ์น์ ์์ ์ด๋ฌํ ๋๊ตฌ ๋ชฉ๋ก์ ์ ๊ณตํ๊ฒ ์ต๋๋ค.
๋ฃจํธ ์ปจํ ์คํธ์์ Cron ๋๋ Init์ ์ํด ์คํ๋๋ ์ฐ๊ธฐ ๊ฐ๋ฅํ ์คํฌ๋ฆฝํธ
Cron ์์ ์ ๋ฃจํธ๋ฅผ ํฌํจํ์ฌ ๋ค๋ฅธ ์ฌ์ฉ์์ ์ปจํ ์คํธ์์ ์คํํ ์ ์์ต๋๋ค. cron์ ์คํ ํ์ผ์ ๋ํ ๋งํฌ๊ฐ ์๋ ์์ ์ด ์๊ณ ์ฌ์ฉ์๊ฐ ์์ฑํ ์ ์๋ ์์ ์ด ์๋ ๊ฒฝ์ฐ ์ด๋ฅผ ์ ์์ ์ธ ์์ ์ผ๋ก ์ฝ๊ฒ ๊ต์ฒดํ๊ณ ๊ถํ ์์ค์ปฌ๋ ์ด์ ์ ์ํํ ์ ์์ต๋๋ค. ๋์์ ๊ธฐ๋ณธ์ ์ผ๋ก cron ์์ ์ด ์๋ ํ์ผ์ ๋ชจ๋ ์ฌ์ฉ์๊ฐ ์ฝ์ ์ ์์ต๋๋ค.
ls -la /etc/cron.d # show cron jobs
init์ ๊ฒฝ์ฐ๋ ๋น์ทํฉ๋๋ค. ์ฐจ์ด์ ์ cron์ ์์ ์ ์ฃผ๊ธฐ์ ์ผ๋ก ์คํ๋๊ณ init์์๋ ์์คํ ์์ ์์ ์คํ๋๋ค๋ ๊ฒ์ ๋๋ค. ์๋ํ๋ ค๋ฉด ์์คํ ์ ์ฌ๋ถํ ํด์ผ ํ์ง๋ง ์ผ๋ถ ์๋น์ค๋ ์๋ํ์ง ์์ ์ ์์ต๋๋ค(์๋ ๋ก๋์ ๋ฑ๋ก๋์ง ์์ ๊ฒฝ์ฐ).
ls -la /etc/init.d/ # show init scripts
๋ชจ๋ ์ฌ์ฉ์๊ฐ ์ธ ์ ์๋ ํ์ผ์ ๊ฒ์ํ ์๋ ์์ต๋๋ค.
find / -perm -2 -type f 2>/dev/null # find world writable files
์ด ๋ฐฉ๋ฒ์ ์ ์๋ ค์ ธ ์์ผ๋ฉฐ ์๋ จ๋ ์์คํ ๊ด๋ฆฌ์๋ chmod ๋ช ๋ น์ ์ ์คํ๊ฒ ์ฌ์ฉํฉ๋๋ค. ๊ทธ๋ฌ๋ ์น์์ ๋๋ถ๋ถ์ ์ค๋ช ์๋ ์ต๋ ๊ถํ ์ค์ ์ ๋ํด ์ค๋ช ํฉ๋๋ค. ๋ฏธ์ํ ์์คํ ๊ด๋ฆฌ์์ "๊ทธ๋ฅ ์๋ํ๊ฒ" ์ ๊ทผ ๋ฐฉ์์ ์์น์ ์ผ๋ก ๊ถํ ์์น์ ๊ธฐํ๋ฅผ ๋ง๋ญ๋๋ค. ๊ฐ๋ฅํ๋ฉด chmod์ ์์ ํ์ง ์์ ์ฌ์ฉ์ ๋ํด ๋ช ๋ น ๊ธฐ๋ก์ ์ดํด๋ณด๋ ๊ฒ์ด ๊ฐ์ฅ ์ข์ต๋๋ค.
chmod +w /path
chmod 777 /path
๋ค๋ฅธ ์ฌ์ฉ์๋ฅผ ์ํ ์ ธ ์ก์ธ์ค ๊ถํ ์ป๊ธฐ
/etc/passwd์์ ์ฌ์ฉ์ ๋ชฉ๋ก์ ๋ด ๋๋ค. ์ฐ๋ฆฌ๋ ๊ป์ง์ ๊ฐ์ง ์ฌ๋๋ค์๊ฒ ์ฃผ๋ชฉํฉ๋๋ค. ์ด๋ฌํ ์ฌ์ฉ์๋ฅผ ๋ฌด์ฐจ๋ณ ๊ณต๊ฒฉํ ์ ์์ต๋๋ค. ๊ฒฐ๊ณผ ์ฌ์ฉ์๋ฅผ ํตํด ๊ฒฐ๊ตญ ๊ถํ์ ๋์ผ ์ ์์ต๋๋ค.
๋ณด์์ ๊ฐํํ๋ ค๋ฉด ํญ์ ์ต์ ๊ถํ ์์น์ ์ค์ํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ๋ํ ๋ฌธ์ ํด๊ฒฐ ํ์๋ ๋จ์ ์์ ์ ์๋ ์์ ํ์ง ์์ ๊ตฌ์ฑ์ ํ์ธํ๋ ๋ฐ ์๊ฐ์ ํฌ์ํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ด๋ ์์คํ ๊ด๋ฆฌ์์ "๊ธฐ์ ์ ์๋ฌด"์ ๋๋ค.
์์ฒด ์์ฑ ์ฝ๋
์ฌ์ฉ์ ๋ฐ ์น ์๋ฒ์ ํ ๋๋ ํ ๋ฆฌ(๋ฌ๋ฆฌ ์ง์ ํ์ง ์๋ ํ /var/www/)์ ์๋ ์คํ ํ์ผ์ ์์ธํ ์ดํด๋ณผ ๊ฐ์น๊ฐ ์์ต๋๋ค. ์ด๋ฌํ ํ์ผ์ ์์ ํ ์์ ํ์ง ์์ ์๋ฃจ์ ์ผ๋ก ํ๋ช ๋ ์ ์์ผ๋ฉฐ ๋๋ผ์ด ๋ชฉ๋ฐ์ ํฌํจํ ์ ์์ต๋๋ค. ๋ฌผ๋ก ์น ์๋ฒ ๋๋ ํ ๋ฆฌ์ ์ด๋ค ํ๋ ์์ํฌ๊ฐ ์๋ค๋ฉด ๊ทธ ์์์ ์ ๋ก๋ฐ์ด๋ฅผ ์นจํฌ ํ ์คํธ์ ์ผ๋ถ๋ก ๊ฒ์ํ๋ ๊ฒ์ ๋ง์ด ๋์ง ์์ง๋ง ์ปค์คํ ์์ , ํ๋ฌ๊ทธ์ธ ๋ฐ ๊ตฌ์ฑ ์์๋ฅผ ์ฐพ์์ ์ฐ๊ตฌํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
๋ณด์์ ๊ฐํํ๋ ค๋ฉด ๊ฐ๋ฅํ ๊ฒฝ์ฐ /etc/shadow ์ฝ๊ธฐ ๋๋ id_rsa ์กฐ์๊ณผ ๊ฐ์ ์ ์ฌ์ ์ผ๋ก ์ํํ ๊ธฐ๋ฅ๋ฟ๋ง ์๋๋ผ ์์ฒด ์์ฑ ์คํฌ๋ฆฝํธ์์ ์๊ฒฉ ์ฆ๋ช ์ ์ฌ์ฉํ์ง ์๋ ๊ฒ์ด ์ข์ต๋๋ค.
์ทจ์ฝ์ ์ ์ฉ์ ํตํ ๊ถํ ์์น
์
์ฉ์ ํตํด ๊ถํ ์์น์ ์๋ํ๊ธฐ ์ ์ ๋ค์์ ์ดํดํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๋์ ํธ์คํธ๋ก ํ์ผ ์ ์ก. ssh, ftp, http(wget, curl)์ ๊ฐ์ ์ผ๋ฐ์ ์ธ ๋๊ตฌ ์ธ์๋ ์ ์ฒด
์์คํ ์ ๋ณด์์ ํฅ์์ํค๋ ค๋ฉด ์ ๊ธฐ์ ์ผ๋ก ์ต์ ๋ฒ์ ์ผ๋ก ์ ๋ฐ์ดํธํ์ญ์์ค. ์์ ์ ์ธ ๋ฒ์ ์ ํ์ธํ๊ณ ์ํฐํ๋ผ์ด์ฆ์ฉ์ผ๋ก ์ค๊ณ๋ ๋ฐฐํฌํ์ ์ฌ์ฉํด ๋ณด์ญ์์ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ๋๋ฌผ์ง๋ง ์ ์ ํ ์ ๊ทธ๋ ์ด๋๋ก ์ธํด ์์คํ ์ ์ฌ์ฉํ ์ ์๊ฒ ๋๋ ์ํฉ์ด ์์ต๋๋ค.
๋ฃจํธ ์ฌ์ฉ์์ ์ปจํ ์คํธ์์ ์คํ๋๋ ์๋น์ค ์ ์ฉ
์ผ๋ถ Linux ์๋น์ค๋ ๊ถํ์ด ์๋ ์ฌ์ฉ์ ๋ฃจํธ๋ก ์คํ๋ฉ๋๋ค. ๊ทธ๋ค์ ps aux | ๊ทธ๋ ๋ฃจํธ. ์ด ๊ฒฝ์ฐ ํด๋น ์๋น์ค๋ ์น์์ ๊ณต์ง๋์ง ์๊ณ ๋ก์ปฌ์์ ์ ๊ณต๋ ์ ์์ต๋๋ค. ๊ณต๊ฐ ์ต์คํ๋ก์์ด ์๋ ๊ฒฝ์ฐ ์์ ํ๊ฒ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ฅ์ ์ ์๋น์ค ์ถฉ๋์ OS ์ถฉ๋๋ณด๋ค ํจ์ฌ ๋ ์ค์ํฉ๋๋ค.
ps -aux | grep root # Linux
๊ฐ์ฅ ์ฑ๊ณต์ ์ธ ์ฌ๋ก๋ ๋ฃจํธ ์ฌ์ฉ์์ ์ปจํ ์คํธ์์ ํดํน๋ ์๋น์ค๋ฅผ ์ด์ํ๋ ๊ฒ์ผ๋ก ๊ฐ์ฃผํ ์ ์์ต๋๋ค. SMB ์๋น์ค๋ฅผ ์๋ํ๋ฉด Windows ์์คํ ์์ ์์คํ ์ ๊ถํ ์๋ ์ก์ธ์ค๊ฐ ์ ๊ณต๋ฉ๋๋ค(์: ms17-010์ ํตํด). ๊ทธ๋ฌ๋ ์ด๊ฒ์ Linux ์์คํ ์์๋ ์ผ๋ฐ์ ์ด์ง ์์ผ๋ฏ๋ก ๊ถํ ์์ค์ปฌ๋ ์ด์ ์ ๋ง์ ์๊ฐ์ ํ ์ ํ ์ ์์ต๋๋ค.
Linux ์ปค๋ ์ทจ์ฝ์ ์ ์ฉ
์ด๊ฒ์ด ๋ง์ง๋ง์ผ๋ก ๊ฐ๋ ๊ธธ์
๋๋ค. ์์
์ด ์คํจํ๋ฉด ์์คํ
์ถฉ๋์ด ๋ฐ์ํ ์ ์์ผ๋ฉฐ ์ฌ๋ถํ
์ ์ผ๋ถ ์๋น์ค(์๋ ์
ธ์ ์ป์ ์ ์์๋ ์๋น์ค ํฌํจ)๊ฐ ์๋ํ์ง ์์ ์ ์์ต๋๋ค. ๊ด๋ฆฌ์๊ฐ ๋จ์ํ systemctl enable ๋ช
๋ น์ ์ฌ์ฉํ๋ ๊ฒ์ ์์ด๋ฒ๋ฆฐ ๊ฒฝ์ฐ๊ฐ ๋ฐ์ํฉ๋๋ค. ๋ํ ์ฐฉ์ทจ์ ๋์ํ์ง ์์ผ๋ฉด ๊ทํ์ ์์
์ ๋ง์ ๋ถ๋ง์ด ์๊ธธ ๊ฒ์
๋๋ค.
exploitdb์ ์์ค๋ฅผ ์ฌ์ฉํ๊ธฐ๋ก ๊ฒฐ์ ํ ๊ฒฝ์ฐ ์คํฌ๋ฆฝํธ ์์ ๋ถ๋ถ์ ์๋ ์ฃผ์์ ์ฝ์ด๋ณด์ญ์์ค. ๋ฌด์๋ณด๋ค๋ ์ผ๋ฐ์ ์ผ๋ก ์ด ์ต์คํ๋ก์์ ์ฌ๋ฐ๋ฅด๊ฒ ์ปดํ์ผํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์ค๋ช
ํฉ๋๋ค. ๋๋ฌด ๊ฒ์ผ๋ฅด๊ฑฐ๋ ๋ง๊ฐ ์๊ฐ ๋๋ฌธ์ "์ด์ "๊ฐ ํ์ํ๋ค๋ฉด ์ด๋ฏธ ์ปดํ์ผ๋ ์ต์คํ๋ก์์ด ์๋ ๋ฆฌํฌ์งํ ๋ฆฌ๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
cat /proc/version
uname -a
searchsploit "Linux Kernel"
๋ฉํ ์คํ๋ก ์
์ฐ๊ฒฐ์ ํฌ์ฐฉํ๊ณ ์ฒ๋ฆฌํ๋ ค๋ฉด exploit/multi/handler ๋ชจ๋์ ์ฌ์ฉํ๋ ๊ฒ์ด ํญ์ ์ข์ต๋๋ค. ๊ฐ์ฅ ์ค์ํ ๊ฒ์ ์ฌ๋ฐ๋ฅธ ํ์ด๋ก๋(์: generic/shell/reverce_tcp ๋๋ generic/shell/bind_tcp)๋ฅผ ์ค์ ํ๋ ๊ฒ์ ๋๋ค. Metasploit์์ ์ป์ ์ ธ์ post/multi/manage/shell_to_meterpreter ๋ชจ๋์ ์ฌ์ฉํ์ฌ Meterpreter๋ก ์ ๊ทธ๋ ์ด๋ํ ์ ์์ต๋๋ค. Meterpreter๋ฅผ ์ฌ์ฉํ๋ฉด ํ์ฉ ํ ํ๋ก์ธ์ค๋ฅผ ์๋ํํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, post/multi/recon/local_exploit_suggester ๋ชจ๋์ ํ๋ซํผ, ์ํคํ ์ฒ ๋ฐ ์ ์ฉ ๊ฐ๋ฅํ ์ํฐํฐ๋ฅผ ํ์ธํ๊ณ ๋์ ์์คํ ์์ ๊ถํ ์์น์ ์ํ Metasploit ๋ชจ๋์ ์ ์ํฉ๋๋ค. Meterpreter ๋๋ถ์ ๊ถํ ์์น์ ๋๋๋ก ์ฌ๋ฐ๋ฅธ ๋ชจ๋์ ์คํํ๋ ๊ฒ์ผ๋ก ๊ท๊ฒฐ๋์ง๋ง ๋ด๋ถ์์ ๋ฌด์จ ์ผ์ด ์ผ์ด๋๊ณ ์๋์ง ์ดํดํ์ง ์๊ณ ํดํนํ๋ ๊ฒ์ ์ฌ์ค์ด ์๋๋๋ค(์ฌ์ ํ ๋ณด๊ณ ์๋ฅผ ์์ฑํด์ผ ํจ).
๋๊ตฌ
๋ก์ปฌ ์ ๋ณด ์์ง์ ์๋ํํ๋ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด ๋ง์ ๋ ธ๋ ฅ๊ณผ ์๊ฐ์ ์ ์ฝํ ์ ์์ง๋ง, ํนํ ์ปค๋ ์ทจ์ฝ์ ์ ์ ์ฉํ๋ ๊ฒฝ์ฐ ๊ทธ ์์ฒด๋ก๋ ๊ถํ ์์น ๊ฒฝ๋ก๋ฅผ ์์ ํ ์๋ณํ ์ ์์ต๋๋ค. ์๋ํ ๋๊ตฌ๋ ์์คํ ์ ๋ํ ์ ๋ณด๋ฅผ ์์งํ๋ ๋ฐ ํ์ํ ๋ชจ๋ ๋ช ๋ น์ ์ํํ์ง๋ง ๋ค์์ ์ํํ ์ ์๋ ๊ฒ๋ ์ค์ํฉ๋๋ค. ๋ถ์ํ๋ค ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ต๋๋ค. ๋ด ๊ธฐ์ฌ๊ฐ ๋น์ ์๊ฒ ์ ์ฉํ๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. ๋ฌผ๋ก ์๋์ ๋์ดํ ๊ฒ๋ณด๋ค ๋ ๋ง์ ๋๊ตฌ๊ฐ ์์ง๋ง ๋ชจ๋ ๊ฑฐ์ ๊ฐ์ ์์ ์ ์ํํฉ๋๋ค. ์ทจํฅ์ ๋ฌธ์ ์ ๋๋ค.
๋ฆฐํผ์ค
์๋นํ ์๋ก์ด ๋๊ตฌ์ธ ์ฒซ ๋ฒ์งธ ์ปค๋ฐ ๋ ์ง๋ 2019๋ XNUMX์์ ๋๋ค. ํ์ฌ ๋ด๊ฐ ๊ฐ์ฅ ์ข์ํ๋ ์ ๊ธฐ. ๊ฒฐ๋ก ์ ๊ฐ์ฅ ํฅ๋ฏธ๋ก์ด ๊ถํ ์์ค์ปฌ๋ ์ด์ ๋ฒกํฐ๋ฅผ ๊ฐ์กฐ ํ์ํ๋ค๋ ๊ฒ์ ๋๋ค. ๋ชจ๋๋ฆฌ์ ์์ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ๋ฌธ ๋ถ์ํ๋ ๊ฒ๋ณด๋ค ์ด ์์ค์์ ์ ๋ฌธ๊ฐ ํ๊ฐ๋ฅผ ๋ฐ๋ ๊ฒ์ด ๋ ํธ๋ฆฌํฉ๋๋ค.
LinEnum
๋ด๊ฐ ๋ ๋ฒ์งธ๋ก ์ข์ํ๋ ๋๊ตฌ์ธ ์ด ๋๊ตฌ๋ ๋ก์ปฌ ์ด๊ฑฐ์ ๊ฒฐ๊ณผ๋ก ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ ์์งํ๊ณ ๊ตฌ์ฑํ๊ธฐ๋ ํฉ๋๋ค.
linux-exploit-suggester(1,2)
์ด ์ ์ฉ์ ์ ์ฉ์ ์ ํฉํ ์กฐ๊ฑด์ ๋ํด ์์คํ ์ ๋ถ์ํฉ๋๋ค. ์ค์ ๋ก Metasploit local_exploit_suggester ๋ชจ๋๊ณผ ๋์ผํ ์์ ์ ์ํํ์ง๋ง Metasploit ๋ชจ๋์ด ์๋ exploit-db ์์ค ์ฝ๋์ ๋ํ ๋งํฌ๋ฅผ ์ ๊ณตํฉ๋๋ค.
Linuxprivchecker
์ด ์คํฌ๋ฆฝํธ๋ ๊ถํ ์์ค์ปฌ๋ ์ด์ ๋ฒกํฐ ํ์ฑ์ ์ ์ฉํ ์ ์๋ ๋ง์ ์์ ์ ๋ณด๋ฅผ ์น์ ๋ณ๋ก ์์งํ๊ณ ๊ตฌ์ฑํฉ๋๋ค.
๋ค๋ฅธ ์๊ฐ์ ์์ธํ ์ค๋ช
ํ๊ฒ ์ต๋๋ค.
์ถ์ฒ : habr.com