Il y a environ deux mois, j'ai déployé un serveur Ubuntu avec comme objectif principal de servir une application web. Cependant, je suis toujours en train de développer l'application et n'ai donné l'adresse IP du serveur qu'à mon collègue et à quelques amis pour les tester.
Hier, j'ai vérifié les journaux de fail2ban et j'ai remarqué de nombreuses tentatives de bruteforce SSH en provenance de Chine, de France, etc. J'ai également vérifié mes journaux d'accès au serveur et j'ai remarqué des tentatives malveillantes sur des URL provenant des mêmes IP, essayant de forcer SSH. Un exemple d'une demande qu'ils ont faite est myip/otherip/file.php . Je ne sais pas comment interpréter cela. J'ai retracé l'IP de ce serveur et c'est sur la même société d'hébergement que je suis.
Question: Comment ont-ils découvert l'adresse IP du serveur avant même que j'en serve l'application ou que je ne la distribue?
Ma conjecture: Je suppose que c'est un bot qui continue d'essayer différentes IP d'un modèle qui mène aux serveurs de la même société d'hébergement. Est-ce une hypothèse correcte ou existe-t-il d'autres possibilités?
Votre supposition est probablement correcte.
Les gros hébergeurs de serveurs ont des plages d'adresses IP à partir desquelles ils attribuent des adresses IP à leurs clients. Les hébergeurs à petit budget sont fréquemment utilisés par des amateurs qui ne savent pas ce qu'ils font, il est donc probable qu'ils utilisent des mots de passe faciles à deviner ou configurent des applications Web non sécurisées. Cela fait de ces plages d'adresses IP des cibles précieuses pour les chapeaux noirs.
Lorsque vous remarquez de telles attaques depuis le réseau des hébergeurs, vous devez les signaler à l'hébergeur, car il s'agit très probablement d'une violation des conditions d'utilisation ... ou d'un serveur d'un autre client où les chapeaux noirs ont déjà réussi.
Tous les serveurs utilisant des adresses IPv4 obtiennent un certain niveau de bruit de fond sous la forme d'analyses automatisées et de tentatives de bruteforce. C'est essentiellement parce qu'il est facile de scanner tout l'espace d'adressage - cela prend moins d'une heure , et peut entraîner des systèmes qui n'ont pas encore été entièrement corrigés ou configurés.
En conséquence, je m'attends à ce que tout système voit beaucoup de ce type de trafic. C'est pourquoi il est important de trier votre sécurité avant d'ouvrir votre serveur à Internet. Gardez votre pare-feu activé, bloquant tout trafic entrant lors de sa configuration. Restreignez l'accès aux adresses IP pour les tests. Une fois que vous êtes sûr qu'il est sécurisé, vous pouvez ouvrir le pare-feu au reste d'Internet pour vous connecter.
Si vous avez un serveur avec un ensemble de recherche DNS inversé, une fois que quelqu'un a l'adresse IP, il peut chercher à quel nom de domaine votre système pense qu'il appartient, d'où l'URL tente également.
Fondamentalement, si vous vous êtes assuré que votre système est sécurisé, ne vous inquiétez pas - assurez-vous que vous avez des mots de passe décents pour SSH (ou, mieux encore, une connexion par clé) et que tous les autres services sont correctement verrouillés. Si vous ne l'avez pas fait, ou si vous pensez qu'ils sont entrés, traitez-le comme un serveur compromis - triez votre pare-feu (probablement avec votre fournisseur d'hébergement), puis recommencez.
Votre IP est comme un numéro de téléphone. Il n'est pas nécessaire de l'énumérer n'importe où pour pouvoir l'utiliser. En fait, il est déjà répertorié dans la partie des tables de routage du protocole BGP, le protocole utilisé par les FAI pour créer "Internet".
Les Chinois (entre autres) sont connus pour essayer n'importe quelle adresse IP existante pour voir si un service l'écoute. Votre serveur a répondu sur l'une de leurs sondes, puis il essaie de vous infecter automatiquement. (essentiellement ce qu'on appelle une attaque scriptée)
L'URL de votre site Web est semblable à l'inscription de votre nom dans un annuaire téléphonique, avec le "numéro" sous lequel vous pouvez être joint. Cela sera également utilisé par les chinois dès que vous le publierez, mais cela ne les limite pas pour essayer d'entrer avant.
En Amérique, arin.net est le référentiel public des blocs d'adresses IP et à qui ils appartiennent. Ces informations, par exemple, aident les administrateurs système à gérer le spam, le routage ou d'autres problèmes avec des personnes extérieures à leurs réseaux. Mais cela aide aussi les pirates. Un pirate informatique à la recherche de gains financiers laisserait probablement des clients finaux délicats comme le ministère de la Justice, la CIA ou les militaires seuls, et le répertoire arin.net permet de les exclure. Un tel pirate ferait mieux de fouiller dans les gammes publiées de GoDaddy, Amazon, DigitalOcean, Linode et Rackspace.
Chaque continent a son propre répertoire similaire à arin.net.
Vous pouvez également compter sur les visiteurs indésirables et vous préparer en conséquence.
C'est vraiment deux questions.
1.) Comment ont-ils découvert votre adresse IP avant même de configurer le serveur?
Comme d'autres personnes l'ont fait remarquer, il s'agissait probablement d'une simple analyse en masse et non de quelque chose de spécifiquement ciblé pour vous. Il existe des outils comme ZMAP qui peuvent analyser l'intégralité de l'Internet IPv4 en quelques minutes seulement.
Il y a beaucoup de gens qui collectent des informations sur Internet dans son ensemble, certains à des fins commerciales ou de recherche, mais aussi de nombreux mauvais acteurs qui le font également. Ceci est considéré comme normal pour Internet et il n'est pas rare que votre premier scan soit effectué par un tiers dans les 2 à 4 minutes suivant la connexion d'un ordinateur à Internet.
Remarque: Regardez attentivement les journaux sur votre serveur et vous trouverez également des personnes utilisant une méthode d'attaque. Ce sont de mauvais acteurs qui ont un moyen de pénétrer certains serveurs avec une configuration donnée à la recherche de systèmes vulnérables. Ça arrive tout le temps.
2.) Comment les attaquants trouvent-ils les adresses IP des serveurs récemment déployés?
Il existe plusieurs façons de procéder, les plus courantes étant les suivantes:
Utilisez un outil d'attaque par dictionnaire de force brute pour trouver tous les hôtes répertoriés dans le DNS externe d'une organisation (ou DNS interne mal configuré). Un outil qui fait un excellent travail est THC Hydra https://github.com/vanhauser-thc/thc-hydra
Si c'est une grande organisation, vous pouvez regarder le numéro AS des entreprises et trouver les adresses IP associées (préfixe IP) pour leur homologation BGP à n'importe quel nombre de lunettes à la recherche de routeur
https://www.us.ntt.net/support/looking-glass/
Notez que cela ne vous montrera que leurs plages d'adresses IP principales et non les serveurs qu'ils gèrent qui peuvent être situés chez un fournisseur de cloud distant
Une autre méthode consiste à télécharger une liste complète du DNS inversé pour toutes les adresses IP dans l'espace d'adressage IPv4.
https://scans.io/study/sonar.rdns
Cela ne trouvera pas non plus tout, mais il trouvera de nombreux sites hébergés chez divers fournisseurs de cloud et peut aider à trouver d'autres gammes de réseaux ou des sociétés tierces qui travaillent avec une organisation donnée
Finalement. Simplement en utilisant les moteurs de recherche. Les moteurs de recherche qui découvrent tout le HTML et le texte sur les sites Web sont un excellent moyen de trouver les serveurs associés qu'une entreprise met en place même s'il n'y a pas d'entrée DNS correspondante. En tant que testeur de pénétration, je trouve régulièrement des copies de sites Web ou de systèmes de gestion de contenu hébergés par des équipes de développement Web que je peux utiliser pour accéder au site Web principal de l'entreprise ou, dans certains cas, pour accéder aux navigateurs Web de personnes qui travaillent dans une organisation spécifique.
De plus, certains sites Web font référence à d'autres serveurs appartenant à une entreprise en affichant l'URL de l'autre serveur. La mise au rebut de tout le site Web accessible au public, puis la recherche d'adresses IP et de noms de domaine qui peuvent également révéler plus d'informations.
De même, les applications mobiles et les applications logicielles personnalisées divulguent également ce type d'informations.
Dans le processus de reconnaissance pour les tests de pénétration, il est typique de vérifier tout ce qui précède pour découvrir une surface d'attaque supplémentaire. Les mauvais acteurs peuvent faire la même chose et les mauvais acteurs bien organisés le font tout le temps en utilisant des outils automatisés.