CONNEXION
  • RetourJeux
    • Tests
    • Soluces
    • Previews
    • Sorties
    • Hit Parade
    • Les + attendus
    • Tous les Jeux
  • RetourActu
    • Culture Geek
    • Astuces
    • Réalité Virtuelle
    • Rétrogaming
    • Toutes les actus
  • RetourHigh-Tech
    • Actus JVTECH
    • Bons plans
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTECH
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch
    • Xbox Series
    • Overwatch 2
    • FUT 23
    • League of Legends
    • Genshin Impact
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • PS4
  • One
  • Switch
  • Wii U
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Etoile Abonnement RSS

Sujet : Empêcher l'utilisateur d’exécuter des scripts

DébutPage précedente
1
Page suivantePage suivante
_Choumchoum _Choumchoum
MP
Niveau 53
22 juillet 2018 à 01:16:26

Salut,

J'aimerais empêcher l'utilisateur d’exécuter des programmes sur mon serveur.

https://www.noelshack.com/2018-29-7-1532214938-unknown2.png
https://www.noelshack.com/2018-29-7-1532214947-unknown2.png

J'ai tester la technique htaccess car je n'ai rien trouvé d'autre mais cela ne semble pas fonctionner ?

drapsag06 drapsag06
MP
Niveau 4
23 juillet 2018 à 01:20:40

https://openclassrooms.com/forum/sujet/php-comment-parametrer-wamp-pour-gerer-htaccess-85977

Ce sujet a l'air de donner la solution

Wamp->Apache->Apache modules->rewrite module

_Choumchoum _Choumchoum
MP
Niveau 53
23 juillet 2018 à 22:43:54

Le 23 juillet 2018 à 01:20:40 drapsag06 a écrit :
https://openclassrooms.com/forum/sujet/php-comment-parametrer-wamp-pour-gerer-htaccess-85977

Ce sujet a l'air de donner la solution

Wamp->Apache->Apache modules->rewrite module

C'est déjà cocher.

_Choumchoum _Choumchoum
MP
Niveau 53
23 juillet 2018 à 22:53:23

Dans eroor log j'ai

[Mon Jul 23 22:51:32.418918 2018] [core:alert] [pid 14836:tid 1232] [client ::1:50070] C:/wamp64/www/FileHosting/.htaccess: <Directory not allowed here, referer: http://localhost/

deepblue deepblue
MP
Niveau 13
24 juillet 2018 à 10:16:50

Dans C:/wamp64/www/FileHosting/uploads/.htaccess :

ForceType application/octet-stream
Header add Content-Disposition "attachment"
Message édité le 24 juillet 2018 à 10:17:25 par deepblue
_Choumchoum _Choumchoum
MP
Niveau 53
24 juillet 2018 à 13:18:54

Hum c'est sensé faire quoi ça ?

Je dois supprimer l autre htaccess ?

deepblue deepblue
MP
Niveau 13
24 juillet 2018 à 14:10:25

Ça force le téléchargement mais en faisant un test chez moi, php reste est exécuté quand même. Je vais fouiller et je reviens avec une solution.

_Choumchoum _Choumchoum
MP
Niveau 53
24 juillet 2018 à 14:22:07

Ok car ca doit pas bloquer les gens d'uploads leur fichier et de pouvoir télécharger et visionner une image par exemple.

deepblue deepblue
MP
Niveau 13
24 juillet 2018 à 14:35:43

Note : les chemins indiqués sont liés à mes configurations (et les tests qui vont avec).

Dans le cas où c'est le module PHP d'apache qui tourne :

La conf suivante fonctionne en la collant dans le VirtualHost :

<Directory /var/www/simon/repo/zenitude-tools/web/uploads/>
	php_value engine off
</Directory>

Si tu veux passer par un htaccess, en plaçant php_value engine off dans /var/www/simon/repo/zenitude-tools/web/uploads/.htaccess, tu auras le même résultat.

Avec PHP-FPM :

Dans le VirtualHost :

<IfModule mod_proxy_fcgi.c>
	<FilesMatch "\.php$">
		SetHandler "proxy:fcgi://127.0.0.1:13004/"
	</FilesMatch>
	<Directory /var/www/simon/repo/zenitude-tools/web/uploads/>
		<Files "*.*">
			SetHandler !
		</Files>
	</Directory>
</IfModule>

