Article

Après avoir fait le bilan de la première et de la deuxième journée, voici les conférences qui nous ont le plus marqués en cette troisième journée à la conférence hack.lu :

Abusing Bash For Windows

(Par Antoine Cervoise)

La conférence porte sur la recherche autour du sous-système Windows pour Linux (WSL) et les contournements de sécurité le concernant. Ce sous-système, qui est une couche de compatibilité entre Windows et Linux, permet notamment de compiler des binaires exécutables Linux (ELF) sous Windows.

BSSI-Hack.lu-Day3.1

Il faut noter que ce module n’est pas installé de base sur Windows. En effet, il a été, entre autres, pensé pour faciliter le travail des développeurs. Ce serait donc plus des profils développeurs et administrateurs qui auraient ce module d’installé, soit une minorité des utilisateurs. Cependant, ces utilisateurs ont plus d’accès que les utilisateurs standards et sont par conséquent des cibles de choix pour d’éventuels attaquants ayant déjà obtenu un accès à des machines.

Ainsi, Antoine nous explique ses travaux quant à la sécurité du sous-système. Entre autres, il n’est pas possible de récupérer les mots de passe qui sont stockés dans le fichier /etc/shadow. Cependant, il a trouvé un moyen de contourner la sécurité de WSL en passant par la ligne de commande Windows (cmd.exe) et a développé un module Metasploit dans ce but (https://github.com/cervoise/Abuse-bash-for-windows/tree/master/metasploit-module). Cet outil permet de récupérer un condensat de mot de passe et peut potentiellement ouvrir d’autres accès à un attaquant si celui-ci est cassable.

Par ailleurs, en l’utilisant avec l’outil tmux, le processus passe pour un simple processus Bash sous Windows. Ce mécanisme permet d’éviter la suspicion de l’utilisateur et peut potentiellement éviter d’alarmer certains antivirus.

Ensuite, il nous a expliqué comment obtenir les condensats de mot de passe de domaine grâce à une requête SMB et à l’outil Responder.

Antoine a écrit d’autres scripts qui permettent de récupérer des mots de passe, à l’insu des utilisateurs, en récupérant ce qu’ils tapent au clavier après vouloir effectuer des actions comme :

  • Passer administrateur de WSL avec la commande « sudo »
  • Devenir administrateur de Windows
  • Devenir administrateur du domaine

Enfin, Antoine nous montre qu’il est possible de contourner AppLocker (qui permet de mettre en place des politiques de groupe) pour compiler des fichiers sur WSL.

Tous ses scripts sont disponibles sur son Github (https://github.com/cervoise/Abuse-bash-for-windows).

La vidéo de sa présentation est également disponible sur YouTube : https://www.youtube.com/watch?v=X0h8sNBmB3c

Modern Pentest Tricks For Faster, Wider, Greater Engagements

(Par Thomas Debize)

Thomas commence sa présentation en expliquant que les temps ont changés et que les techniques permettant de faire des tests d’intrusions également. En effet, il n’est pas rare aujourd’hui de faire des tests d’intrusion sur des périmètres comprenant des centaines d’adresses IPs.

Le but de cette conférence est de donner des techniques permettant d’effectuer des tests d’intrusion de manière plus efficace, a plus grande échelle.

Notamment, il donne l’exemple de la possibilité de scanner ou d’avoir accès aux scans de toutes les machines connectées sur Internet (toutes les adresses IPv4). De plus, il est désormais possible d’automatiser le fait de compromettre des réseaux d’entreprises, chose qu’on ne pouvait pas faire aussi facilement auparavant. Il continue en disant qu’il existe aujourd’hui de plus en plus d’outils concernant la cyber sécurité de qualité, ce qui n’était pas forcément le cas dans le passé.

L’image ci-dessous résume des outils permettant cela :

BSSI-Hack.lu-Day3.2

Afin de pouvoir analyser les données acquises lors des tests d’intrusion, il recommande d’utiliser le format CSV. En effet, cette structuration est humainement lisible tout en étant visualisable avec des logiciels tels qu’Excel.

De plus, il présente deux suites permettant afin de gérer les données CSV :

  • CSVkit, qui de manipuler les données CSV avec des requêtes similaires au SQL
  • Dataiku, un outil permettant de gérer et visualiser de gros fichiers CSV

Il donne ensuite l’exemple de parallel, un programme permettant le multithreading de programmes utilisant une seule commande. Ceci permet de gagner du temps lorsque l’on fait des tests de grande envergure, afin d’éviter de développer des outils en plus ou de lancer les taches manuellement.

Les tests d’intrusion demandent également d’écrire des programmes dans des langages qu’on ne maîtrise pas forcément, pour l’analyse statique et dynamique par exemple.

Thomas donne plusieurs exemples de Framework nous permettant de répondre à ce problème :

  • Jython pour écrire du code Java en Python
  • IronPython pour écrire du code .NET en Python
  • Frida pour écrire du Python, .NET, Java, Swift, etc. Portable sur Mac, Windows, Linux, iOS et Android.

Enfin, la dernière partie de sa présentation est sur la compilation de programmes écrits lors de tests. Des outils tels que PyInstaller permettent de faire des exécutables pour Windows et Linux avec des scripts Python. Cela peut être utile si on ne peut pas exécuter de code en tant qu’administrateur, si certaines dépendances ne sont pas installées, ou encore pour éviter les alertes des antivirus.

La conclusion est qu’on peut faire beaucoup de choses avec du Python, ce qui est pratique étant donné que celui-ci a une syntaxe relativement simple.

Lien de son GitHub et ses scripts : https://github.com/maaaaz

Lien de la présentation : https://www.youtube.com/watch?v=mZ0OUJmkIlA

Only an Electron Away from Code Execution

(Par Silvia Väli)

Silvia, pentesteuse spécialisée sur les applications web, a présenté les résultats de son projet de fin d’études sur la sécurité des applications Electron (anciennement Atom shell). Ce framework JavaScript est utilisé par plusieurs applications connues, notamment : Skype, Slack, Atom, etc.

Les recherches de Silvia ont été orientées vers les vulnérabilités de type Cross-Site Scripting (XSS) sur les applications bureau, qu’elle a ensuite exploité pour exécuter du code à distance sur les systèmes cibles.

Cette idée d’attaque lui est venue à la suite de plusieurs réactions de la communauté par rapport à cette problématique, et plus particulièrement ce tweet :

BSSI-Hack.lu-Day3.3

Une application Electron basique est composée de 3 fichiers principaux : main.js, index.html et package.json.

Dans le fichier main.js l’API ‘BrowserWindow’ est appelée afin d’ouvrir une fenêtre du navigateur, en activant un ensemble de préférences Web (JavaScript, devTools, nodeIntegration, etc.) pour l’application.

BSSI-Hack.lu-Day3.4

Avec ce choix de préférences Web, il est donc possible de contrôler si l’utilisateur peut accéder ou non à des outils de développement par exemple ou utiliser JavaScript dans l’application.

La chercheuse a toutefois porté son intérêt à l’option d’intégration de node.js. Lorsque cette préférence est activée. L’utilisateur peut sortir du contexte du navigateur et communiquer avec le système d’exploitation en JavaScript. Sachant que cette option est souvent utilisée par les développeurs pour ajouter du contenu externe dans l’application, Silvia a démontré qu’en l’existence d’une vulnérabilité web de type Cross-Site Scripting sur l’application, celle-ci peut être utilisée pour exécuter des commandes à distance sur le système.

Des recherches plus approfondies sur une trentaine d’applications ont permis à la conférencière de sortir avec quelques constats :

  • Plusieurs instances « BrowserWindow» sont créées
  • L’option « nodeIntegration» est activée dans la plupart des cas. En effet, par défaut la valeur est mise à « true » et le développeur ne l’a pas explicitement désactivée.

Ainsi tout le travail consiste à découvrir des vulnérabilités de type XSS sur les applications bureau ayant l’option « nodeIntegration » activée, afin de pouvoir exécuter du code à distance sur la machine.

Silvia a ensuite illustré cette théorie par des scénarios d’attaques sur plusieurs de ces applications.

Plus de détails peuvent être trouvés sur le lien : https://silviavali.github.io/Electron/only_an_electron_away_from_code_execution

Le lien vers la vidéo de la présentation : https://www.youtube.com/watch?v=kvi6XX71VXM

Ecrire un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Catégories
Twitter

TeamViewer bans your ID if you will try to connect with the wrong password and close the connection 10 times, but if you don't finalization a connection (on the screen "Cancel" button), you can brute 4-digit PIN-code.
cmd "C:\PF\TeamViewer\TeamViewer.exe" -i %ID% -P %PIN%

Le 26/09 l'EBG remettra à l'ensemble de la communauté le livre blanc "Cybersécurité et Confiance Numérique" réalisé en partenariat avec @AFNOR, @Certigna et @CESIN_France Pour vous inscrire à la conference @ebg https://t.co/fWQSZHf7Jy … #cybersécurité #EBG

BSSI continue son développement et recherche des compétences en cybersécurité sur Paris et Toulouse. https://t.co/hj4uJ53EVM

La Californie possède sa version du RGPD. #rgpd #privacy #europefirst https://t.co/CtJilpW0z3

Load More...

© 2017 Blog BSSI, inc. All rights reserved.