4MMPCRYPTO 2016

De Ensiwiki
Aller à : navigation, rechercher
AttentionCette page est obsolète. Elle a été utilisée pour le projet de spécialité dans le passé, et n'est gardée que pour mémoire


Projets de spécialité en Cryptologie, Sécurité et Codage 2015-2016

Workshop - Security and cryptology - 2016, June 9th, Grenoble -- ENSIMAG

  • 9h30 "Forged binaries: Injection and packing". Pierre Graux, Aymeric Mouillard, Mounir Saoud. [1]
  • 10h "An evaluation of the security of some NFC-enabled systems". Charles d’Hondt Alice Ribaucourt Samuel Troussieux [2]
  • 10h30 "Coût de l’anonymisation avec CryptDB et Percy++. Pistes pour l'amortir". Nicolas Rocha, Florian Desmons [3]
  • 11h "Contournement d’analyse dynamique de code viral". Paul Calderon, Valentin Miavril, Pierre Présent.[4]

Dates des réunions/soutiens/soutenance

  • Mardi 17/05/2016 de 10h00 à 12h00 D211 (V) : [Démarrage des projets] [Présentation des attendus des projets
  • Jeudi 19/05/2016 de 09h00 à 11h00 D211 (V) : [Soutien 1 planning prévisionnel]
  • Jeudi 09/06/2016 de 09h00 à 12h00 D211 (V) : [Workshop: exposés (soutenance devant jury)]

NB Certaines dates pourront être modifiées ultérieurement selon les disponibilités du tuteur; d'autres soutiens avec le tuteur peuvent avoir lieu par mail, skype, etc.

Nouveaux sujets proposés en avril 2016

Fabrique de binaires contrefaits (de l’innocence à la malveillance)

  • Responsables : Franck de Goër (degoerdf@imag.fr), Laurent Mounier (laurent.mounier@imag.fr)

Peut-on faire confiance à des programmes binaires ? L’objectif de ce projet est de permettre l’ajout automatisé de code (mailveillant) dans un programme binaire quelconque. Par exemple, l’exécution de la commande grep “patchée” pourra engendrer une communication avec un serveur distant (à l’insu de l’utilisateur).

Les différentes étapes de ce projet sont : 1/ La compréhension et la récupération (parsing) d’un binaire au format ELF x86-64 2/ Écriture d’une preuve de concept fonctionnelle : ajout de code (malveillant) dans la section NOTE du binaire & modification du point d'entrée du programme 3/ Écriture de code (malveillant) en assembleur à injecter dans le binaire initial 4/ Bonus #1: ajout dans la section CODE (avec mise à jour des offsets) 5/ Bonus #2: implémentation d’un packer complet de type UPX (avec 2/ ou 3/)

Compétences mises en oeuvre : • Langage C • Langage assembleur (Intel x86-64) • Pour le bonus #2 : compression et cryptographie

  • Références :

http://www.skyfree.org/linux/references/ELF_Format.pdfhttp://virus.enemy.org/virus-writing-HOWTO/_html/segment.padding.htmlhttp://virus.enemy.org/virus-writing-HOWTO/_html/additional.cs.html



Mailhops

  • Responsable: Cedric.Lauradoux@inria.fr (Inria)

L'objectif est de promouvoir l'utilisation de GPG et plus généralement du chiffrement pour les mails par les masses ! Pour cela on doit permettre aux gens de comprendre comment les mails sont acheminés. Mailhops (plugin de Thunderbird) permet de voir comment un mail est acheminé en utilisant des outils de metrologie comme traceroute. L'objectif sera de voir la difficulté pour enrichir Mailhops de données (savoir si un mail transite par un pays qui autorise l'interception ou la rétention de donnnees )

Mailhops

contact: cedric.lauradoux@inria.fr

BLIP

  • Responsable: Cedric.Lauradoux@inria.fr (Inria)

La publication de statistique est tres difficile car on doit faire aux question de vie privée. Blip est un outil qui permet de publier des profils en les bruitant. L'objectif du projet est d'attaquer BLIP en utilisant les attaques proposées dans le papier d'origine [1] et celles proposées dans [2]. Un code de départ sera donne en Python.

[1] BLIP: Non-interactive Differentially-Private Similarity Computation on Bloom filters


[2] Challenging Differential Privacy: The Case of Non-interactive Mechanisms

contact: cedric.lauradoux@inria.fr

quietnet

Il est possible d'exfiltrer des informations d'une machine en utilisant la carte son pour émettre des ultrasons.

L'objectif de faire une démonstration de cette possibilité avec quietnet.


quietnet grosminet

contact: cedric.lauradoux@inria.fr


Faiblesse des clefs DSA et RSA utilisées dans les réseaux

  • Responsable: Jean-Louis.Roch@imag.fr (Inria et LIG)

