Salut à tous,
je récupère les infos passées dans l'url d'un site par $_SERVER
et je les mets dans une bd voir ce qui se passe.
Assez fréquement il y a ce style:
16:07:11|/index.php?p=accueil.php
16:07:13|/index.php?p=accueil.php&gyGS=4073%20AND%201%3D1%20UNION%20ALL%20SELECT%201%2CNULL%2C%27%3Cscript%3Ealert
%28%22XSS%22%29%3C%2Fscript%3E%27%2Ctable_name%20FROM%20information_schema.tables%20WHERE%202%3E1--%2F%2A%2A%2F%3B
%20EXEC%20xp_cmdshell%28%27cat%20..%2F..%2F..%2Fetc%2Fpasswd%27%29%23
16:07:14|/index.php?p=accueil.php%22%28%27.%2C%2C..%2C%2C
16:07:15|/index.php?p=accueil.php%27ePVCmH%3C%27%22%3ELamIUJ
Donc des information_schema, des passwd et autre cmdshell
J'ai déjà fait un truc comme:
- "Si l'url contient les mots delete, update, drop etc... "
> session_destroy et localStorage.clear();sessionStorage.clear();
1 2 3 4 5 6 7
| $get=strtolower(strip_tags($_SERVER['QUERY_STRING']));
if (strstr($get,'delete')||strstr($get,'select')||strstr($get,'update')||strstr($get,'insert')||strstr($get,'drop')||strstr($get,'create')||strstr($get,'execute'))
{
echo 'Désolé, j\'ai piscine';
session_destroy();
echo '<script type="text/javascript">localStorage.clear();sessionStorage.clear();</script>';
} |
Aussi, ca fait beaucoup de mot à tester
(à chaque rechargement de page).
En $_GET je passe uniquement
le nom de la page p et des fois un id
ex:
index.php?p=accueil.php&&id=xx
Pour info, dans index.php il y a
if (!@include($_GET['p'])) {include('home.php');}
Est-ce qu'on pourrait limiter cette recherche fastidieuse de:
1 2
| if (strstr($get,'delete')||strstr($get,'select') ... ||strstr($get,'execute'))
{...} |
en ne cherchant que les $_GET valides
avec des caractères génériques lorsqu'il y a un &&id=xx?
Sinon, lister les GET
1 2 3 4 5 6
| if (isset($_GET)) {
foreach ($_GET as $key => $value_get) {
// si c'est un pas un get maison 'p' ou 'id'
if($key != 'p' || $key != 'id')
{echo 'Merci, bonsoir !';}
}} |
Et pour les POST, comment pourrait-on les repérer ?
Merci cavo789 pour aesecuremais c'est un peu chaud à utiliser. https://www.aesecure.com/logiciel/telecharger
La bise
Partager