Proxy c’est pas bien

Attention, ceci n’est pas à mettre entre toutes les mains.

Pas d’accès internet, firewall partout… vous vous croyez bloqués ?
Le contournement est peut-être simple, si en plus vous y ajoutez une couche de BYOD, rien n’est vraiment inaccessible.

Outils:

proxytunnel (http://proxytunnel.sourceforge.net/)
apache (avec le mod proxy_connect … il faut généralement l’activer)

Principe:

L’idée passer par votre site web pour accéder à d’autres services.

La directive CONNECT (http://www.faqs.org/rfcs/rfc2616.html) normalement utilisée pour faire des tunnels SSL, permet de faire une connexion directe sans traitement par le serveur.

Configuration apache:

[ccN_apache]
Proxyrequests On
ProxyVia On
#vous pouvez ouvrir n’importe quel port (ssh permet de faire n’importe quoi)
AllowCONNECT 22

# par défaut on évite que tout le monde utilise n’importe quoi

Order deny,allow
Deny from all


Order deny,allow
Allow from all
# Allow from IP #si vous voulez limiter les accès

[/ccN_apache]

Et après ?

Il suffit de lancer une petite commande de tunnel: proxytunnel -d monserver:22 -p proxy:80 -a 1234

Puis un simple : ssh -p1234 user@127.0.0.1 (les paramètres ne sont pas complexe à comprendre)

[ccN_bash]
proxytunnel -v -d monserveur:22 -p proxy:80
Local proxy proxy resolves to 192.168.0.104
Connected to proxy:80 (local proxy)

Tunneling to monserveur:22 (destination)
Communication with local proxy:
-> CONNECT monserveur:22 HTTP/1.0
-> Proxy-Connection: Keep-Alive
<- HTTP/1.0 200 Connection Established <- Proxy-agent: Apache Tunnel established. SSH-2.0-OpenSSH_6.0p1 Debian-3 [/ccN_bash]

Attention:

Et hop, ça passe, mais cela se voit quand même … car cela passe sur du 80/tcp. (un proxy sur le chemin peut bloquer cela).
Si vous voulez être encore plus discret vous pouvez passer via 443/tcp avec du SSL, les chances de succès sont encore plus grandes.

Inutile de vous dire qu’on peut facilement cacher cette configuration dans un serveur apache.
Elle est même parfois activée par défaut (ou par erreur) sur certains serveurs.

Contourner les politiques de sécurité: c’est pas parce que cela est possible que c’est bien.