Quel est le principe du framework Struts2
Le principe du framework Struts2 : 1. L'intercepteur analyse le chemin de la requête ; 2. Trouve le nom complet de la classe Action ; 3. Crée l'objet Action ; 4. Exécute la méthode Action ; . Afficher l'analyse. Son principe repose sur le mécanisme d'interception, qui sépare complètement le contrôleur logique métier de l'API Servlet, améliorant ainsi la réutilisabilité et la maintenabilité du code. En utilisant le mécanisme de réflexion, le framework Struts2 peut créer et gérer de manière flexible des objets Action pour traiter les demandes et les réponses.
Le système d'exploitation de ce tutoriel : système Windows 10, ordinateur DELL G3.
Struts2 est un framework de couche Web basé sur le modèle MVC, qui utilise un mécanisme d'intercepteur pour gérer les demandes des utilisateurs. Voici le principe du framework Struts2 :
1. L'intercepteur analyse le chemin de la requête : Lorsque l'utilisateur envoie une requête à l'application web, l'intercepteur du framework Struts2 analysera le chemin de la requête et obtiendra le nom de l'action.
2. Rechercher le nom complet de la classe Action : Selon le nom d'Action, le framework Struts2 trouvera le nom complet de la classe correspondante dans le fichier de configuration. Ces informations de configuration sont généralement définies dans le fichier struts.xml.
3. Créer un objet Action : Une fois que le framework Struts2 a trouvé le nom complet de la classe Action, il utilisera le mécanisme de réflexion pour créer une instance de la classe (c'est-à-dire un objet Action). De cette façon, un nouvel objet Action est créé pour chaque requête.
4. Exécutez la méthode Action : Lorsque l'objet Action est créé, l'intercepteur confiera le traitement de la requête à ActionProxy. ActionProxy est l'objet proxy de l'objet Action. Il exécute la logique métier correspondante en appelant la méthode execute() de l'objet Action.
5. Résultat de retour : Une fois l'action exécutée, un résultat de chaîne (code de résultat) est renvoyé. Cette chaîne de résultat est généralement associée à une vue (View), qui permet d'afficher les résultats à l'utilisateur.
6. Analyse de la vue : Le framework Struts2 analysera la vue correspondante en fonction de la chaîne de résultat renvoyée et affichera le résultat à l'utilisateur. Les vues peuvent être des pages JSP, des modèles FreeMarker, etc.
Le principe du framework Struts2 est basé sur le mécanisme d'interception, qui sépare complètement le contrôleur logique métier de l'API Servlet, améliorant ainsi la réutilisabilité et la maintenabilité du code. Dans le même temps, en utilisant le mécanisme de réflexion, le framework Struts2 peut créer et gérer de manière flexible des objets Action pour implémenter le traitement des demandes et des réponses.
En tant que framework MVC classique, le framework Struts2 présente de nombreux avantages et inconvénients. Ce qui suit est une introduction détaillée aux avantages et aux inconvénients du framework Struts2 :
Avantages du framework Struts2 :
1. Bibliothèque de balises riche : Struts2 fournit un grand nombre de bibliothèques de balises, ce qui peut considérablement améliorer l'efficacité du développement. et simplifier le code de la couche de vue. 2. Mécanisme d'intercepteur : Struts2 utilise le mécanisme d'intercepteur pour implémenter les fonctions de pré-traitement et de post-traitement des requêtes. Ce mécanisme sépare complètement le contrôleur logique métier de l'API Servlet, améliorant la réutilisabilité et la facilité d'utilisation du code. 3. Conversion de type et vérification des entrées : Struts2 fournit des fonctions intégrées de conversion de type et de vérification des entrées, qui peuvent facilement vérifier et traiter les entrées de l'utilisateur.Les défauts du framework Struts2 :
1 Ordre de dépendance des intercepteurs : L'ordre de dépendance des intercepteurs de Struts2 est corrigé, ce qui peut conduire à un ordre d'exécution incorrect des intercepteurs dans certains cas. 2. Problèmes de performances : étant donné que Struts2 utilise un grand nombre de mécanismes de réflexion, cela peut entraîner des problèmes de performances, notamment lors du traitement d'un grand nombre de requêtes. 3. Courbe d'apprentissage abrupte : le framework Struts2 est puissant, mais la courbe d'apprentissage est relativement abrupte et les débutants peuvent prendre un certain temps pour s'y familiariser. 4. Activité communautaire : Bien que Struts2 soit un framework MVC classique, avec l'émergence d'autres frameworks émergents, l'activité communautaire de Struts2 a décliné. En résumé, le framework Struts2 possède des fonctions riches et une évolutivité puissante, mais il présente également quelques défauts. Dans le développement réel, le cadre approprié doit être sélectionné en fonction des exigences du projet et de la pile technologique de l'équipe.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. Introduction La vulnérabilité Struts2 est une série classique de vulnérabilités. La cause première est que Struts2 introduit des expressions OGNL pour rendre le framework flexible et dynamique. Avec l'amélioration des correctifs du framework global, il sera désormais beaucoup plus difficile de découvrir de nouvelles vulnérabilités Struts2 qu'auparavant. À en juger par la situation actuelle, la plupart des utilisateurs ont déjà réparé les vulnérabilités historiques à haut risque. Actuellement, lors des tests d'intrusion, les vulnérabilités de Struts2 sont principalement laissées au hasard, ou il sera plus efficace d'attaquer les systèmes non corrigés après avoir été exposés à l'intranet. Les articles d'analyse en ligne analysent principalement ces vulnérabilités Struts2 du point de vue de l'attaque et de l'exploitation. En tant que nouvelle équipe d'attaque et de défense H3C, une partie de notre travail consiste à maintenir la base de règles des produits ips. Aujourd'hui, nous allons revoir ce système.

Le principe du framework Struts2 : 1. L'intercepteur analyse le chemin de la requête ; 2. Trouve le nom de classe complet de l'Action ; 3. Crée l'objet Action ; 5. Renvoie le résultat ; analyse. Son principe repose sur le mécanisme d'interception, qui sépare complètement le contrôleur logique métier de l'API Servlet, améliorant ainsi la réutilisabilité et la maintenabilité du code. En utilisant le mécanisme de réflexion, le framework Struts2 peut créer et gérer de manière flexible des objets Action pour traiter les demandes et les réponses.

Série de vulnérabilités Vulhub : vulnérabilité struts2 S2-0011 Description de la vulnérabilité : la vulnérabilité struts2 S2-001 se produit lorsque l'utilisateur soumet les données du formulaire et que la vérification échoue, le serveur utilise l'expression OGNL pour analyser la valeur du paramètre précédemment soumise par l'utilisateur, %{value} et remplit les données du formulaire correspondant. Par exemple, dans une page d’inscription ou de connexion. Si la soumission échoue, le serveur renvoie généralement par défaut les données précédemment soumises. Étant donné que le serveur utilise %{value} pour effectuer l'analyse des expressions OGNL sur les données soumises, le serveur peut directement envoyer la charge utile pour exécuter la commande. 2. Exploitation des vulnérabilités Vulhub : L'utilisation de vulhub pour reproduire des vulnérabilités peut sauver le processus de construction de l'environnement, ce qui est très pratique. vu

0x00 Introduction Struts2 est un framework open source JavaWeb très puissant lancé par l'organisation logicielle Apache, qui est essentiellement équivalent à un servlet. Struts2 est basé sur l'architecture MVC et possède une structure de framework claire. Il est généralement utilisé comme contrôleur pour établir une interaction de données entre les modèles et les vues, et est utilisé pour créer des applications Web Java au niveau de l'entreprise. Il utilise et étend l'API JavaServlet et encourage les développeurs à adopter l'architecture MVC. Struts2 s'appuie sur les excellentes idées de conception de WebWork, absorbe certains des avantages du framework Struts et fournit un cadre d'application Web plus soigné implémenté dans le modèle de conception MVC. vulnérabilité 0x01

Avant-propos Le 22 août 2018, Apache Strust2 a publié le dernier bulletin de sécurité. Apache Struts2 présente une vulnérabilité d'exécution de code à distance à haut risque (S2-057/CVE-2018-11776). La vulnérabilité a été découverte par ManYueMo, un chercheur en sécurité du cabinet. Équipe SemmleSecurityResearch. Cette vulnérabilité est due au fait que lors de l'utilisation de la fonction d'espace de noms pour définir la configuration XML dans le cadre de développement Struts2, la valeur de l'espace de noms n'est pas définie et n'est pas définie dans la configuration d'action de couche supérieure (ActionConfiguration) ou un espace de noms générique est utilisé. ce qui peut conduire à l’exécution de code à distance. De la même manière, tu

0x00 Introduction Le framework Struts2 est une architecture d'application Web open source pour le développement d'applications Web JavaEE. Il utilise et étend JavaServletAPI et encourage les développeurs à adopter l'architecture MVC. Struts2 s'appuie sur les excellentes idées de conception de WebWork, absorbe certains des avantages du framework Struts et fournit un cadre d'application Web plus soigné implémenté dans le modèle de conception MVC. 0x01 Présentation de la vulnérabilité La série ApacheStruts22.3.x a le plug-in struts2-struts1-plugin activé et le répertoire struts2-showcase existe. La cause de la vulnérabilité est lorsque ActionMe.

1. Présentation Struts est un projet open source sponsorisé par Apache Software Foundation (ASF). Il a commencé comme un sous-projet du projet de Jakarta et est ensuite devenu un projet de haut niveau d'ASF. En utilisant la technologie JavaServlet/JSP, il implémente le cadre d'application [WebFramework] basé sur le modèle de conception Model-View-Controller [MVC] des applications Web JavaEE. Il s'agit d'un produit classique dans le modèle de conception classique MVC. Au début du développement des applications Web JavaEE, en plus d'utiliser la technologie Servlet, HTM était généralement utilisé dans le code source de JavaServerPages (JSP).

Actuellement, Apache a officiellement publié une mise à jour de version pour corriger la vulnérabilité. Il est recommandé aux utilisateurs de confirmer la version du produit Apache Struts à temps et, s'il est concerné, de prendre des mesures correctives en temps opportun. 1. Introduction à la vulnérabilité ApacheStruts2 est un sous-projet du projet Jakarta de l'American Apache Software Foundation. Il s'agit d'un framework d'application Web basé sur la conception MVC. Le 22 août 2018, Apache a officiellement publié la vulnérabilité de sécurité Apache Struts2S2-057 (CNNVD-201808-740, CVE-2018-11776). Lors de l'activation de la fonction pan-namespace dans le framework de développement struts2
