Force & Klynt
Клянт, нашёл старые скрипты файрвола, до сих пор в работе, но они уязвимы из-за последних обновлений. Мне нужен надёжный способ их защитить до того, как выкатят апдейт. Твоя способность разбираться в устаревшем коде – как раз то, что нужно. Как вообще подходишь к скриптам, которым уже сто лет в обед?
Сначала сделай полную резервную копию, потом скопируй скрипт в тестовую среду, максимально похожую на рабочую. Открой его в простом текстовом редакторе, который не форматирует код, и читай построчно – игнорируй все "современные" комментарии, смотри на логику. Ищи хардкодированные IP-адреса, стандартные логины и пароли или устаревшие вызовы syslog – вот где обычно подвох. Перепиши уязвимые участки в минималистичном стиле, например, в shell или Python 2, тестируй каждое изменение в тестовой среде и веди лог изменений. Когда будешь уверен, выкатывай патч во время технического обслуживания и добавь блок комментариев, объясняющий, зачем были внесены изменения, чтобы те, кто будет разбираться в коде потом, знали, что поменялось. Это стандартная процедура для скриптов, которым сто лет в обе стороны.