SlideShare une entreprise Scribd logo
1  sur  12
Télécharger pour lire hors ligne
Un serveur d'authentification
forte pour $35!
Application Security Forum – Western Switzerland 2013
(16.10.2013)

André Liechti
Dernière mise à jour: 31.10.2013
Un serveur d'authentification forte pour $35!

ASFWS 2013

www.multiOTP.net
Un serveur d’authentification forte en 10 slides!
Naissance du projet
 Conception de la librairie multiOTP
 Tokens supportés
 Déploiement des tokens à large échelle
 Choix de la plateforme matérielle
 Mise en place du serveur d’authentification
 Vue d’ensemble d’une utilisation
 Intégration dans d’autres produits
 Roadmap pour les prochaines versions
 Séance de questions / réponses


Un serveur d'authentification forte pour $35!

ASFWS 2013

2
Naissance du projet

2009 PoC en PHP pour le protocole Mobile-OTP
 2010 Création d’une classe et support de TOTP/HOTP
 2011 Atelier pratique lors de l’ASFWS 2011
 2012 Déploiement plus large et retours des utilisateurs
 2013 Ajout de nouvelles fonctionnalités
– Envoi de tokens par SMS
– Génération de listes à biffer
– Provisioning par Qrcode / URL
– Utilisation client/serveur avec cache local
– Possibilité de stockage dans une base de données (MySQL)


Un serveur d'authentification forte pour $35!

ASFWS 2013

3
Conception de la librairie multiOTP


Implémentation « légère »
sous la forme d’une classe en PHP



Au final, la librairie tient dans un seul fichier agrégé
(~ 10’000 lignes)



Outil en ligne de commande implémentant la librairie



Stockage dans des fichiers plats

Un serveur d'authentification forte pour $35!

ASFWS 2013

4
Tokens supportés


Mobile-OTP (motp.sourceforge.net)
– Time based, saisie du code PIN sur le device
– Android, iOS, Windows Mobile, Palm, Maemo, HTML5, Java, etc.



HOTP (HMAC-based One-time Password Algorithm)



TOTP (Time-based One-time Password Algorithm)



SMS, scratch passwords list

– RFC 4226

– RFC 6238

Un serveur d'authentification forte pour $35!

ASFWS 2013

5
Déploiement des tokens à large échelle


Provisioning par Qrcode

Un serveur d'authentification forte pour $35!

ASFWS 2013

6
Choix de la plateforme matérielle


Raspberry Pi
– Bon marché
– Pas de licence d’OS (Debian Linux)
– Facilement disponible
– Supporté par une large communauté
– Alimentation via microUSB
– CPU 700 MHz (ARM)
– RAM 512 MB

Un serveur d'authentification forte pour $35!

ASFWS 2013

7
Mise en place du serveur d’authentification


Installation de Debian Wheezy
– Image existante chez Raspberry Pi



Installation des packages minimaux



Installation de la librairie multiOTP

– FreeRADIUS
– Nginx (serveur web)
– PHP

– Suivre simplement les instructions du fichier readme ;-)

Un serveur d'authentification forte pour $35!

ASFWS 2013

8
Vue d’ensemble d’une utilisation

Un serveur d'authentification forte pour $35!

ASFWS 2013

9
Intégration dans d’autres produits


MultiOneTimePassword Credential Provider,
authentification forte pour Windows



One Time Password Backend pour ownCloud



PoC phpMyAdmin avec authentification forte



Authentification forte pour un Extranet



…

Un serveur d'authentification forte pour $35!

ASFWS 2013

10
Roadmap pour les prochaines versions


Décembre 2013
– Prêt pour la certification OATH (Initiative For Open Authentication)
– Lien avec un serveur centralisé LDAP / ActiveDirectory
– Support des fichiers de provisioning PSKC v12 (encryptés)
– Attribution automatique de tokens hardware
– Resynchronisation automatique des tokens
– Importation d’utilisateurs en fichiers CSV
– Interface web basique pour la gestion

Un serveur d'authentification forte pour $35!

