


Exemple d'analyse des vulnérabilités de téléchargement de fichiers Web
Module de fonction de téléchargement de fichiers
La fonction de téléchargement de fichiers est une fonction indispensable pour la plupart des applications WEB. Les sites Web permettent aux utilisateurs de télécharger leurs propres avatars, certains sites de réseaux sociaux permettent aux utilisateurs de télécharger des photos et certains sites Web de services exigent que les utilisateurs le fassent. télécharger des fichiers électroniques de documents de support, les sites Web de commerce électronique permettent aux utilisateurs de télécharger des photos pour afficher les conditions du produit, etc. Sans mesures de sécurité adéquates, même une fonction de téléchargement de fichiers apparemment insignifiante peut être confrontée à des risques de sécurité extrêmement élevés.
Principe de vulnérabilité de téléchargement de fichier
Lorsqu'un utilisateur télécharge un fichier dans le module de fonction de téléchargement de fichier, si l'application WEB ne vérifie pas efficacement la sécurité du fichier pendant le processus de téléchargement de fichier, l'attaquant peut attaquer le serveur en téléchargeant des fichiers malveillants tels que WEBshell. Dans ce cas, on pense que le système présente une vulnérabilité de téléchargement de fichiers.
Vulnérabilité de téléchargement de fichiers --- webshell
La méthode la plus courante de vulnérabilité de téléchargement de fichiers consiste à télécharger un fichier cheval de Troie de site Web (webshell) WEBSHELL est également appelé fichier cheval de Troie de page Web. Selon les différents langages de développement, il est divisé en. Cheval de Troie ASP et cheval de Troie PHP, chevaux de Troie JSP, etc. Ce type de cheval de Troie utilise les fonctions d'exécution de commandes système, de lecture et d'écriture de fichiers dans des langages de script. Une fois téléchargés sur le serveur et analysés par le moteur de script, l'attaquant peut contrôler le serveur. .
Les fichiers Webshell sont divisés en gros chevaux et petits chevaux (cheval de Troie d'une phrase), chevaux d'images, etc.
Damas : La fonction est relativement bonne et peut être utilisée avec le navigateur, la quantité de code est généralement importante ; est relativement faible, la quantité de code est importante et les fonctionnalités doivent généralement être masquées par le cryptage et d'autres méthodes.
Xiao Ma : La fonction est simple et doit être utilisée avec le client ; la taille du code est généralement petite ; la dissimulation est relativement forte et il est facile de masquer les fonctionnalités via la déformation et le filtrage de contournement. l'outil couteau.
Picture Horse : lorsqu'un site Web restreint le téléchargement aux formats liés aux images, les attaquants ne peuvent pas contourner la restriction et peuvent essayer d'utiliser des Picture Horses pour mettre en œuvre des opérations WebShell.
La vulnérabilité de téléchargement de fichiers contourne les restrictions
En une phrase, le cheval de Troie est similaire à
(1) Le format de téléchargement de cette page Web est restreint et doit être conforme aux formats jpg, jpeg, JPG, JPEG, le format original est donc modifié au format 1.jpg (vérification côté serveur)
Ouvrez le logiciel burp suite pour intercepter le paquet de données et changez le nom du fichier en 1.php afin que le script php puisse être exécuté. Sinon, bien que le fichier avec le suffixe jpg puisse être téléchargé, il n'aura aucune fonction d'exécution.
Définissez v=phpinfo() dans le plug-in hackbar ; vous pouvez afficher de nombreuses informations sur l'état actuel de php
(2) Cette page limite le format de téléchargement ( MIME), et le fichier doit être Changez le format en JPEG ou PNG (vérification côté serveur)
Utilisez la suite burp pour intercepter les informations, changez le type de contenu en image/png
Utilisez l'outil hackbar pour définir le paramètre v=phoinfo(); afficher les informations sur l'état de PHP
(3) Cette page filtre le suffixe du fichier et n'accepte pas les fichiers de type PHP (vérification côté serveur)
Ouvrez le logiciel burp suite pour intercepter les informations et copier le fichier. Changez le nom en 1.PHp pour contourner l'identification du serveur Web
Utilisez hackbar pour définir v=system (ipconfig);
(4) Utilisez la troncature pour tronquer le jpg. Cette phrase prête quelque peu à confusion. La bonne façon de l’écrire devrait être :
1. Vulnérabilité de téléchargement de fichiers utilisant « %00 » pour tronquer le nom du fichier.
2. Lorsque vous utilisez "%00", vous pouvez utiliser "ctrl+shift+u" pour le compiler.
1.php%00.jpg, %00 utilise ctrl+shift+u pour compiler
Utilisez l'outil hackbar pour définir le paramètre v=phoinfo(); vérifiez les informations sur l'état du php (5) Cette page Web permet uniquement de télécharger des images et la modification du nom de suffixe n'est pas valide #🎜 🎜## 🎜🎜#
Téléchargez l'image b374k.jpg du cheval, le mot de passe de connexion est b374k
Utilisez le navigateur pour utilisez le cheval d'image pour effectuer des opérations Webshell
Les types de fichiers autorisés à être téléchargés sur cette page incluent jpg, jpeg, png, gif et 7z. Vous pouvez utiliser la méthode d'Apach pour identifier l'extension de l'arrière vers l'avant lorsqu'il ne peut pas reconnaître le nom du suffixe, et changer 1.jpg en 1.php.7z via burp, et cela deviendra un fichier compressé.
Capturez le paquet via le logiciel burp et changez 1.jpg en 1.php.7z via burp, et il deviendra un fichier compressé déposer .
Utilisez l'outil hackbar pour définir le paramètre v=phoinfo(); afficher les informations sur l'état de php
Les vulnérabilités de téléchargement de fichiers sont relativement courantes et nuisibles à la sécurité Web. Les créateurs de sites Web peuvent accroître les efforts de prévention à cet égard : comme renforcer la portée de la liste noire des suffixes de fichiers ; le répertoire et le répertoire de sauvegarde du fichier téléchargé n'autorisent pas les autorisations d'exécution, etc.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

1. Enregistrez la sortie dans un fichier à l'aide du module : la journalisation peut générer des journaux de niveau personnalisé et peut générer des journaux vers un chemin spécifié. Niveau de journalisation : debug (journal de débogage) = 5) {clearTimeout (time) // Si tous sont obtenus 10 fois dans un. les lignes sont vides Tâche planifiée d'effacement du journal}return}if(data.log_type==2){//Si un nouveau journal est obtenu pour(i=0;i

Introduction à Caddy Caddy est un serveur Web puissant et hautement évolutif qui compte actuellement plus de 38 000 étoiles sur Github. Caddy est écrit en langage Go et peut être utilisé pour l'hébergement de ressources statiques et le proxy inverse. Caddy présente les principales caractéristiques suivantes : par rapport à la configuration complexe de Nginx, sa configuration originale de Caddyfile est très simple ; il peut modifier dynamiquement la configuration via l'AdminAPI qu'il fournit, il prend en charge la configuration HTTPS automatisée par défaut et peut demander automatiquement des certificats HTTPS ; et configurez-les ; il peut être étendu aux données Des dizaines de milliers de sites ; peut être exécuté n'importe où sans dépendances supplémentaires écrites en langage Go, la sécurité de la mémoire est plus garantie ; Tout d’abord, nous l’installons directement dans CentO

Utilisation de Jetty7 pour le traitement du serveur Web dans le développement JavaAPI Avec le développement d'Internet, le serveur Web est devenu l'élément central du développement d'applications et est également au centre de l'attention de nombreuses entreprises. Afin de répondre aux besoins croissants des entreprises, de nombreux développeurs choisissent d'utiliser Jetty pour le développement de serveurs Web, et sa flexibilité et son évolutivité sont largement reconnues. Cet article explique comment utiliser Jetty7 dans le développement JavaAPI pour We

Le barrage de blocage du visage signifie qu'un grand nombre de barrages flottent sans bloquer la personne dans la vidéo, donnant l'impression qu'ils flottent derrière la personne. L'apprentissage automatique est populaire depuis plusieurs années, mais beaucoup de gens ne savent pas que ces fonctionnalités peuvent également être exécutées dans les navigateurs. Cet article présente le processus d'optimisation pratique des barrages vidéo. À la fin de l'article, il répertorie certains scénarios applicables. cette solution, dans l'espoir de l'ouvrir. mediapipeDemo (https://google.github.io/mediapipe/) montre le principe de mise en œuvre du calcul d'arrière-plan du serveur vidéo de téléchargement à la demande du barrage de blocage de visage grand public pour extraire la zone du portrait dans l'écran vidéo et la convertit en stockage SVG client pendant la lecture de la vidéo. Téléchargez svg depuis le serveur et combinez-le avec barrage, portrait.

Tout d’abord, vous aurez un doute, qu’est-ce que le frp ? En termes simples, frp est un outil de pénétration intranet. Après avoir configuré le client, vous pouvez accéder à l'intranet via le serveur. Maintenant, mon serveur a utilisé nginx comme site Web et il n'y a qu'un seul port 80. Alors, que dois-je faire si le serveur FRP souhaite également utiliser le port 80 ? Après l'interrogation, cela peut être réalisé en utilisant le proxy inverse de nginx. A ajouter : frps est le serveur, frpc est le client. Étape 1 : Modifiez le fichier de configuration nginx.conf sur le serveur et ajoutez les paramètres suivants à http{} dans nginx.conf, server{listen80

La validation du formulaire est un maillon très important dans le développement d'applications Web. Elle permet de vérifier la validité des données avant de soumettre les données du formulaire afin d'éviter les failles de sécurité et les erreurs de données dans l'application. La validation de formulaire pour les applications Web peut être facilement implémentée à l'aide de Golang. Cet article explique comment utiliser Golang pour implémenter la validation de formulaire pour les applications Web. 1. Éléments de base de la validation de formulaire Avant de présenter comment implémenter la validation de formulaire, nous devons savoir quels sont les éléments de base de la validation de formulaire. Éléments de formulaire : les éléments de formulaire sont

Cockpit est une interface graphique Web pour les serveurs Linux. Il est principalement destiné à faciliter la gestion des serveurs Linux pour les utilisateurs nouveaux/experts. Dans cet article, nous aborderons les modes d'accès à Cockpit et comment basculer l'accès administratif à Cockpit depuis CockpitWebUI. Sujets de contenu : Modes d'entrée du cockpit Trouver le mode d'accès actuel au cockpit Activer l'accès administratif au cockpit à partir de CockpitWebUI Désactiver l'accès administratif au cockpit à partir de CockpitWebUI Conclusion Modes d'entrée au cockpit Le cockpit dispose de deux modes d'accès : Accès restreint : il s'agit de la valeur par défaut pour le mode d'accès au cockpit. Dans ce mode d'accès vous ne pouvez pas accéder à l'internaute depuis le cockpit

Les normes Web sont un ensemble de spécifications et de directives développées par le W3C et d'autres organisations associées. Elles incluent la normalisation du HTML, CSS, JavaScript, DOM, l'accessibilité du Web et l'optimisation des performances. En suivant ces normes, la compatibilité des pages peut être améliorée. , maintenabilité et performances. L'objectif des normes Web est de permettre au contenu Web d'être affiché et d'interagir de manière cohérente sur différentes plates-formes, navigateurs et appareils, offrant ainsi une meilleure expérience utilisateur et une meilleure efficacité de développement.
