Abusing Docker Socket for Privilege Escalation

HackTricks рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ

рдХреБрдЫ рдЕрд╡рд╕рд░ рд╣реЛрддреЗ рд╣реИрдВ рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдбреЙрдХрд░ рд╕реЙрдХреЗрдЯ рддрдХ рдкрд╣реБрдВрдЪ рд╣реЛрддреА рд╣реИ рдФрд░ рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдХреБрдЫ рдХреНрд░рд┐рдпрд╛рдПрдБ рдмрд╣реБрдд рд╕рдВрджрд┐рдЧреНрдз рд╣реЛ рд╕рдХрддреА рд╣реИрдВ рдФрд░ рдЖрдк рдЙрдирд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣рд╛рдБ рд╡рд┐рднрд┐рдиреНрди рдлреНрд▓реИрдЧреНрд╕ рд╣реИрдВ рдЬреЛ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдмрдврд╝рд╛рдиреЗ рдореЗрдВ рд╕рд╣рд╛рдпрдХ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:

рдорд╛рдЙрдВрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ

рдЖрдк рдПрдХ рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╡рд┐рднрд┐рдиреНрди рднрд╛рдЧреЛрдВ рдХреЛ рд░реВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдЙрдВрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдПрдХреНрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдЙрдВрдЯ рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

  • -v /:/host -> рд╣реЛрд╕реНрдЯ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдорд╛рдЙрдВрдЯ рдХрд░реЗрдВ рддрд╛рдХрд┐ рдЖрдк рд╣реЛрд╕реНрдЯ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдкрдврд╝ рд╕рдХреЗрдВред

  • рдпрджрд┐ рдЖрдк рдорд╣рд╕реВрд╕ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рд╣реЛрд╕реНрдЯ рдореЗрдВ рд╣реИрдВ рд▓реЗрдХрд┐рди рдХрдВрдЯреЗрдирд░ рдореЗрдВ рд╣реИрдВ, рддреЛ рдЖрдк рдлреНрд▓реИрдЧреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдиреНрдп рд░рдХреНрд╖рд╛ рддрдВрддреНрд░реЛрдВ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреИрд╕реЗ:

  • --privileged

  • --cap-add=ALL

  • --security-opt apparmor=unconfined

  • --security-opt seccomp=unconfined

  • -security-opt label:disable

  • --pid=host

  • --userns=host

  • --uts=host

  • --cgroupns=host

  • **--device=/dev/sda1 --cap-add=SYS_ADMIN --security-opt apparmor=unconfined ** -> рдпрд╣ рдкрд┐рдЫрд▓реЗ рддрд░реАрдХреЗ рдХреЗ рд╕рдорд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдБ рд╣рдо рдбрд┐рд╡рд╛рдЗрд╕ рдбрд┐рд╕реНрдХ рдХреЛ рдорд╛рдЙрдВрдЯ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдлрд┐рд░, рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ mount /dev/sda1 /mnt рдЪрд▓рд╛рдПрдБ рдФрд░ рдЖрдк /mnt рдореЗрдВ рд╣реЛрд╕реНрдЯ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

  • рд╣реЛрд╕реНрдЯ рдореЗрдВ fdisk -l рдЪрд▓рд╛рдПрдБ рддрд╛рдХрд┐ </dev/sda1> рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдорд╛рдЙрдВрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред

  • -v /tmp:/host -> рдпрджрд┐ рдХрд┐рд╕реА рдХрд╛рд░рдгрд╡рд╢ рдЖрдк рдХреЗрд╡рд▓ рдХреБрдЫ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рд╣реЛрд╕реНрдЯ рд╕реЗ рдорд╛рдЙрдВрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╣реЛрд╕реНрдЯ рдХреЗ рдЕрдВрджрд░ рдкрд╣реБрдВрдЪ рд╣реИред рдЗрд╕реЗ рдорд╛рдЙрдВрдЯ рдХрд░реЗрдВ рдФрд░ рдорд╛рдЙрдВрдЯ рдХреА рдЧрдИ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ suid рдХреЗ рд╕рд╛рде рдПрдХ /bin/bash рдмрдирд╛рдПрдВ рддрд╛рдХрд┐ рдЖрдк рдЗрд╕реЗ рд╣реЛрд╕реНрдЯ рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХреЗрдВ рдФрд░ рд░реВрдЯ рддрдХ рдмрдврд╝рд╛ рд╕рдХреЗрдВред

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╢рд╛рдпрдж рдЖрдк /tmp рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдорд╛рдЙрдВрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд▓реЗрдХрд┐рди рдЖрдк рдПрдХ рд╡рд┐рднрд┐рдиреНрди рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдорд╛рдЙрдВрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рд▓рд┐рдЦрдиреЗ рдпреЛрдЧреНрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдПрдБ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП: find / -writable -type d 2>/dev/null рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╕рднреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдПрдБ рд▓рд┐рдирдХреНрд╕ рдорд╢реАрди рдореЗрдВ suid рдмрд┐рдЯ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░реЗрдВрдЧреА! рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреМрди рд╕реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдПрдБ suid рдмрд┐рдЯ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреА рд╣реИрдВ, mount | grep -v "nosuid" рдЪрд▓рд╛рдПрдБред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЖрдорддреМрд░ рдкрд░ /dev/shm, /run, /proc, /sys/fs/cgroup рдФрд░ /var/lib/lxcfs suid рдмрд┐рдЯ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред

рдпрд╣ рднреА рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрджрд┐ рдЖрдк /etc рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдорд╛рдЙрдВрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЙрдиреНрд╣реЗрдВ рд░реВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдбреЙрдХрд░ рдХрдВрдЯреЗрдирд░ рд╕реЗ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ рддрд╛рдХрд┐ рдЖрдк рд╣реЛрд╕реНрдЯ рдореЗрдВ рдЙрдирдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗрдВ рдФрд░ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдмрдврд╝рд╛ рд╕рдХреЗрдВ (рд╢рд╛рдпрдж /etc/shadow рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдХреЗ)ред

рдХрдВрдЯреЗрдирд░ рд╕реЗ рднрд╛рдЧрдирд╛

рдХрд░реНрд▓

рдЗрд╕ рдкреГрд╖реНрда рдкрд░ рд╣рдордиреЗ рдбреЙрдХрд░ рдлреНрд▓реИрдЧреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдмрдврд╝рд╛рдиреЗ рдХреЗ рддрд░реАрдХреЛрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рд╣реИ, рдЖрдк рдкреГрд╖реНрда рдореЗрдВ рдХрд░реНрд▓ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрди рддрд░реАрдХреЛрдВ рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ:

HackTricks рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ

Last updated