ASFWS 2013

11
Des questions ?

Un serveur d'authentification forte pour $35!

ASFWS 2013

12

Contenu connexe

Tendances

05 01 open-vpn
05 01 open-vpn05 01 open-vpn
05 01 open-vpnNoël
 
Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?Steven VAN POECK
 
Zabbix, garder un oeil toujours ouvert
Zabbix, garder un oeil toujours ouvertZabbix, garder un oeil toujours ouvert
Zabbix, garder un oeil toujours ouvertLook a box
 
Mdl ocsinventory 20100330-2
Mdl ocsinventory 20100330-2Mdl ocsinventory 20100330-2
Mdl ocsinventory 20100330-2tikok974
 
Workshop ssh (OSSEC)
Workshop ssh (OSSEC)Workshop ssh (OSSEC)
Workshop ssh (OSSEC)Akram Rekik
 
Mdl ocsinventory 20100330
Mdl ocsinventory 20100330Mdl ocsinventory 20100330
Mdl ocsinventory 20100330robertpluss
 
Définir un cluster sous hadoop avec apache ambari
Définir un cluster sous hadoop avec apache ambariDéfinir un cluster sous hadoop avec apache ambari
Définir un cluster sous hadoop avec apache ambarifabricemourlin
 
Mdl ocsinventory 20100330-2
Mdl ocsinventory 20100330-2Mdl ocsinventory 20100330-2
Mdl ocsinventory 20100330-2tikok974
 
09 02 configuration du serveur nfs
09 02 configuration du serveur nfs09 02 configuration du serveur nfs
09 02 configuration du serveur nfsNoël
 
DevoxxFR 2019: Consul @Criteo
DevoxxFR 2019: Consul @CriteoDevoxxFR 2019: Consul @Criteo
DevoxxFR 2019: Consul @CriteoPierre Souchay
 
Techdays 2014 - Le fermier azure (2ème partie)
Techdays 2014 - Le fermier azure (2ème partie)Techdays 2014 - Le fermier azure (2ème partie)
Techdays 2014 - Le fermier azure (2ème partie)Jonathan Le Guellec
 
Retour d'expérience Varnish Cache chez Eurosport
Retour d'expérience Varnish Cache chez EurosportRetour d'expérience Varnish Cache chez Eurosport
Retour d'expérience Varnish Cache chez EurosportBenjamin Baumann
 
05 2014-varnish
05 2014-varnish05 2014-varnish
05 2014-varnishthomaslc
 
Oubliez les mutualisés, passez simplement aux dédiés ! - Human Talks 2014
Oubliez les mutualisés, passez simplement aux dédiés ! - Human Talks 2014Oubliez les mutualisés, passez simplement aux dédiés ! - Human Talks 2014
Oubliez les mutualisés, passez simplement aux dédiés ! - Human Talks 2014Pierre Gasté
 
Moussasambe projet de securite zabbix
Moussasambe projet de securite zabbixMoussasambe projet de securite zabbix
Moussasambe projet de securite zabbixmoussa sambe
 

Tendances (18)

05 01 open-vpn
05 01 open-vpn05 01 open-vpn
05 01 open-vpn
 
Presentation Ceph
Presentation CephPresentation Ceph
Presentation Ceph
 
Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?
 
Zabbix, garder un oeil toujours ouvert
Zabbix, garder un oeil toujours ouvertZabbix, garder un oeil toujours ouvert
Zabbix, garder un oeil toujours ouvert
 
Mdl ocsinventory 20100330-2
Mdl ocsinventory 20100330-2Mdl ocsinventory 20100330-2
Mdl ocsinventory 20100330-2
 
Workshop ssh
Workshop sshWorkshop ssh
Workshop ssh
 
Workshop ssh (OSSEC)
Workshop ssh (OSSEC)Workshop ssh (OSSEC)
Workshop ssh (OSSEC)
 
Mdl ocsinventory 20100330
Mdl ocsinventory 20100330Mdl ocsinventory 20100330
Mdl ocsinventory 20100330
 
