La faille upload, qu'est-ce que c'est ?
La faille upload est une faille permettant d'uploader des fichiers avec une extension non autorisée, cette faille est due à la mauvaise configuration du script d'upload ou à l'absence complète de sécurité.
Celle ci est généralement présente dans les scripts d'upload d'images.
En quoi ça consiste ?
Le but de cette faille est d'uploader un fichier avec une extension non autorisée de façon à avoir un accès au serveur cible.
Comment l'exploitée ?
Cette faille peut être exploitée de différentes manières.
1) Certains scripts d'uploads ne vérifient pas l'extension des fichiers, donc nous pouvons uploader tout et n'importe quoi. (Shells et autres joyeusetés)
2) Par un add-on firefox nommé Tamper Data, celui ci permet de changer les entêtes HTTP/HTTPS et les requêtes envoyées.
Par exemple, lors de l'envoie de notre script php, pendant que le serveur vérifie l'extension de notre fichier (application/php) nous allons pouvoir "tromper" la vérification en changeant tout simplement application/php par image/gif (ou jpeg, etc...), le script comprendra qu'il s'agit d'une image alors que c'est un script php.
3) Directement dans une image, celle ci ne vous permettra pas d'avoir accès au serveur, mais d'inclure du code javascript, et tout le monde le sait, le javascript, c'est dangereux.
4) Possibilité de tromper la vérification encore une foi, cette fois ci, le script ne vérifie pas les extensions, mais seulement la 1ere ligne du fichier.
Généralement dans les images gif, la 1ere ligne est "GIF89a;", il vous suffit d'ajouter cette ligne à votre script php (ou autre lamzeries), et le serveur considérera votre script comme une image.
Sécuriser
1) Filtrer les extensions des fichiers.
2) Protéger vos répertoires.
3) Interdire la lecture des fichiers php si vous n'êtes toujours pas sur de votre script. (obligez le téléchargement par exemple)