Bonjour,

Voila je rencontre un petit problème avec mon code.

J'ai lancé une API Rest/Json qui fait l'objet de scan et de tentatives de hacks.
Je me demandais s'il y a des astuces soit au niveau code ou niveau server linux pour ejecter les attaquants.

Merci

10 réponses


sylvain
Auteur

pour information, j'ai activé https et utilisé une API_KEY, et un hashage SHA1+SALT.
Mais je vois mes logs pollués par des scripts kiddie ? je pense

Salut, peux tu donner un peu plus d'explications stp.

Quand tu dis que ce kiddie t'attaque, que fait-il vraiment ? Il essaye de te voler des données, de faire tomber ton API, ton serveur ?
Que fait-on API ?

sylvain
Auteur

Je vois juste passer des urls qui n'ont rien a voir avec le site du genre

/phpMyadmin
/admin
etc...

Dans les logs de Apache/Nginx, as-tu l'ip qui fait la requête pour ces urls ?

sylvain
Auteur

oui mais c'est jamais les memes

C'est du scan de base malheureusement, leur but est de chercher des accès types (phpmyadmin, admin, wp-admin, api, ...), puis de faire du brut force avec des dictionnaires de mots de passe ... tu ne peux pas l'empêcher, mais limiter les risques.

Dans le cas de ton API, si elle est bien sécurisé (ce qui semble être le cas) pas de trop de risque d'intrusions.

Pour aller un peu plus loin, tu pourrais éventuellement mettre en place un fail2ban sur les erreurs 404, les accès à ton API, et sur les ports courants. Eviter peut-être aussi les accès "connus", si par exemple ton API est accessible par le dossier /api, trouve quelque chose de plus "exotique"

sylvain
Auteur

Comme l'api est ouverte pour les applications mobile, y a t'il un moyen pour fitrer les requetes ne venant pas des mobiles. C'est a dire tous ce qui viens du web, a l'exeption de mon outil qui teste le webservice.

l'api est ouverte sans token rien du tous pour les mobile?

sylvain
Auteur

si token etc mais ils vont a force de scanner trouver un jour

ben non pas, si tu as un certif https, que tu utilise un token d'auth pour signé tes headers http ou tes requettes, que tu utilise un token pour les url tu est tranquille