Définir un cluster sous hadoop avec apache ambari
Définir un cluster sous hadoop avec apache ambariDéfinir un cluster sous hadoop avec apache ambari
Définir un cluster sous hadoop avec apache ambari
 
Mdl ocsinventory 20100330-2
Mdl ocsinventory 20100330-2Mdl ocsinventory 20100330-2
Mdl ocsinventory 20100330-2
 
09 02 configuration du serveur nfs
09 02 configuration du serveur nfs09 02 configuration du serveur nfs
09 02 configuration du serveur nfs
 
DevoxxFR 2019: Consul @Criteo
DevoxxFR 2019: Consul @CriteoDevoxxFR 2019: Consul @Criteo
DevoxxFR 2019: Consul @Criteo
 
Techdays 2014 - Le fermier azure (2ème partie)
Techdays 2014 - Le fermier azure (2ème partie)Techdays 2014 - Le fermier azure (2ème partie)
Techdays 2014 - Le fermier azure (2ème partie)
 
Vps
VpsVps
Vps
 
Retour d'expérience Varnish Cache chez Eurosport
Retour d'expérience Varnish Cache chez EurosportRetour d'expérience Varnish Cache chez Eurosport
Retour d'expérience Varnish Cache chez Eurosport
 
05 2014-varnish
05 2014-varnish05 2014-varnish
05 2014-varnish
 
Oubliez les mutualisés, passez simplement aux dédiés ! - Human Talks 2014
Oubliez les mutualisés, passez simplement aux dédiés ! - Human Talks 2014Oubliez les mutualisés, passez simplement aux dédiés ! - Human Talks 2014
Oubliez les mutualisés, passez simplement aux dédiés ! - Human Talks 2014
 
Moussasambe projet de securite zabbix
Moussasambe projet de securite zabbixMoussasambe projet de securite zabbix
Moussasambe projet de securite zabbix
 

Similaire à ASFWS 2013 - Rump session - Un serveur d'authentification forte pour $35! par André Liechti

Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Microsoft Technet France
 
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Microsoft Décideurs IT
 
Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...
Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...
Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...Microsoft Technet France
 
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesBreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesXavier MARIN
 
S51 vos projets web services ibm i a l aide de php
S51   vos projets web services ibm i a l aide de phpS51   vos projets web services ibm i a l aide de php
S51 vos projets web services ibm i a l aide de phpGautier DUMAS
 
Projet Pki Etapes Clefs
Projet Pki   Etapes ClefsProjet Pki   Etapes Clefs
Projet Pki Etapes Clefsfabricemeillon
 
La diffusion vidéo avec le Cloud Azure
La diffusion vidéo avec le Cloud AzureLa diffusion vidéo avec le Cloud Azure
La diffusion vidéo avec le Cloud AzureMicrosoft
 
Prez -chtijug-29032016-(micro)services, loadbalancing et gestion des erreurs ...
Prez -chtijug-29032016-(micro)services, loadbalancing et gestion des erreurs ...Prez -chtijug-29032016-(micro)services, loadbalancing et gestion des erreurs ...
Prez -chtijug-29032016-(micro)services, loadbalancing et gestion des erreurs ...Christophe Furmaniak
 
Techdays 2009 - La virtualisation de machines avec Hyper-V
Techdays 2009 - La virtualisation de machines avec Hyper-VTechdays 2009 - La virtualisation de machines avec Hyper-V
Techdays 2009 - La virtualisation de machines avec Hyper-Vfabricemeillon
 
Etat des Lieux DANE (DNS Based Authentication of Named Entities)
Etat des Lieux DANE (DNS Based Authentication of Named Entities)Etat des Lieux DANE (DNS Based Authentication of Named Entities)
Etat des Lieux DANE (DNS Based Authentication of Named Entities)Afnic
 
Le Cloud IaaS & PaaS, OpenStack réseau et sécurité
Le Cloud IaaS & PaaS, OpenStack réseau et sécuritéLe Cloud IaaS & PaaS, OpenStack réseau et sécurité
Le Cloud IaaS & PaaS, OpenStack réseau et sécuritéNoureddine BOUYAHIAOUI
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)Restlet
 
