Day #18 of #100DaysOfCyber | Lab : Exploitation d'une faille d'upload de fichier
Comme on l'a vu lors du Day 16, il ne faut jamais se fier au #Content-Type pour la vérification des fichiers côté Backend.
Pour valider ce lab, je devais récupérer le contenu du fichier /home/carlos/secret.
L'application possède une fonctionnalité d'upload pour la photo de profil. J'ai commencé par uploader directement mon script PHP pour extraire le contenu, mais le Backend a refusé en m'indiquant qu'il acceptait uniquement les images JPEG ou PNG.👇
Day #16 of #100DaysOfCyber | Concept du jour : Contourner la validation du Content-Type
Hier, on a vu le cas où un serveur n'avait aucune sécurité. Dans la vraie vie, les développeurs mettent des protections.
Aujourd'hui, on voit comment contourner un filtre basé sur le Content-Type.
Comment fonctionne ce filtre ?
Quand tu uploades une image, ton navigateur envoie une requête HTTP contenant une ligne appelée Content-Type. Par exemple : Content-Type: image/jpeg.
L'erreur classique en dev, c'est de lire cette ligne côté Backend et de lui faire aveuglément confiance. Si le serveur voit image/jpeg, il valide l'upload sans vérifier le contenu réel.
Comme cette ligne est générée par le navigateur, un attaquant peut la modifier en deux secondes.
L'attaquant envoie son script exploit.php. Le navigateur génère automatiquement : Content-Type: application/x-php.
Le serveur bloque la requête.
L'attaquant intercepte la requête avec Burp Suite et remplace manuellement la ligne par : Content-Type: image/jpeg.
Le Backend est trompé : il croit recevoir une photo et accepte le fichier. Le script PHP est enregistré sur le serveur.
Le Content-Type est une donnée utilisateur modifiable. On ne doit jamais lui faire confiance pour valider la sécurité d'un fichier. La seule vraie solution reste l'analyse des fichiers côté Backend.
#Un dev qui comprend la sécurité.
#Un pentester qui comprend le code.
@PamIbrahimaBaba@_makh0u@MDLD_
#Cybersecurity #WebSecurity #FileUpload #Bypass #BurpSuite #Backend #FullStack
Day #14 of #100DaysOfCyber | SAKR : #Smart Recon
J'ai travaillé sur la v1 du module Smart Recon.
Avant, je perdais beaucoup de temps pour réussir à regrouper toutes ces informations. Avec SAKR, j'ai tout centralisé en un seul clic autour de 3 étapes simples :
- Trouver : L'application récupère les sous-domaines de manière passive, sans toucher à la cible, en passant par des outils existants comme https://t.co/d6wAo6ExfM.
- Vérifier : Elle teste si les serveurs répondent, identifie le cloud provider et récupère les codes status de chaque page.
- Trier : Plus besoin de chercher, on obtient le résultat directement dans un tableau propre et on sait exactement par où commencer .
En quelques secondes, la cartographie est prête.
#Un dev qui comprend la sécurité.
#Un pentester qui comprend le code.
@PamIbrahimaBaba@_makh0u
#Cybersecurity #WebSecurity #SAKR #Reconnaissance #SmartRecon
@joshmanders@dhh@Cloudflare Haha fair enough 😂 It’s Intel’s new chip architecture — might give that M1 a run for its money. But a lake of panthers would also be a solid upgrade tbh
@strzibnyj Been an Omakub user since day one then tried Omarchy for like one day (not stable at that time), moved back to Omakub and felt completely lost 😅 GNOME suddenly felt heavy after just a few hours on a tiling WM. That’s when I knew there was no going back. Thanks @dhh