Введення команди

Введення команди

Одна крапка з комою в полі форми, і сервер виконає вашу команду.

Що таке Введення команди?

Ін’єкція команди перетворює один веб-запит на виконання коду під власним ідентифікатором сервера. Програма вставляє введені користувачем дані в командний рядок і передає їх до оболонки, яка читає кожен спеціальний символ як синтаксис. Ви додасте крапку з комою до поля хоста інструменту мережевої діагностики, запустите другу команду та прочитаєте файл середовища з паролем бази даних у ньому. Потім ви замінюєте об’єднаний рядок на execFile , щоб хост залишався одним аргументом, і ви бачите, чому фільтрація небезпечних символів завжди програє.

Що ви дізнаєтесь у Введення команди

Введення команди — Кроки навчання

  1. Інструмент діагностики

    Trelvane запускає платформу хостингу та пропонує загальнодоступний Looking Glass: вставте хост, а периферійні сервери Trelvane перевірять його для вас і повернуть необроблений вихід. Зручно для клієнтів, які перевіряють, чи доступний сервер. Боб відкриває його, щоб побачити, як він поводиться, перш ніж торкнутися його.

  2. Він виконує справжню команду

    Один рядок на цій сторінці — вся причина, чому Боб зацікавлений.

  3. Використовуйте функцію

    Слідкуйте за нормальною поведінкою інструменту. Виконайте перевірку ping звичайного хосту, щоб браузер зафіксував запит, який надсилає сторінка.

  4. Знайдіть запит

    Запит вийшов, і браузер його зафіксував. Відкрийте панель «Мережа» та прочитайте, куди сторінка її надіслала та як хост подорожує.

  5. Ввести другу команду

    Боб більше ніколи не торкається форми. Він редагує отриманий запит на панелі «Мережа» та переписує значення host : петлеву адресу, крапку з комою, потім дві власні команди. Якщо сервер створює свою команду ping, вставляючи значення, крапка з комою завершує ping, а команди Боба виконуються одразу після неї. Він зв’язує id , щоб побачити, від імені кого працює сервер, і cat файлу робочого середовища, де агенти хостингу зберігають пароль бази даних і ключі хмари.

  6. Зникли ключі

    Пінг виконується, а потім з’являються рядки, які пінг ніколи не створює.

  7. Перевірка знань

    Ви щойно спостерігали, як інструмент ping виконує команди зловмисника та видає секрети сервера. Зафіксуйте чому.

  8. Попередження

    Ви володієте послугою Looking Glass від Trelvane. Вночі моніторинг помітив, що працівник діагностики робить те, що ніколи не повинен робити інструмент ping: виконує команди оболонки та читає власний секретний файл. Відділ безпеки надіслав вам деталі електронною поштою.

  9. Відкрийте обробник

    Кінцева точка ping обслуговується ping.js . Відкрийте його та подивіться, як він виконує команду.

  10. Помітьте недолік

    Обробник вставляє значення хоста в командний рядок і передає весь рядок до оболонки для запуску.

Охоплення стандартів безпеки

OWASP Top 10

  • A05:2025 Injection
  • A03:2021 Injection

CWE

  • CWE-78 Improper Neutralization of Special Elements used in an OS Command

CIS Controls

  • CIS 16 Application Software Security

NIST CSF

  • PR.AT-02 Individuals in specialized roles are provided with awareness and training so that they possess the knowledge and skills to perform relevant tasks with cybersecurity risks in mind
  • PR.PS Platform Security