Retour AFUP du forumphp 2017
Retour AFUP du forumphp 2017Retour AFUP du forumphp 2017
Retour AFUP du forumphp 2017AFUP_Limoges
 
Projet IPv6 Matrix / Version française intégrale
Projet IPv6 Matrix / Version française intégraleProjet IPv6 Matrix / Version française intégrale
Projet IPv6 Matrix / Version française intégraleOlivier MJ Crépin-Leblond
 
présentation des services Open Source pour GNU/Linux
présentation des services Open Source pour GNU/Linuxprésentation des services Open Source pour GNU/Linux
présentation des services Open Source pour GNU/LinuxNoël
 
BreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec AzureBreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec AzureNicolas Georgeault
 
Alphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.xAlphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.xAlphorm
 
Trunk VoiP Asterisk strongsawn openvpn
Trunk VoiP Asterisk strongsawn openvpnTrunk VoiP Asterisk strongsawn openvpn
Trunk VoiP Asterisk strongsawn openvpnYaya N'Tyeni Sanogo
 

Similaire à ASFWS 2013 - Rump session - Un serveur d'authentification forte pour $35! par André Liechti (20)

Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
 
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
Windows Azure Media Services : des API pour encoder, multiplexer et difuser v...
 
Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...
Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...
Windows Azure Media Services: des API pour encoder, transmuxer, diffuser, ...
 
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseriesBreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
BreizhCamp 2019 - IoT et open source hardware pour la collecte de timeseries
 
S51 vos projets web services ibm i a l aide de php
S51   vos projets web services ibm i a l aide de phpS51   vos projets web services ibm i a l aide de php
S51 vos projets web services ibm i a l aide de php
 
Projet Pki Etapes Clefs
Projet Pki   Etapes ClefsProjet Pki   Etapes Clefs
Projet Pki Etapes Clefs
 
La diffusion vidéo avec le Cloud Azure
La diffusion vidéo avec le Cloud AzureLa diffusion vidéo avec le Cloud Azure
La diffusion vidéo avec le Cloud Azure
 
Prez -chtijug-29032016-(micro)services, loadbalancing et gestion des erreurs ...
Prez -chtijug-29032016-(micro)services, loadbalancing et gestion des erreurs ...Prez -chtijug-29032016-(micro)services, loadbalancing et gestion des erreurs ...
Prez -chtijug-29032016-(micro)services, loadbalancing et gestion des erreurs ...
 
Techdays 2009 - La virtualisation de machines avec Hyper-V
Techdays 2009 - La virtualisation de machines avec Hyper-VTechdays 2009 - La virtualisation de machines avec Hyper-V
Techdays 2009 - La virtualisation de machines avec Hyper-V
 
Openstack framework Iaas
Openstack framework IaasOpenstack framework Iaas
Openstack framework Iaas
 
Etat des Lieux DANE (DNS Based Authentication of Named Entities)
Etat des Lieux DANE (DNS Based Authentication of Named Entities)Etat des Lieux DANE (DNS Based Authentication of Named Entities)
Etat des Lieux DANE (DNS Based Authentication of Named Entities)
 
Le Cloud IaaS & PaaS, OpenStack réseau et sécurité
Le Cloud IaaS & PaaS, OpenStack réseau et sécuritéLe Cloud IaaS & PaaS, OpenStack réseau et sécurité
Le Cloud IaaS & PaaS, OpenStack réseau et sécurité
 
De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)De l'Open Source à l'Open API (in French)
De l'Open Source à l'Open API (in French)
 
Retour AFUP du forumphp 2017
Retour AFUP du forumphp 2017Retour AFUP du forumphp 2017
Retour AFUP du forumphp 2017
 
Projet IPv6 Matrix / Version française intégrale
Projet IPv6 Matrix / Version française intégraleProjet IPv6 Matrix / Version française intégrale
Projet IPv6 Matrix / Version française intégrale
 
