2013-12-15 4 views
6

У меня есть сервер, который работает на aws - он сбалансирован с нагрузкой для некоторых экземпляров ec2, которые запускают серверы node.js. Группы безопасности настроены таким образом, что только LB может ударить их по HTTP-порту.Выполнение/предотвращение потенциально вредоносных запросов (AWS, Node.js)

Я искал некоторые файлы журналов и видел кучу (по 50 или около того за один раз, по-видимому, несколько периодически) запросов к /manager/html - AFAIK это похоже на попытку выявить уязвимость в моем приложении или получить доступ к менеджер базы данных.

Мои вопросы:

  • Am I мишенью или эти случайные искатели? Это на службе, которая еще не запущена, так что это определенно неясно. Там была небольшая пресса об услуге, поэтому вполне возможно, что человек будет знать о нашем домене, но этот субдомен не был обнародован.

  • Существуют ли общие соглашения, запрещающие этим типам запросов ударять мои экземпляры? Предпочтительно, я мог бы настроить какую-то частоту или черный список в своем LB, и никогда не получал бы эти типы запросов в экземпляре. Не уверен, как обнаружить вредоносный и обычный трафик.

  • Должен ли я запускать локальный прокси-сервер в своих экземплярах ec2, чтобы избежать такого рода вещей? Существуют ли существующие решения node.js, которые могут просто отказаться от запросов на уровне приложения? Это плохая идея?

  • Бонус: Если бы я должен был регистрировать происхождение этих запросов, была бы полезной эта информация? Должен ли я попытаться отправиться изгоев и выследить происхождение и послать им больно? Должен ли я bemwineguns происхождения IP, если это единственное происхождение? (Я понимаю, что это глупо, но может вдохновить некоторые забавные ответы).

В настоящее время эти запросы не оказывают на меня влияние, они получают 401 или 404s, и это практически не влияет на других клиентов. Но если это будет расти в масштабе, каковы мои варианты?

ответ

1

Мы столкнулись с подобными проблемами в прошлом, и мы предприняли некоторые превентивные меры для прекращения таких атак, хотя это не может гарантировать их полное прекращение, но оно продемонстрировало значительные меры по сокращению таких атак.

  1. http://uksysadmin.wordpress.com/2011/03/21/protecting-ssh-against-brute-force-attacks/
  2. http://www.prolexic.com/knowledge-center-white-paper-ddos-mitigation-incident-response-plan-playbook.html
  3. https://serverfault.com/questions/340307/how-can-i-prevent-a-ddos-attack-on-amazon-ec2

Надеется, что это помогает.

1

Рассмотрите возможность запуска кеша прокси, такого как Varnish, перед серверами приложений. Используйте его VCL, чтобы разрешить доступ только к URI, который вы определяете, и отклонять все остальное, разрешить GET, но блокировать PUT и POST и т. Д. Также можно использовать для фильтрации заголовков HTTP-ответов, которые вы возвращаете. Это позволит вам замаскировать ваш сервер node.js как apache, например. Многие из них работают в сети, чтобы реализовать это.

Смежные вопросы