Ou dans /var/www/simon/repo/zenitude-tools/web/uploads/.htaccess :

<Files "*.*">
	SetHandler !
</Files>
Message édité le 24 juillet 2018 à 14:36:39 par deepblue
deepblue deepblue
MP
Niveau 13
24 juillet 2018 à 14:42:26

Et du coup, ça désactive !'interprétation de PHP dans le répertoire uploads.

Message édité le 24 juillet 2018 à 14:42:43 par deepblue
_Choumchoum _Choumchoum
MP
Niveau 53
24 juillet 2018 à 15:06:52

Je vais essayer merci
Du coup mon site est sensé être protégé la?

stacksmashing stacksmashing
MP
Niveau 6
24 juillet 2018 à 15:32:20

Je vais essayer merci
Du coup mon site est sensé être protégé la?

Protégé d'un pirate qui met un fichier php dans le dossier upload/, oui

_Choumchoum _Choumchoum
MP
Niveau 53
24 juillet 2018 à 15:49:39

Le 24 juillet 2018 à 15:32:20 stacksmashing a écrit :

Je vais essayer merci
Du coup mon site est sensé être protégé la?

Protégé d'un pirate qui met un fichier php dans le dossier upload/, oui

Ca suffit non ?

stacksmashing stacksmashing
MP
Niveau 6
24 juillet 2018 à 16:35:41

Ca suffit non ?

Si l'utilisateur peut uniquement uploader des fichiers dans CE dossier, alors oui ça suffit pour l'aspect exécution de code "directe".

Sinon il y a d'autres problèmes potentiels:
- le problème d'écrasement de fichiers existants
- le flood (envoi de milliers de fichiers pour saturer le serveur)
- il faut voir si le script d'upload est safe (upload possible dans un autre dossier ?)
- Certaines failles (LFI par exemple) peuvent permettre l’exécution d'un fichier présent dans uploads/
- etc..

Donc là tu as un morceau de ton site qui est sécurisé pour un cas donné, il faut voir le reste

_Choumchoum _Choumchoum
MP
Niveau 53
24 juillet 2018 à 18:26:43

C'est un projet scolaire, je veux juste une base pour montrer qu'il y en a une.

deepblue deepblue
MP
Niveau 13
24 juillet 2018 à 19:47:58

Il faut prévoir les même effets qu'une injection XSS donc forcer (aussi) le téléchargement des données présentes dans uploads (cf le premier message de moi) :

ForceType application/octet-stream
Header add Content-Disposition "attachment"
_Choumchoum _Choumchoum
MP
Niveau 53
24 juillet 2018 à 20:52:01

Le 24 juillet 2018 à 19:47:58 deepblue a écrit :
Il faut prévoir les même effets qu'une injection XSS donc forcer (aussi) le téléchargement des données présentes dans uploads (cf le premier message de moi) :

ForceType application/octet-stream
Header add Content-Disposition "attachment"

C'est à dire ?

stacksmashing stacksmashing
MP
Niveau 6
24 juillet 2018 à 22:37:14

C'est à dire ?

Si le contenu du fichier est affiché, il peut contenir du javascript (et donc rediriger/tromper une personne qui tombe dessus.

_Choumchoum _Choumchoum
MP
Niveau 53
25 juillet 2018 à 13:24:33

Le 24 juillet 2018 à 22:37:14 stacksmashing a écrit :

C'est à dire ?

Si le contenu du fichier est affiché, il peut contenir du javascript (et donc rediriger/tromper une personne qui tombe dessus.

Oui mais une image je dois bien l afficher.

deepblue deepblue
MP
Niveau 13
25 juillet 2018 à 15:28:32

Dans une application que je réalise, j'ai place les images dans un répertoire dédiée et les autres types de fichiers dans un autre répertoire. Les images ne sont pas forcée au téléchargement. Les autres fichiers oui, avec la couche de désactivation du PHP en plus.
Tu peux aussi voir le problème autrement : avec la directive apache Files, tu forces en image/jpg ce qui termine en .jp{e}g, image/png ce qui termine en .png, image/gif ce qui termine en .git et tu force en application/octet-stream le reste.

DébutPage précedente
1
Page suivantePage suivante
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?
Infos 0 connecté(s)

Gestion du forum

Modérateurs : Thymotep
Contacter les modérateurs - Règles du forum

Sujets à ne pas manquer

La vidéo du moment