от: http://seclists.org/fulldisclosure/2009/Jul/0388.html
Если я понимаю это лучше всего из постов с: http://news.ycombinator.com/item?id=723798 ребята из Matasano оставили sshd в Интернете доступным - какие-либо предлагаемые решения для этого (с точки зрения программирования)?
security
vulnerabilities
hacking
user14898
источник
источник
Ответы:
Как взломали Матасано?
На это невозможно ответить из информации в посте к Полному раскрытию. Однако всегда интересно спекулировать, так как они дают немного информации -
Они запускают свои двоичные
th3_f1n41_s01ut10n
файлы "" на сервере Матасано, который подключается к порту ssh. Он находит действительного пользователя без полномочий root с помощью неизвестных средств, а остальная часть вывода редактируется.Двоичный файл запускается снова с использованием найденного имени пользователя, который входит в систему и подключается к своему серверу через порт 3338 (надеюсь, что это имя не зарегистрировано в их имени ...).
Они могут подразумевать, что у них есть 0 дней против этого ядра, что довольно старо, если учесть наличие акций этой компании в торговле.
Упс - вдруг пользователь теперь root. У них есть локальный эксплойт для повышения привилегий в / tmp, который может быть 0-дневным, на который они ссылались.
Таким образом, здесь происходит как минимум два эксплойта - эксплойт OpenSSH для получения действительного пользователя без полномочий root в системе и входа в систему под этим пользователем, а затем повышение локальных привилегий.
Учитывая, что OpenSSH имеет несколько известных проблем безопасности, начиная с версии 4.5:
Со страницы безопасности OpenSSH :
~/.ssh/rc
для сессий, команда которых была переопределена с помощью директивы ForceCommand sshd_config (5). Это было документированное, но небезопасное поведение (описано в примечаниях к выпуску OpenSSH 4.9).Я думаю, что это старое ядро Linux и старый демон SSH сделали для них. Кроме того, он работал на их www-сервере, который доступен в Интернете, что, на мой взгляд, вполне уверенно. Люди, которые ворвались, очевидно, хотели смутить их.
Как предотвратить эти атаки?
Это могло бы быть предотвращено путем упреждающего администрирования - обеспечения исправления любых подключенных к Интернету служб и ограничения количества людей, которые могут подключаться, вместо того, чтобы разрешать людям подключаться из любого места. Этот эпизод усваивает урок, заключающийся в том, что безопасное системное администрирование сложно и требует от бизнеса преданности делу, чтобы у ИТ-специалистов было время исправлять ошибки - на самом деле это не так легко, по крайней мере в небольших компаниях.
Лучше всего использовать подход с поясом и скобками - использование аутентификации с открытым ключом, внесение в белый список в ssh-демоне, двухфакторная аутентификация, ограничения IP и / или размещение всего, что находится за VPN, являются возможными путями его блокировки.
Я думаю, что знаю, что буду делать на работе завтра. :)
источник
Люди любят создавать FUD из-за этого, но кажется, что они знали, что пользователь adam уже был там, и также знали его пароль (возможно, с помощью грубой силы или других методов). Тем не менее, они хотят выглядеть круто и создавать эту суету во всем.
Еще одна интересная вещь - это то, что пользователь adam не регистрировался в этом ящике более года:
(вывод lastlog)
Поэтому он, вероятно, какое-то время хранил этот пароль (возможно, плохой).
* Если бы у них действительно был инструмент для обнаружения имен пользователей через SSH, они могли бы использовать всех остальных пользователей для получения удаленного доступа, но они использовали наиболее распространенное имя пользователя в этом поле (легко догадаться).
источник
Почему вы пытаетесь решить эту проблему с точки зрения программирования?
Вместо этого вы должны решить это с точки зрения умного сервера-администратора. В комментариях по ссылкам, которые вы разместили, есть несколько замечательных предложений, таких как использование белого списка.
Я также хотел бы добавить это, потому что вы спрашиваете здесь, вы, скорее всего, ни в коем случае не эксперт по безопасности, и все, что вы могли бы написать, только добавило бы больше дыр. Это действительно не вопрос программирования вообще.
источник
Защитите свое программное обеспечение от 0-дневных атак ... что невозможно.
Возможно, один хороший подход - заявить, что ваше программное обеспечение не взломано, что заставит whitehats попробовать его и полностью раскрыть все, оставляя меньше дыр. У Oracle 10 было это требование, и на следующий день было найдено 9 новых дыр. Это довольно безопасно сейчас.
Скорее всего, хакер злоупотребил конфигурацией совершенно хорошего софта
источник
я просто поражаюсь, что на этой машине было так много пользователей со снарядами. вот так они и завладели, все остальное - красная селедка, предназначенная для отвлечения. один из них, скорее всего, получил свой ssh-клиент на другом компьютере-оболочке, и тогда игра была окончена. дать каждому учетную запись оболочки и сделать мир sshd доступным просто лениво и глупо.
источник