présentation des services Open Source pour GNU/Linux
présentation des services Open Source pour GNU/Linuxprésentation des services Open Source pour GNU/Linux
présentation des services Open Source pour GNU/Linux
 
BreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec AzureBreizhCamp - Drupal7 dans le cloud avec Azure
BreizhCamp - Drupal7 dans le cloud avec Azure
 
Alphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.xAlphorm.com Support de la Formation PromoxVE 4.x
Alphorm.com Support de la Formation PromoxVE 4.x
 
Flex4.5 air3.0
Flex4.5 air3.0Flex4.5 air3.0
Flex4.5 air3.0
 
Trunk VoiP Asterisk strongsawn openvpn
Trunk VoiP Asterisk strongsawn openvpnTrunk VoiP Asterisk strongsawn openvpn
Trunk VoiP Asterisk strongsawn openvpn
 

Plus de Cyber Security Alliance

Robots are among us, but who takes responsibility?
Robots are among us, but who takes responsibility?Robots are among us, but who takes responsibility?
Robots are among us, but who takes responsibility?Cyber Security Alliance
 
iOS malware: what's the risk and how to reduce it
iOS malware: what's the risk and how to reduce itiOS malware: what's the risk and how to reduce it
iOS malware: what's the risk and how to reduce itCyber Security Alliance
 
Why huntung IoC fails at protecting against targeted attacks
Why huntung IoC fails at protecting against targeted attacksWhy huntung IoC fails at protecting against targeted attacks
Why huntung IoC fails at protecting against targeted attacksCyber Security Alliance
 
Corporations - the new victims of targeted ransomware
Corporations - the new victims of targeted ransomwareCorporations - the new victims of targeted ransomware
Corporations - the new victims of targeted ransomwareCyber Security Alliance
 
Introducing Man in the Contacts attack to trick encrypted messaging apps
Introducing Man in the Contacts attack to trick encrypted messaging appsIntroducing Man in the Contacts attack to trick encrypted messaging apps
Introducing Man in the Contacts attack to trick encrypted messaging appsCyber Security Alliance
 
Understanding the fundamentals of attacks
Understanding the fundamentals of attacksUnderstanding the fundamentals of attacks
Understanding the fundamentals of attacksCyber Security Alliance
 
Reverse engineering Swisscom's Centro Grande Modem
Reverse engineering Swisscom's Centro Grande ModemReverse engineering Swisscom's Centro Grande Modem
Reverse engineering Swisscom's Centro Grande ModemCyber Security Alliance
 
Easy public-private-keys-strong-authentication-using-u2 f
Easy public-private-keys-strong-authentication-using-u2 fEasy public-private-keys-strong-authentication-using-u2 f
Easy public-private-keys-strong-authentication-using-u2 fCyber Security Alliance
 
Create a-strong-two-factors-authentication-device-for-less-than-chf-100
Create a-strong-two-factors-authentication-device-for-less-than-chf-100Create a-strong-two-factors-authentication-device-for-less-than-chf-100
Create a-strong-two-factors-authentication-device-for-less-than-chf-100Cyber Security Alliance
 
Offline bruteforce attack on wi fi protected setup
Offline bruteforce attack on wi fi protected setupOffline bruteforce attack on wi fi protected setup
Offline bruteforce attack on wi fi protected setupCyber Security Alliance
 
App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...
App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...
App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...Cyber Security Alliance
 
Warning Ahead: SecurityStorms are Brewing in Your JavaScript
Warning Ahead: SecurityStorms are Brewing in Your JavaScriptWarning Ahead: SecurityStorms are Brewing in Your JavaScript
Warning Ahead: SecurityStorms are Brewing in Your JavaScriptCyber Security Alliance
 
Killing any security product … using a Mimikatz undocumented feature
Killing any security product … using a Mimikatz undocumented featureKilling any security product … using a Mimikatz undocumented feature
Killing any security product … using a Mimikatz undocumented featureCyber Security Alliance
 

