Ищу утилиты/словари для фазинга параметров. В данный момент конкретно для php нужно пофазить GET/POST но и для других ЯП тоже могут пригодится. есть такая утилита, в ней я скачал httparchive_parameters_top_1m_2023_05_28.txt кто знает еще что полезное по базам словарей поделитесь. Code: https://github.com/BlackArch/wordlistctl
Есть такая штука Param Miner - https://github.com/PortSwigger/param-miner это extension для Burp Suite работает в связке с Loger++ https://portswigger.net/bappstore/470b7057b86f41c396a97903377f3d81 точнее в логере вы можете видеть процесс работы, все запросы. Обзор:
Этим пользуюсь иногда https://github.com/Sh1Yo/x8 а до этого помогала тулза https://github.com/s0md3v/Arjun
Любопытно что от фаззинга защититься в целом-то не так сложно. В некоторых случаях вообще просто. Все запросы, не соответствующие регулярке отметаются и до свиданья... А то и добро пожаловать в блеклист. Х/з. Ты-то знаешь какие должны быть запросы к тебе на сайтенг коль ты его владелец.
Это в теории. На практике, если логика внутренней структуры твоего приложения (веб-сайта) хотя бы немного выше примитивного уровня, то работа с "входными данными" часто может закончиться игрой в русскую рулетку. Например, насколько мне известно: стандартная практика, когда необходимо хранить "входные данные" в базе данных, - хранить такие данные в сыром виде, а предварительная обработка уже осуществляется в момент работы с ними, которая в последствии, при сложной обработке или обыкновенной невнимательности, - может стать лавинообразной отправной точкой нежелательного поведения.
Каждый роут не защитишь регуляркой, очень неудобно разработчикам, да и нет смысла защищать от фаззинга свое приложение, оно штатно обрабатывает свои входные параметры и игнорирует остальные. Тут никакой опасности для приложения нет, обычно нет задачи скрыть свои параметры, есть задача правильно и безопасно их обработать. Параметры ищут при атаке/пентесте в двух случаях: - обнаружили роут, параметры неизвестны, ищем их из предположения, что скрипт имеет уязвимости. - есть уязвимость "Mass assignment", например скрипт обрабатывет не отдельные переменные, а заполняет модель входными данными, тогда можем получить ситуацию типа, когда разроботчик из формы регистрации вызывает такой скрипт (который именно эти параметры безопасно обработает), но в модели описано большее количество полей, чем есть в форме (например есть поле user_type, или is_admin), тогда добавив его на вход скрипта - зарегистрируемся сразу админом. Вот с эти борются в приложении. Фреймворки обычно содержат специальные механизмы, которые разрешают заполнять модель только по белому списку. Как защититься от фаззинга параметров? - безопасно обрабатываем входные данные - исключаем возможность массового присвоения параметров Этого достаточно.
Коль уж мы начали небольшой оффтоп, то я подумал, что было бы также полезно сделать небольшую "заметку на полях" относительно разграничения сути понятий "Проверка" и "Обработка"... Регулярные выражения, безусловно, являются очень мощным механизмом современного программирования, но их суть заключается именно в проверке соответствия последовательности данных заданному шаблону (отсюда можно сделать вывод: в некоторых ситуациях мы можем сопоставить шаблону данные, которые вообще не ожидаем получить). А обработка является либо последующим этапом после проверки, либо этап проверки вложен в контекст этапа обработки.
какайто мысль зарождается у этого господина. Вы мне это бросьте !!! Мысли эти до добра не доведут. Хотя можно подумать... и продать потом.
Ну в принципе весь софт работает по одному принципу, наверное что-то сверьестественное ожидать не стоит. Больше интересуют специфические словари, не общего назначения где 50к строк в файле.