Une étude à grande échelle sur les clefs RSA et DSA utilisées sur internet a montré qu'un nombre significatif de clefs sont cassées suite à des faiblesses des aléas utilisés pour les générer (environ 5% des hôtes TLS et 9% des hôtes SSH [5]). Le but du projet est d'analyser ces attaques, et de les appliquer pour analyser la validité des clefs utilisées sur un réseau d'entreprise [ machines de Ensimag]. Des contre mesures seront proposées pour générer des clefs résistantes à ces attaques; les contre-mesures seront intégrées à Open-SSL et TLS.

Référence: Mining Your Ps and Qs: Detection of Widespread Weak Keys in Network Devices. Nadia Heninger, Zakir Durumeric, Eric Wustrow, J. Alex Halderman Proceedings of the 21st USENIX Security Symposium, August 2012. [6]

Retrait d'information privée sur un cloud

  • Responsable: Jean-Louis.Roch@imag.fr (Inria et LIG), Amrit Kumar (Inria et Persyval-Lab)

Les proptocoles PIR (Private Information Retrieval) garantissent le secret lors de l'accès à une base de donnée distante (cloud). Cependant le surcôut en communications et sur le serveur distant est important. Aussi des alternatives, avec des plus faibles niveaux de sécurité, sont proposées. Le but duprojet est de présenter ces alternatives. Une étude epérimentale sera réalisée avec le déploiement de CryptDB [7], sur laquelle des faiblesses ont été récemment mises en évidence [8].

Références:

Perturbation sur ECC

  • Responsable: Jean-Guillaume.Dumas@imag.fr (LJK)

The objective is to study attacks by fault injection (falsified bits) in elliptic curve based algorithms (ECDSA). The project will consists in implementation of a fault simulator and one of those attacks in order to evaluate effectiveness, vulnerability and, eventually, counter measures.

Reference: cf http://ljk.imag.fr/membres/Jean-Guillaume.Dumas/Enseignements/ProjetsCrypto/FautesECC

Traque des voleurs de bitcoin

  • Responsable: Jean-Guillaume.Dumas@imag.fr (LJK)

Bitcoin est un système de monnaie cryptologique. Le projet consiste à étudier le fonctionnement cryptologique du système Bitcoin, ses avantages et inconvénients par rapport à un système à tiers, puis on analysera les possibilités de suivre les transactions des voleurs de bitcoins.

Reference: A Fistful of Bitcoins: Characterizing Payments among Men with No Names. Proceedings of the Internet Measurement Conference, 2013. Sarah Meiklejohn, Marjori Pomarole, Grant Jordan, Kirill Levchenko, Damon McCoy, Geoffrey M. Voelker, Stefan Savage. cf http://ljk.imag.fr/membres/Jean-Guillaume.Dumas/Enseignements/ProjetsCrypto/TrackBitcoin/

