๋‚˜๋Š” ๋ฃจํŠธ์ž…๋‹ˆ๋‹ค. Linux OS ๊ถŒํ•œ ์—์Šค์ปฌ๋ ˆ์ด์…˜ ์ดํ•ด

์ €๋Š” 2020๋…„ XNUMX๋ถ„๊ธฐ๋ฅผ OSCP ์‹œํ—˜์„ ์ค€๋น„ํ•˜๋ฉฐ ๋ณด๋ƒˆ์Šต๋‹ˆ๋‹ค. Google์—์„œ ์ •๋ณด๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ณ  ๋งŽ์€ "๋งน๋ชฉ์ ์ธ" ์‹œ๋„๊ฐ€ ์ž์œ  ์‹œ๊ฐ„์„ ๋ชจ๋‘ ์ฐจ์ง€ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ถŒํ•œ ์ƒ์Šน ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์ด ํŠนํžˆ ์–ด๋ ค์› ์Šต๋‹ˆ๋‹ค. PWK ๊ณผ์ •์€ ์ด ์ฃผ์ œ์— ๋งŽ์€ ๊ด€์‹ฌ์„ ๊ธฐ์šธ์ด์ง€๋งŒ ๋ฐฉ๋ฒ•๋ก ์  ์ž๋ฃŒ๋กœ๋Š” ํ•ญ์ƒ ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ธํ„ฐ๋„ท์—๋Š” ์œ ์šฉํ•œ ๋ช…๋ น์ด ํฌํ•จ๋œ ์„ค๋ช…์„œ๊ฐ€ ๋งŽ์ด ์žˆ์ง€๋งŒ ์ด๊ฒƒ์ด ์–ด๋””๋กœ ์ด์–ด์งˆ์ง€ ์ดํ•ดํ•˜์ง€ ๋ชปํ•œ ์ฑ„ ๊ถŒ์žฅ ์‚ฌํ•ญ์„ ๋งน๋ชฉ์ ์œผ๋กœ ๋”ฐ๋ฅด๋Š” ๊ฒƒ์„ ์ง€์ง€ํ•˜๋Š” ์‚ฌ๋žŒ์€ ์•„๋‹™๋‹ˆ๋‹ค.

์‹œํ—˜์„ ์ค€๋น„ํ•˜๊ณ  ์„ฑ๊ณต์ ์œผ๋กœ ํ†ต๊ณผํ•˜๋Š” ๋™์•ˆ ๋ฐฐ์šด ๋‚ด์šฉ์„ ์—ฌ๋Ÿฌ๋ถ„๊ณผ ๊ณต์œ ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค(Hack The Box์— ๋Œ€ํ•œ ์ฃผ๊ธฐ์ ์ธ ์Šต๊ฒฉ ํฌํ•จ). ๋” ์˜์‹์ ์œผ๋กœ Try Harder์˜ ๊ธธ์„ ๊ฑท๋Š” ๋ฐ ๋„์›€์ด ๋œ ๋ชจ๋“  ์ •๋ณด์— ๋Œ€ํ•ด ๊นŠ์€ ๊ฐ์‚ฌ๋ฅผ ๋Š๊ผˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ์ปค๋ฎค๋‹ˆํ‹ฐ์— ๋ณด๋‹ตํ•  ๋•Œ์ž…๋‹ˆ๋‹ค.

OS Linux์—์„œ ๊ถŒํ•œ ์—์Šค์ปฌ๋ ˆ์ด์…˜์— ๋Œ€ํ•œ ๊ฐ€์ด๋“œ๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ๋ฒกํ„ฐ ๋ฐ ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•œ ๊ด€๋ จ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ๋ถ„์„์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ข…์ข… ๊ถŒํ•œ ์—์Šค์ปฌ๋ ˆ์ด์…˜ ๋ฉ”์ปค๋‹ˆ์ฆ˜ ์ž์ฒด๋Š” ๋งค์šฐ ๊ฐ„๋‹จํ•˜๋ฉฐ ์ •๋ณด๋ฅผ ๊ตฌ์กฐํ™”ํ•˜๊ณ  ๋ถ„์„ํ•  ๋•Œ ์–ด๋ ค์›€์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ "๊ด€๊ด‘ ์—ฌํ–‰"์œผ๋กœ ์‹œ์ž‘ํ•œ ๋‹ค์Œ ๋ณ„๋„์˜ ๊ธฐ์‚ฌ์—์„œ ๊ฐ ๋ฒกํ„ฐ๋ฅผ ๊ณ ๋ คํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฃผ์ œ๋ฅผ ๊ณต๋ถ€ํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์„ ์ ˆ์•ฝํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋ฃจํŠธ์ž…๋‹ˆ๋‹ค. Linux OS ๊ถŒํ•œ ์—์Šค์ปฌ๋ ˆ์ด์…˜ ์ดํ•ด