Plus de Cyber Security Alliance (20)

Bug Bounty @ Swisscom
Bug Bounty @ SwisscomBug Bounty @ Swisscom
Bug Bounty @ Swisscom
 
Robots are among us, but who takes responsibility?
Robots are among us, but who takes responsibility?Robots are among us, but who takes responsibility?
Robots are among us, but who takes responsibility?
 
iOS malware: what's the risk and how to reduce it
iOS malware: what's the risk and how to reduce itiOS malware: what's the risk and how to reduce it
iOS malware: what's the risk and how to reduce it
 
Why huntung IoC fails at protecting against targeted attacks
Why huntung IoC fails at protecting against targeted attacksWhy huntung IoC fails at protecting against targeted attacks
Why huntung IoC fails at protecting against targeted attacks
 
Corporations - the new victims of targeted ransomware
Corporations - the new victims of targeted ransomwareCorporations - the new victims of targeted ransomware
Corporations - the new victims of targeted ransomware
 
Blockchain for Beginners
Blockchain for Beginners Blockchain for Beginners
Blockchain for Beginners
 
Le pentest pour les nuls #cybsec16
Le pentest pour les nuls #cybsec16Le pentest pour les nuls #cybsec16
Le pentest pour les nuls #cybsec16
 
Introducing Man in the Contacts attack to trick encrypted messaging apps
Introducing Man in the Contacts attack to trick encrypted messaging appsIntroducing Man in the Contacts attack to trick encrypted messaging apps
Introducing Man in the Contacts attack to trick encrypted messaging apps
 
Understanding the fundamentals of attacks
Understanding the fundamentals of attacksUnderstanding the fundamentals of attacks
Understanding the fundamentals of attacks
 
Rump : iOS patch diffing
Rump : iOS patch diffingRump : iOS patch diffing
Rump : iOS patch diffing
 
An easy way into your sap systems v3.0
An easy way into your sap systems v3.0An easy way into your sap systems v3.0
An easy way into your sap systems v3.0
 
Reverse engineering Swisscom's Centro Grande Modem
Reverse engineering Swisscom's Centro Grande ModemReverse engineering Swisscom's Centro Grande Modem
Reverse engineering Swisscom's Centro Grande Modem
 
Easy public-private-keys-strong-authentication-using-u2 f
Easy public-private-keys-strong-authentication-using-u2 fEasy public-private-keys-strong-authentication-using-u2 f
Easy public-private-keys-strong-authentication-using-u2 f
 
Create a-strong-two-factors-authentication-device-for-less-than-chf-100
Create a-strong-two-factors-authentication-device-for-less-than-chf-100Create a-strong-two-factors-authentication-device-for-less-than-chf-100
Create a-strong-two-factors-authentication-device-for-less-than-chf-100
 
Offline bruteforce attack on wi fi protected setup
Offline bruteforce attack on wi fi protected setupOffline bruteforce attack on wi fi protected setup
Offline bruteforce attack on wi fi protected setup
 
App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...
App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...
App secforum2014 andrivet-cplusplus11-metaprogramming_applied_to_software_obf...
 
Warning Ahead: SecurityStorms are Brewing in Your JavaScript
Warning Ahead: SecurityStorms are Brewing in Your JavaScriptWarning Ahead: SecurityStorms are Brewing in Your JavaScript
Warning Ahead: SecurityStorms are Brewing in Your JavaScript
 
Killing any security product … using a Mimikatz undocumented feature
Killing any security product … using a Mimikatz undocumented featureKilling any security product … using a Mimikatz undocumented feature
Killing any security product … using a Mimikatz undocumented feature
 
Rump attaque usb_caralinda_fabrice
Rump attaque usb_caralinda_fabriceRump attaque usb_caralinda_fabrice
Rump attaque usb_caralinda_fabrice
 
Operation emmental appsec
Operation emmental appsecOperation emmental appsec
Operation emmental appsec
 