Sources disponibles :

       - article : Fichier:Imc13.pdf
       - patchs pour le code source : Fichier:Patch.tar.gz
       - script pour la double spending attack : Fichier:Double spending.tar.gz
       - parser de la block chain (nouvelle commande pour récupérer les adresses : Fichier:Blockparser.tar.gz

Signatures électroniques par batchs

Il s'agit d'étudier la sécurité de systèmes de signature électronique où les signatures ne sont pas réalisées à la volée mais par paquets.

  • Responsable: Jean-Guillaume.Dumas@imag.fr (LJK)

Références : Keyless Signatures Infrastructure: How to Build Global Distributed Hash-Trees. Ahto Buldas, Andres Kroonmaa, Risto Laanoja Secure IT Systems Lecture Notes in Computer Science Volume 8208, 2013, pp 313-320 cf http://ljk.imag.fr/membres/Jean-Guillaume.Dumas/Enseignements/ProjetsCrypto/KSI/

Précédents Sujets (reconductibles en 2016)

Les [https://ensiwiki.ensimag.fr/index.php/4MMPCRYPTO_2015 sujets précédemment proposés sont reconductibles après discussion avec les encadrants.

Les sujets des années précédentes peuvent éventuellement être reconduits

Règlement

  • Description succinte les projets de second semestre en Cryptologie, Sécurité et Codage de l'Information se déroulent pendant une durée de 4 semaines à temps plein et sont réalisés en binômes encadrés par un enseignant de l'école ou un intervenant extérieur. Un projet concerne en principe deux binômes travaillant en parallèle. Les sujets sont orientés autour des deux thématiques, informatique et/ou mathématique, qui sont complémentaires pour les problèmes de sécurité et de codage.
  • Choix des sujets Les élèves communiquent la constitution de leur binôme, ainsi que trois vœux de sujets au responsable du projet par courrier électronique. Le responsable affecte les projets en tenant compte des contraintes (2 binômes par projets, répartition des projets). Le responsable se réserve le droit d'autoriser des élèves à réaliser un projet qui ne serait pas dans la liste proposée (les élèves doivent dans ce cas soumettre leur projet au responsable). Il est important de noter que le choix de projet n'est pas conditionné au choix d'une option de troisième année.
  • Objectifs pédagogiques Analyser un problème effectif de sécurité ou de codage; Appliquer les connaissances mathématiques et informatiques à l'étude d'un problème effectif de sécurité ou de codage; Expérimenter et étudier les compromis sécurité/performances; apprendre à présenter un travail finalisé. Pour tous les projets, une documentation est fournie; cependant, il est aussi permis aux groupes qui le désirent de faire un travail bibliographique complémentaire. Il est à noter que quelques sujets nécessitent une partie importante de travail bibliographique.
  • Prérequis Les pré-requis sont indiqués pour chaque projet. Il est nécessaire, selon le sujet, d'avoir assimilé les principes et protocoles de base en chiffrement (clef secrète, clef public, signature, authentification, ...) ou en codage (codes correcteurs), qui sont tous deux présentés dans les modules de 2eme année (M1 / semestre 2) suivants: filières ISI et MMIS: 4MMCRY Codes: Cryptographie et Codage; Filière TELECOM: 4MMCSR Codage et sécurité des réseaux.
  • Encadrement Les élèves sont encadrés par un enseignant de l'école ou un intervenant extérieur qui gère un ou deux projets. L'enseignant consacre trois heures hebdomadaires pour chacun des binômes qu'il supervise. Les rencontres avec l'enseignant responsable peuvent être fixées à la convenance de l'enseignant et des élèves.
  • Evaluation L'évaluation finale comprend une note de compte-rendu, une note de soutenance et une note de controle continu. Le nombre de crédits ECTS attribués est 6. Les travaux sont présentés durant une journée organisée selon le modèle workshop.
  • Organisation du rapport. Le rapport ne doit pas dépasser 20 pages (un bon rapport serait un article bien écrit de 8 pages maximum en double colonne, de préférence en langue anglaise, avec éventuellement une annexe pour les documentations, les codes importants etc). Il doit être structuré, comprendre une introduction présentant de manière élémentaire le sujet du projet et une conclusion générale sur le projet. Il est conseillé de séparer les parties d'analyse des parties expérimentales. Les enseignants veilleront a ce que les résultats soient clairement commentés. Les figures et les tables doivent comporter des légendes qui les rendent compréhensibles sans se reporter systématiquement au texte. On demande de suivre les modèles de fichiers fournis par ACM en Word ou Latex: http://www.acm.org/sigs/publications/proceedings-templates. Il est conseillé d'utliser LaTeX , outil d'édition scientifique et technique de référence. Un pré-rapport (non finalisé) devra être remis à l'enseignant durant la deuxième semaine du projet, afin qu'il controle l'avancement du travail ainsi que la rédaction des premiers résultats (les parties théoriques notamment).
  • Présentation La soutenance dure 15 minutes. Elle est suivie par 5 minutes de questions de la part des enseignants. On présentera le projet et les résultats obtenus. Il est conseillé de ne pas utiliser plus de 10 transparents. Le modèle suivant peut servir de guide de présentation. T1 : Nom des éleves et titre du projet T2 : Plan de la présentation T3 : Présentation/intéret du sujet T4-T6 : Analyse - Outils/résultats théoriques T7-T9 : Résultats (expérimentaux ou autres) T10 : Conclusion Pour les transparents de votre soutenance, le choix de l'outil n'est pas imposé, cependant, si vous n'avez pas votre propre portable, elle devra être au format pdf. Si vous avez un portable sur lequel vous pouvez installer ce que vous voulez, vous êtes libres, néanmoins il est recommandé d'avoir une copie en pdf de votre présentation sur un CD ou une clef USB, en cas d'incompatibilité entre votre portable et le video-projecteur (ce qui est tout de même relativement fréquent...). Si vous avez envie de faire votre présentation en LaTeX (le plus simple vous avez des formules et proche de votre rapport en LaTeX), vous avez peut-être constatées que les styles "slides" et "seminar" ne sont pas très jolis (ils sont prévus pour des tranparents pour rétrojecteur). Il existe par contre d'autres styles, plus récents, qui donnent de très bons résultats, en particulier: Beamer (http://latex-beamer.sf.net/); Prosper (http://prosper.sf.net/). Les sites/tarballs fournissent des exemples, et vous trouverez ci-joint un exemple de présentation réelle faite avec Beamer, qui utilise également Gastex pour faire des schémas (si vous avez un vieux portable, l'affichage de figures en EPS peut être lent, il n'y a pas ce problème avec Gastex). Il y a également active-dvi (http://pauillac.inria.fr/advi/), qui est a priori plus puissant (même si cela n'a pas forcément d'intérêt) mais nécessite un programme de visualisation spécial et je ne sais pas ce qu'il en est de l'export en pdf. Une grande importance sera accordée à la clarté de l'exposé. Les enseignants évalueront la qualité des résultats présentés et la pertinence des outils développés pour mener à bien le projet. IMPORTANT : les dates des soutenances seront confirmées par affichage. La note de contrôle continu est donnée par l'enseignant responsable avec le jury.