๊ทธ๋ ‡๋‹ค๋ฉด ๊ถŒํ•œ ์ƒ์Šน ๋ฐฉ๋ฒ•์ด ์•„์ฃผ ์˜ค๋žซ๋™์•ˆ ์ž˜ ์•Œ๋ ค์ ธ ์žˆ์—ˆ๋‹ค๋ฉด 2020๋…„์— ๊ถŒํ•œ ์ƒ์Šน์ด ๊ฐ€๋Šฅํ•œ ์ด์œ ๋Š” ๋ฌด์—‡์ผ๊นŒ์š”? ์‹ค์ œ๋กœ ์‚ฌ์šฉ์ž๊ฐ€ ์‹œ์Šคํ…œ์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ฒ˜๋ฆฌํ•˜๋ฉด ์‹œ์Šคํ…œ์—์„œ ๊ถŒํ•œ์„ ๋†’์ด๋Š” ๊ฒƒ์ด ์‹ค์ œ๋กœ ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌํ•œ ๊ธฐํšŒ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค๋Š” ์ฃผ์š” ๊ธ€๋กœ๋ฒŒ ๋ฌธ์ œ๋Š” ์•ˆ์ „ํ•˜์ง€ ์•Š์€ ๊ตฌ์„ฑ. ์‹œ์Šคํ…œ์— ์ทจ์•ฝ์„ฑ์ด ํฌํ•จ๋œ ์˜ค๋ž˜๋œ ์†Œํ”„ํŠธ์›จ์–ด ๋ฒ„์ „์ด ์กด์žฌํ•˜๋Š” ๊ฒƒ๋„ ์•ˆ์ „ํ•˜์ง€ ์•Š์€ ๊ตฌ์„ฑ์˜ ํŠน์ˆ˜ํ•œ ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค.

์•ˆ์ „ํ•˜์ง€ ์•Š์€ ๊ตฌ์„ฑ์„ ํ†ตํ•œ ๊ถŒํ•œ ์ƒ์Šน

์šฐ์„ , ์•ˆ์ „ํ•˜์ง€ ์•Š์€ ๊ตฌ์„ฑ์„ ๋‹ค๋ฃจ๊ฒ ์Šต๋‹ˆ๋‹ค. ์‹œ์ž‘ํ•˜์ž IT ์ „๋ฌธ๊ฐ€๋Š” ์ข…์ข… stackoverflow์™€ ๊ฐ™์€ ๋งค๋‰ด์–ผ๊ณผ ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค., ๊ทธ ์ค‘ ๋‹ค์ˆ˜๋Š” ์•ˆ์ „ํ•˜์ง€ ์•Š์€ ๋ช…๋ น ๋ฐ ๊ตฌ์„ฑ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ๋†€๋ผ์šด ์˜ˆ๋Š” ๋‰ด์Šค stackoverflow์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ๋ณต์‚ฌ๋œ ์ฝ”๋“œ์— ์˜ค๋ฅ˜๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ˆ™๋ จ๋œ ๊ด€๋ฆฌ์ž๊ฐ€ ์žผ์„ ๋ณผ ์ˆ˜ ์žˆ์ง€๋งŒ ์ด๊ฒƒ์€ ์ด์ƒ์ ์ธ ์„ธ๊ณ„์— ์žˆ์Šต๋‹ˆ๋‹ค. ์œ ๋Šฅํ•œ ์ „๋ฌธ๊ฐ€๋ผ๋„ ์ž‘์—…๋Ÿ‰ ์ฆ๊ฐ€ ์‹ค์ˆ˜๋ฅผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ด€๋ฆฌ์ž๊ฐ€ ๋‹ค์Œ ์ž…์ฐฐ์„ ์œ„ํ•œ ๋ฌธ์„œ๋ฅผ ์ค€๋น„ ๋ฐ ์Šน์ธํ•˜๋Š” ๋™์‹œ์— ๋‹ค์Œ ๋ถ„๊ธฐ์— ๋„์ž…๋  ์‹ ๊ธฐ์ˆ ์„ ํƒ๊ตฌํ•˜๋Š” ๋™์‹œ์— ์ฃผ๊ธฐ์ ์œผ๋กœ ์‚ฌ์šฉ์ž ์ง€์› ์ž‘์—…์„ ํ•ด๊ฒฐํ•œ๋‹ค๊ณ  ์ƒ์ƒํ•ด ๋ณด์‹ญ์‹œ์˜ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๊ทธ๋Š” ๋‘ ๊ฐœ์˜ ๊ฐ€์ƒ ๋จธ์‹ ์„ ๋น ๋ฅด๊ฒŒ ์˜ฌ๋ฆฌ๊ณ  ์„œ๋น„์Šค๋ฅผ ๋กค์•„์›ƒํ•˜๋Š” ์ž‘์—…์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. ์–ด๋–ป๊ฒŒ ์ƒ๊ฐํ•˜์„ธ์š”, ๊ด€๋ฆฌ์ž๊ฐ€ ๋‹จ์ˆœํžˆ ์žผ์„ ์•Œ์•„์ฐจ๋ฆฌ์ง€ ๋ชปํ•  ํ™•๋ฅ ์€ ์–ผ๋งˆ์ž…๋‹ˆ๊นŒ? ๊ทธ๋Ÿฐ ๋‹ค์Œ ์ „๋ฌธ๊ฐ€๋Š” ๋ณ€๊ฒฝ๋˜์ง€๋งŒ ๋ชฉ๋ฐœ์€ ๊ทธ๋Œ€๋กœ ์œ ์ง€๋˜๋ฉฐ ๊ธฐ์—…์€ IT ์ „๋ฌธ๊ฐ€๋ฅผ ํฌํ•จํ•˜์—ฌ ํ•ญ์ƒ ๋น„์šฉ์„ ์ตœ์†Œํ™”ํ•˜๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•ฉ๋‹ˆ๋‹ค.