ASFWS 2013 - Rump session - Un serveur d'authentification forte pour $35! par André Liechti

  • 1. Un serveur d'authentification forte pour $35! Application Security Forum – Western Switzerland 2013 (16.10.2013) André Liechti Dernière mise à jour: 31.10.2013 Un serveur d'authentification forte pour $35! ASFWS 2013 www.multiOTP.net
  • 2. Un serveur d’authentification forte en 10 slides! Naissance du projet  Conception de la librairie multiOTP  Tokens supportés  Déploiement des tokens à large échelle  Choix de la plateforme matérielle  Mise en place du serveur d’authentification  Vue d’ensemble d’une utilisation  Intégration dans d’autres produits  Roadmap pour les prochaines versions  Séance de questions / réponses  Un serveur d'authentification forte pour $35! ASFWS 2013 2
  • 3. Naissance du projet 2009 PoC en PHP pour le protocole Mobile-OTP  2010 Création d’une classe et support de TOTP/HOTP  2011 Atelier pratique lors de l’ASFWS 2011  2012 Déploiement plus large et retours des utilisateurs  2013 Ajout de nouvelles fonctionnalités – Envoi de tokens par SMS – Génération de listes à biffer – Provisioning par Qrcode / URL – Utilisation client/serveur avec cache local – Possibilité de stockage dans une base de données (MySQL)  Un serveur d'authentification forte pour $35! ASFWS 2013 3
  • 4. Conception de la librairie multiOTP  Implémentation « légère » sous la forme d’une classe en PHP  Au final, la librairie tient dans un seul fichier agrégé (~ 10’000 lignes)  Outil en ligne de commande implémentant la librairie  Stockage dans des fichiers plats Un serveur d'authentification forte pour $35! ASFWS 2013 4
  • 5. Tokens supportés  Mobile-OTP (motp.sourceforge.net) – Time based, saisie du code PIN sur le device – Android, iOS, Windows Mobile, Palm, Maemo, HTML5, Java, etc.  HOTP (HMAC-based One-time Password Algorithm)  TOTP (Time-based One-time Password Algorithm)  SMS, scratch passwords list – RFC 4226 – RFC 6238 Un serveur d'authentification forte pour $35! ASFWS 2013 5
  • 6. Déploiement des tokens à large échelle  Provisioning par Qrcode Un serveur d'authentification forte pour $35! ASFWS 2013 6
  • 7. Choix de la plateforme matérielle  Raspberry Pi – Bon marché – Pas de licence d’OS (Debian Linux) – Facilement disponible – Supporté par une large communauté – Alimentation via microUSB – CPU 700 MHz (ARM) – RAM 512 MB Un serveur d'authentification forte pour $35! ASFWS 2013 7
  • 8. Mise en place du serveur d’authentification  Installation de Debian Wheezy – Image existante chez Raspberry Pi  Installation des packages minimaux  Installation de la librairie multiOTP – FreeRADIUS – Nginx (serveur web) – PHP – Suivre simplement les instructions du fichier readme ;-) Un serveur d'authentification forte pour $35! ASFWS 2013 8
  • 9. Vue d’ensemble d’une utilisation Un serveur d'authentification forte pour $35! ASFWS 2013 9
  • 10. Intégration dans d’autres produits  MultiOneTimePassword Credential Provider, authentification forte pour Windows  One Time Password Backend pour ownCloud  PoC phpMyAdmin avec authentification forte  Authentification forte pour un Extranet  … Un serveur d'authentification forte pour $35! ASFWS 2013 10
  • 11. Roadmap pour les prochaines versions  Décembre 2013 – Prêt pour la certification OATH (Initiative For Open Authentication) – Lien avec un serveur centralisé LDAP / ActiveDirectory – Support des fichiers de provisioning PSKC v12 (encryptés) – Attribution automatique de tokens hardware – Resynchronisation automatique des tokens – Importation d’utilisateurs en fichiers CSV – Interface web basique pour la gestion Un serveur d'authentification forte pour $35! ASFWS 2013 11
  • 12. Des questions ? Un serveur d'authentification forte pour $35! ASFWS 2013 12