Pull to refresh

Comments 24

А можно было просто сменить порт веб-морды на какой-нибудь 65512 (в модифицированных прошивках обычно «искаропки» такое есть, либо прописывается при помощи какого-то конфига по ssh, щас уже не помню, юзаю DD-WRT — там в веб-интерфейсе всё есть). CSRF в таком случае уже не пройдёт, а мороки с ssh туннелем не будет.
Можно было написать такое правило для iptables, да. (я не обнаружил у местного httpd настроек)

Но мне не хотелось прятать багу за какой-то нестандартный порт. Порты можно и перебрать при желании.
Вся эта ситуация вообще странная. Прятать багу браузера сменой настроек роутера для защиты от внешнего скрипта. Честно говоря, в вашем способе каждый раз поднимать ssh чтоб зайти в вебморду мне кажется оверхедом, а от такой редкой комбинации, как ваша, смена порта должна защитить. Не верю я что кто-то csrf-ом будет порты перебирать)
Есть что-то такое. Но мне не хотелось менять браузер только из-за того что его особенность позволяет что-то легко эксплуатировать. Роутер то тоже в этой ситуации виноват.

Про перебор. Если это целевая атака именно на меня, то почему бы и не перебрать. Знание о том что я повесил веб интерфейс роутера на другой порт не такое тайное.
Если вы считаете, что кто-то ведет целевую атаку на вас, то статью об этом точно писать не стоило :)
Я вроде избежал таких решений, публикация статьи о которых могла бы как-то мне навредить.

Ну и атака это дело такое. Вчера, условно, не было соседа, а сегодня приехал и ему очень нужен мой роутер.
С ssh-ем получился такой тумблер для включения-отключения веб интерфейса, примерно то что я хотел.

Не уверен, что тут действительно есть повод для гордости, но ту команду для создания тоннеля я могу набрать быстро и не смотря в ман.
Заодно теперь я могу настраивать роутер по зашифрованному и аутентифицируемому каналу.
Веб интерфейс роутера, при беглом поверхностном взгляде, — это довольно большое количество страниц неизвестного качества кода с суффиксами .asp, так что выбор был не очень сложным…
Доктор, у меня галлюцинации…
наоборот, приманивает… На живца, так сказать.
Все проще: китайцы, которые писали прошивку для роутера, страдают карго-культом. А что: наш маленький роутер совсем как большой сервер, вот и странички на asp заканчиваются!
За ссылку на культ — спасибо!
… и обнаружить веб интерфейс по адресу localhost:8080.

Этот адрес, на мой взгляд, также будет в списке приоритетных целей для CSRF…
Смысл в том, что он доступен не все время, а только при поднятом туннеле.
Насколько я понял автора, он закрывает веб-интерфейс снаружи полностью, а из локалки оставляет маленькую лазейку. Как по мне — вполне регламентная операция для админа, обеспечивающая приемлемый уровень безопасности (в условиях неустранимости бага).

P.S. — я бы на месте автора использовал старый добрый port knocking, но допускаю, что у нас фломастеры разные.
Вы неправильно поняли автора. Веб-интерфейс снаружи и без того закрыт. Задача — защититься от собственного браузера, который не спрашивает логина с паролем при входе.
Каюсь, прочитал по диагонали. А после статьи про билайновские роутеры подумал очевидное.
В данном случае да, неважно какой конвейер туннелей нагромоздить. Если Сафари желает помнить пароль от админки, то он его запомнит на любом порту в любой позе…
Почему неважно? Достоинство туннеля — его можно выключить, и держать выключенным большую часть времени.

PS да, port knocking в такой ситуации тоже подошел бы.
Ну, если параноить по поводу этой дыры, то все, что у вас получилось это ограничить временное окно. Это не гарантирует что событие не произойдет, а всего лишь несколько уменьшает вероятность.

P.S. — прочитав внимательно статью, пришел к мнению, что ваш вариант с одним правилом в iptables имеет больше шансов выжить при перепрошивке роутера, чем несколько строк port knocking'а.
Надо просто закрывать остальные вкладки браузера при поднятом туннеле.
Надо сказать, не думал о том что оставшийся открытым сайт может сделать запрос сильно после загрузки. Наверное, наивное ожидание того что левую ссылку я распознаю сразу после открытия.
На самом деле апдейт прошивки у меня случается очень редко и это вообще не критично.

Я не пользовался port knocking, но вообще мне скрипт для стучания по портам или держание комбинации в голове чуть больше напрягает, чем команда на создание тоннеля, которая еще и защищает от всяких атак на канал до роутера.
Sign up to leave a comment.

Articles