์˜์‚ฌ ์‰˜ ๋ฐ ํƒˆ์˜ฅ

์ƒ์‚ฐ ๋‹จ๊ณ„์—์„œ ์–ป์€ ์‹œ์Šคํ…œ ์…ธ์€ ํŠนํžˆ ์›น ์„œ๋ฒ„ ์‚ฌ์šฉ์ž๋ฅผ ํ•ดํ‚นํ•˜์—ฌ ์–ป์€ ๊ฒฝ์šฐ ์ œํ•œ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์…ธ ์ œํ•œ์œผ๋กœ ์ธํ•ด sudo ๋ช…๋ น์„ ์˜ค๋ฅ˜์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

sudo: no tty present and no askpass program specified

์…ธ์„ ์–ป์€ ํ›„์—๋Š” ์˜ˆ๋ฅผ ๋“ค์–ด Python์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ณธ๊ฒฉ์ ์ธ ํ„ฐ๋ฏธ๋„์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

python -c 'import pty;pty.spawn("/bin/bash")'

"์˜ˆ๋ฅผ ๋“ค์–ด ํŒŒ์ผ์„ ์ „์†กํ•˜๋Š” ๋ฐ ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ ์™œ ์ฒœ ๊ฐœ์˜ ๋ช…๋ น์ด ํ•„์š”ํ•œ๊ฐ€์š”?" ์‚ฌ์‹ค์€ ์‹œ์Šคํ…œ์ด ๋‹ค๋ฅด๊ฒŒ ๊ตฌ์„ฑ๋˜์–ด ๋‹ค์Œ ํ˜ธ์ŠคํŠธ์— Python์ด ์„ค์น˜๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์ง€๋งŒ Perl์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ธฐ์ˆ ์€ ์นœ์ˆ™ํ•œ ๋„๊ตฌ ์—†์ด ์‹œ์Šคํ…œ์—์„œ ์นœ์ˆ™ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ธฐ๋Šฅ์˜ ์ „์ฒด ๋ชฉ๋ก์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—.

๋‚ฎ์€ ๊ถŒํ•œ ์‰˜์€ ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์—ฌ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒ€ 1 ะธ ํŒ€ 2 (๋†€๋ž๊ฒŒ๋„ ๊น€ํ”„๋„).

๋ช…๋ น ๊ธฐ๋ก ๋ณด๊ธฐ

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 ๋ช…๋ น์„ ๋นŒ๋“œํ•˜๋„๋ก ์กฐ์–ธํ•˜๋Š” ๋งŽ์€ ์„ค๋ช…์„œ๊ฐ€ ์ธํ„ฐ๋„ท์— ์žˆ์ง€๋งŒ ๋“œ๋ฌธ ๊ธฐ์‚ฌ๋Š” ์ด๋Ÿฌํ•œ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ์ˆ˜ํ–‰ํ•  ์ž‘์—…์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ต์Šคํ”Œ๋กœ์ž‡ ์‚ฌ์šฉ์„ ๊ณ ๋ คํ•˜์ง€ ์•Š์€ ๊ถŒํ•œ ์—์Šค์ปฌ๋ ˆ์ด์…˜ ์˜ต์…˜์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—. ๋˜ํ•œ ๋‹ค์ˆ˜์˜ ์‹คํ–‰ ํŒŒ์ผ์—๋Š” OS ๋ฒ„์ „์— ๋Œ€ํ•œ ํŠน์ • ์ทจ์•ฝ์ ์ด ์žˆ์œผ๋ฉฐ, ์˜ˆ๋ฅผ ๋“ค๋ฉด.

์ด์ƒ์ ์ธ ์„ธ์ƒ์—์„œ๋Š” ์ ์–ด๋„ 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

์ด ์Šคํฌ๋ฆฝํŠธ๋Š” ๊ถŒํ•œ ์—์Šค์ปฌ๋ ˆ์ด์…˜ ๋ฒกํ„ฐ ํ˜•์„ฑ์— ์œ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋งŽ์€ ์–‘์˜ ์ •๋ณด๋ฅผ ์„น์…˜๋ณ„๋กœ ์ˆ˜์ง‘ํ•˜๊ณ  ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ์‹œ๊ฐ„์— ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. suid/sgid๋ฅผ ํ†ตํ•œ Linux ๊ถŒํ•œ ์—์Šค์ปฌ๋ ˆ์ด์…˜.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€