Ошибки в безопасности сайтов — что чаще всего промахиваются и как это исправить
Наблюдаю, что многие разработчики тащат кучу багов в продакшн именно из-за базовых ошибок, которые легко потом чинятся. Например, частый косяк — неправильно настроенные права доступа к файлам и папкам: всегда проще отрубить доступ, а не пытаться уследить где кто что читает. Еще народ часто забывает про фильтрацию входных данных, и вот они уже получают XSS или SQL-инъекцию. Есть спецы, которые ставят «универсальный» фильтр, но тот либо слишком слабый, либо слишком строгий и ломает логику.
Часто проще жестко закрыть доступ к файлам, чем заморачиваться с точечными настройками — меньше шансов на ошибку. А универсальные фильтры — это палка о двух концах: либо пропускают дыры, либо убивают функционал, стоит выбирать с умом.
Не всегда так просто. Иногда слишком жесткие ограничения ломают нормальный функционал, и приходится потом танцевать с бубном, чтобы подправить. А универсальных решений, которые бы подходили ко всем ситуациям, на мой взгляд, вообще почти нет. Каждому проекту нужно что-то своё, иначе рискуешь либо дыры оставить, либо юзера загнать в ступор.
Вот это да, реально часто сталкиваюсь с тем, что пытаешься сделать фильтр, а он либо слишком строгий и ломает все, либо слишком слабый и дырки остаются. В итоге проще иногда просто жёстко права поставить на файлы, чем потом искать ошибку в куче правил. Но да, всё зависит от проекта, универсальных рецептов нет. Главное — баланс найти, чтобы и защитить, и работу не убить.