• Aucun résultat trouvé

TNS bit flip attack

N/A
N/A
Protected

Academic year: 2022

Partager "TNS bit flip attack"

Copied!
7
0
0

Texte intégral

(1)

Présenté 24/06/2013

Pour SSTIC

Par Nicolas Collignon

TNS bit flip attack

SSTIC 2013

(2)

Challenge

Man-In-The-Middle sur flux TNS

ARP poisonning, TNS RAC poisoning, LLMNR, NBT-NS ...

Pas de protection de la couche transport par défaut

Oracle 11g

challenge-response lent à brute-forcer

Objectifs :

Injection de requêtes SQL arbitraires dans le flux TNS

Sans perturber le client

(3)

Problématiques

Les difficultés :

Protocole non documenté

Presque aucun outil / dissecteur TNS

Pas de structures claires de type TLV

Re-synchronisation des numéros de séquence

Seulement quelques heures pour dev l'outil,

malheureusement nous ne sommes pas à

l'ANSSI :)

(4)

Houracle : proxy TNS

Le résultat :

Hijacking du flux TNS

Injection à la volée de requêtes SQL arbitraires

client Oracle → Houracle (1522/tcp) → serveur Oracle (1521/tcp)

Évolutions futures :

Interception des commandes logout pour maintenir des sessions dans le proxy

Récupération du mot de passe en clair à partir des hashs et du challenge-response

(5)

Comment se protéger

Commander un audit Synacktiv :)

(6)

Houracle : démo

Récupération des hashs spare4 en

injectant une requête SQL dans une

connexion DBA.

(7)

AVEZ-VOUS

DES QUESTIONS ?

Références

Documents relatifs

Forme normale conjonctive (FNC) : Une fonction booléenne peut toujours s’exprimer sous forme d’une conjonction ( and ) de formes disjonctives ( or ). Forme normale disjonctive (FND)

● Patcher un Qrcode contenant l'URL d'un site Web. ●

La sortie Q du flip- flop reste constante entre deux fronts d'horloge.. Il existe 3 sortes de flip-flops : le flip-flop D, le flip-flop T et le

La requête suivante construit dynamiquement deux tables (alias a et b ) dans la clause FROM pour répondre à cette question :.

Ordonnenceur à long terme: regarde quand un processus doit être admis Ordonnenceur à court terme: file d'attente pour l'exécution. Ordonnenceur à moyen terme: Sort les proc de le file

 mysql_query permet pas seulement d’exécuter des requêtes SELECT, mais aussi toute autre requête.  Évidemment, s’il ne s’agit pas d’une requête SELECT, on ne fera pas

Stocker un petit ensemble dans les bits d’un entier non-signé Le bit i est à 1 ssi l’élément i est dans l’ensemble. → Énumérer les ensembles en énumérant

o REFERENCES tableref (attribut) : Il s’agit d’une contrainte d’intégrité fonctionnelle par rapport à une clé ; chaque valeur de l’attribut doit exister dans la table