Sécurité WEB
Résolu/Fermé
kaiser35
Messages postés
18
Date d'inscription
lundi 15 décembre 2008
Statut
Membre
Dernière intervention
11 octobre 2013
-
10 oct. 2013 à 11:32
kaiser35 Messages postés 18 Date d'inscription lundi 15 décembre 2008 Statut Membre Dernière intervention 11 octobre 2013 - 11 oct. 2013 à 11:45
kaiser35 Messages postés 18 Date d'inscription lundi 15 décembre 2008 Statut Membre Dernière intervention 11 octobre 2013 - 11 oct. 2013 à 11:45
A voir également:
- Sécurité WEB
- Web office - Guide
- Mode securite - Guide
- Traduire une page web - Guide
- Adresse web - Guide
- Création site web - Guide
8 réponses
Utilisateur anonyme
10 oct. 2013 à 16:16
10 oct. 2013 à 16:16
oyo
de ce que tu montre, le cookie p3 correspond à un booléen qui indique si un filtrage doit être fait, et si oui, les valeur p1 et p2 dans le cookie sont récupérés.
die() termine le chargement.
par contre je ne sais pas ce que fait
(ce qui se trouve au dessus est sans importance.)
naga
de ce que tu montre, le cookie p3 correspond à un booléen qui indique si un filtrage doit être fait, et si oui, les valeur p1 et p2 dans le cookie sont récupérés.
die() termine le chargement.
par contre je ne sais pas ce que fait
$option("/123/e",$auth,123);car $option étant une chaine, je ne vois pas dans quelle mesure ca pourrait être utilisé comme fonction .
(ce qui se trouve au dessus est sans importance.)
naga
kaiser35
Messages postés
18
Date d'inscription
lundi 15 décembre 2008
Statut
Membre
Dernière intervention
11 octobre 2013
3
11 oct. 2013 à 09:28
11 oct. 2013 à 09:28
Merci pour ton explication.
C'est justement la chaine
Vois-tu un quelconque moyen d'exploiter ce fichier via HTTP ?
Dans une requête POST avec CURL ou WGET ?
C'est justement la chaine
$option("/123/e",$auth,123);qui m'intrigue le plus.
Vois-tu un quelconque moyen d'exploiter ce fichier via HTTP ?
Dans une requête POST avec CURL ou WGET ?
Utilisateur anonyme
11 oct. 2013 à 09:44
11 oct. 2013 à 09:44
OK ! j'ai trouvé avec un ami : en fait lorsque tu fais :
$option récupère le nom d'une fonction et, en php, ce string devient la fonction. Par exemple :
tu as la fonction :
si tu fais :
ca affichera "salut" \o/
naga
$option = $filter(@$_COOKIE['p2']);
$option récupère le nom d'une fonction et, en php, ce string devient la fonction. Par exemple :
tu as la fonction :
<?php
function echoconcat($a,$b)
{
echo $a . $b;
}
?>
si tu fais :
<?php
$Func = "echoconcat";
$Func("sa","lut");
?>
ca affichera "salut" \o/
naga
kaiser35
Messages postés
18
Date d'inscription
lundi 15 décembre 2008
Statut
Membre
Dernière intervention
11 octobre 2013
3
11 oct. 2013 à 10:01
11 oct. 2013 à 10:01
Chapeau !
C'est donc un backdoor comme je le pensais qui permettra d'exécuter des commandes via l'utilisateur avec lequel PHP est interprété.
Est-ce que tu vois comment je pourrais l'utiliser pour en tester les conséquences et limites ?
C'est donc un backdoor comme je le pensais qui permettra d'exécuter des commandes via l'utilisateur avec lequel PHP est interprété.
Est-ce que tu vois comment je pourrais l'utiliser pour en tester les conséquences et limites ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Utilisateur anonyme
11 oct. 2013 à 10:55
11 oct. 2013 à 10:55
et bien déjà, on sait que 'p3' est un boléen.
Ensuite on peu aussi dire que 'p2' est le nom d'un fonction qui nécessite 2 paramètres.
Donc de mon point de vue, cette page est une page générique: vu qu'on est dans le carde d'un cms, pas mal de page se doivent d'être générique, principalement pour les modules que l'on ajoute. Je pense donc que cette partie est utile au chargement d'un module, quelque soit le module, en lui passant en paramètre une fonction qui le charge. De plus, il semblerai que cette page soit une popup (ou qui s'y apparente) : le "die()" arrêtant le chargement de la page.
Cependant, je serai plus à même de penser que c'est ce qui permettrai de vérifier un log : si 'p3' est à vrai on doit vérifier quelquechose, et je pencherai sur le fait que 'p2' soit un nom d'utilisateur.
Mon soucis est surtout que je ne connais pas le contexte globale et donc je ne sais pas dans quelle mesure cette page est appelée.
Petite question : tu as fournis un copié collé complet où tu l'as édité ? (je pose la question vis à vis du répertoire 123/e => s'il existe, que contient t'il?)
naga
Ensuite on peu aussi dire que 'p2' est le nom d'un fonction qui nécessite 2 paramètres.
Donc de mon point de vue, cette page est une page générique: vu qu'on est dans le carde d'un cms, pas mal de page se doivent d'être générique, principalement pour les modules que l'on ajoute. Je pense donc que cette partie est utile au chargement d'un module, quelque soit le module, en lui passant en paramètre une fonction qui le charge. De plus, il semblerai que cette page soit une popup (ou qui s'y apparente) : le "die()" arrêtant le chargement de la page.
Cependant, je serai plus à même de penser que c'est ce qui permettrai de vérifier un log : si 'p3' est à vrai on doit vérifier quelquechose, et je pencherai sur le fait que 'p2' soit un nom d'utilisateur.
Mon soucis est surtout que je ne connais pas le contexte globale et donc je ne sais pas dans quelle mesure cette page est appelée.
Petite question : tu as fournis un copié collé complet où tu l'as édité ? (je pose la question vis à vis du répertoire 123/e => s'il existe, que contient t'il?)
naga
kaiser35
Messages postés
18
Date d'inscription
lundi 15 décembre 2008
Statut
Membre
Dernière intervention
11 octobre 2013
3
Modifié par kaiser35 le 11/10/2013 à 11:09
Modifié par kaiser35 le 11/10/2013 à 11:09
Le fichier a été uploadé tel quel.
La supervision a mis de suite le fichier en quarantaine donc il n'a pas été exploité.
Il n'a pas de dossier "123/e", ni aucun autre fichier créé/modifié en se basant sur la date du backdoor.
L'upload a été réalisé grâce aux failles connus du média manager de Joomla.
Je ne pense pas que ce soit dépendant des appels aux modules, de mon point de vue c'est un accès direct à toutes les fonctions PHP autorisées + paramètres.
La partie authentification reste un peu obscure...
En modifiant un peu le code, j'ai bien réussit à faire exécuter un phpinfo() par exemple via des cookies.
La supervision a mis de suite le fichier en quarantaine donc il n'a pas été exploité.
Il n'a pas de dossier "123/e", ni aucun autre fichier créé/modifié en se basant sur la date du backdoor.
L'upload a été réalisé grâce aux failles connus du média manager de Joomla.
Je ne pense pas que ce soit dépendant des appels aux modules, de mon point de vue c'est un accès direct à toutes les fonctions PHP autorisées + paramètres.
La partie authentification reste un peu obscure...
En modifiant un peu le code, j'ai bien réussit à faire exécuter un phpinfo() par exemple via des cookies.
Utilisateur anonyme
11 oct. 2013 à 11:26
11 oct. 2013 à 11:26
mmmh du coup si cette page n'est pas exploitée (car en quarantaine) et que tout fonctionne correctement, c'est donc probablement un résidu de code, mais je parle sans avoir de certitudes, juste des idées.
Honnêtement je n'en sais pas plus ..
naga
PS : une idée (mais c'est vraiment ce qui me passe par la tête) : on passe en paramètre "/123" le $auth et 123 ... ca pourrai par exemple pour vérifier les droits de auth dans tous les répertoire, "123" étant le joker, mais ca me parait un peu tiré par les cheveux
Honnêtement je n'en sais pas plus ..
naga
PS : une idée (mais c'est vraiment ce qui me passe par la tête) : on passe en paramètre "/123" le $auth et 123 ... ca pourrai par exemple pour vérifier les droits de auth dans tous les répertoire, "123" étant le joker, mais ca me parait un peu tiré par les cheveux
kaiser35
Messages postés
18
Date d'inscription
lundi 15 décembre 2008
Statut
Membre
Dernière intervention
11 octobre 2013
3
11 oct. 2013 à 11:45
11 oct. 2013 à 11:45
Possible...
Dans tous les cas, je sais maintenant ce qu'il est possible de faire et à peu près comment avec ce type de fichier s'il est interprété.
PHP offre trop de possibilités.
Merci de ton aide.
Dans tous les cas, je sais maintenant ce qu'il est possible de faire et à peu près comment avec ce type de fichier s'il est interprété.
PHP offre trop de possibilités.
Merci de ton aide.