Conseils, services, ingénierie en informatique. Mise en place de solutions technologiques, et support, pour les entreprises.

Note utilisateur: 5 / 5

Etoiles activesEtoiles activesEtoiles activesEtoiles activesEtoiles actives
 

Developpement web securisé les bonnes pratiques : présentation CAPFI


Chez Capfi on peut se connecter au hotspot wifi si on respecte ces conditions d'utilisations:

WIFI Termes et Conditions

Termes et conditions

En utilisant notre service Internet, vous reconnaissez et acceptez expressément qu\'il existe des risques importants pour la sécurité, la confidentialité et la confidentialité inhérents à l\'accès ou à la transmission d\'informations par Internet, que la connexion soit facilitée par une technologie filaire ou sans fil. Les problèmes de sécurité incluent notamment l\'interception de transmissions, la perte de données et l\'introduction, ainsi que les virus et autres programmes susceptibles de corrompre ou d\'endommager votre ordinateur.
En conséquence, vous acceptez que le propriétaire et / ou le fournisseur de ce réseau N\'EST PAS responsable des interceptions ou transmissions, des virus informatiques ou des virus, de la perte de données, de la corruption des fichiers, du piratage ou des dommages causés à votre ordinateur ou à d\'autres appareils résultant de la transmission ou de la perte. téléchargement d\'informations ou de matériel via le service Internet fourni.


L\'utilisation du réseau sans fil est soumise aux restrictions générales décrites ci-dessous. Si un comportement anormal, illégal ou non autorisé est détecté, y compris une consommation importante de bande passante, le fournisseur de réseau se réserve le droit de déconnecter de manière permanente le périphérique incriminé du réseau sans fil.

Exemples d\'utilisations illégales:

Les exemples suivants sont uniquement représentatifs et ne constituent pas une liste complète des utilisations illégales:

- Spamming et atteinte à la vie privée - Envoi de messages groupés et / ou commerciaux non sollicités sur Internet à l\'aide du service ou à l\'aide du service pour des activités qui portent atteinte à la vie privée d\'autrui.
- Violation des droits de propriété intellectuelle - Exercice de toute activité portant atteinte aux droits de propriété intellectuelle d\'autrui ou à leur appropriation illicite, notamment brevets, droits d\'auteur, marques de commerce, marques de service, secrets commerciaux ou tout autre droit de propriété d\'un tiers.
- Accéder illégalement ou sans autorisation à des ordinateurs, comptes, équipements ou réseaux appartenant à une autre partie, ou tenter de pénétrer / contourner les mesures de sécurité d\'un autre système. Cela inclut toute activité pouvant être utilisée comme précurseur d\'une tentative de pénétration du système, y compris, mais sans s\'y limiter, les analyses de ports, les analyses furtives ou toute autre activité de collecte d\'informations.
- Le transfert de technologie, de logiciels ou d’autres matériels en violation des lois et réglementations applicables en matière d’exportation.
- Violations du contrôle des exportations
- Utiliser le Service en violation des lois et réglementations applicables, y compris, sans toutefois s\'y limiter, la publicité, la transmission ou la mise à disposition de systèmes de ponzi ou pyramidaux, le chargement frauduleux de cartes de crédit, le piratage de logiciels ou la formulation frauduleuse d\'offres de vente ou d\'achat de produits, articles ou services.
- Proférer des menaces;
- Distribution de matériel pornographique aux mineurs;
- et pornographie enfantine.

Exemples d\'utilisations inacceptables:

Les exemples suivants ne sont que des exemples représentatifs et ne constituent pas une liste complète des utilisations inacceptables:

- Opérations à bande passante élevée, telles que les transferts de fichiers volumineux et le partage de supports avec des programmes poste à poste (i.e.torrents)
- Discours ou matériel obscène ou indécent
- Langage diffamatoire ou abusif
- Utiliser le Service pour transmettre, poster, télécharger ou mettre à disposition d\'une autre manière un matériel ou un langage diffamatoire, harcelant, abusif ou menaçant, qui encourage les lésions corporelles, la destruction de biens ou en harcèle les autres.
- Falsification ou fausse représentation des en-têtes de message, en totalité ou en partie, pour masquer l\'expéditeur du message.
- Faciliter une violation de ces conditions d\'utilisation
- Le piratage
- Distribution de virus Internet, chevaux de Troie ou autres activités destructrices
- Diffusion d\'informations sur la création et l\'envoi de virus Internet, de vers, de chevaux de Troie, de requêtes ping, d\'inondations, d\'attaques par courrier ou d\'attaques par déni de service. En outre, les activités qui perturbent l\'utilisation ou interfèrent avec la capacité d\'autres personnes d\'utiliser efficacement le nœud ou tout réseau, système, service ou équipement connecté.
- Publicité, transmission ou mise à disposition de tout produit logiciel, produit ou service conçu pour enfreindre les présentes conditions d\'utilisation, ce qui inclut la facilitation des moyens de spam, l\'initiation du ping, l\'inondation, le publipostage, les attaques par déni de service et piratage de logiciels.
- La vente, le transfert ou la location du Service à des clients, clients ou autres tiers, directement ou dans le cadre d\'un service ou produit créé pour la revente.
- Recherche d\'informations sur les mots de passe ou les données appartenant à un autre utilisateur.
- Faire des copies non autorisées de logiciels propriétaires ou offrir des copies non autorisées de logiciels propriétaires à des tiers.
- Intercepter ou examiner le contenu des messages, fichiers ou communications en transit sur un réseau de données.


Fin des conditions d'utilisation du wifi


Présentation du groupe Capfi:
5 entités +
fluid & SOC

MOA conseil
infra et sécurité
Data big data machine learning
Ingé digitale

2 offres:
SOC dédié à la sécurité
Fluid donc C est le CTO pour forfait
Ils embauchent

SOC = réduire le temps des intrusions: failles réseau, failles web, récuperer les logs, les coreleer, les remonter les anomalies et investiguer par la suite. OFfre pour PME, de 50 à 5000 salariés.

CAPFI s'engage auprès des associations: nos quartiers ont du talent:
sponsorise des sportifs handicapés qui a fait le marathon de new york en handi sport, 4L trophy


On en arrive à la sécurité applicative web.
Request for paper
Mickael et Woody de chez
https://www.sipios.com/ cherchent des speakers pour raconter vos exploits...

Sponsors
cherchent des sponsors
Tous les 1er mercredi du mois.

Chiffres: 64 inscrits...

La gazette sécurité

Patrice Bertelet (Capfi)
Damien Thomas (LGHM)
Jean-Baptiste Aviat (sqreen)
Eric fourrier (Gitgardian) sécurité depuis le dev


De la pub partout:
172 applications enlevée du store. Très peu sont des malwares
2eme 4 vulnérabilités sur Chrome detectées par la communauté des bug bounties.
Appel: nouveau jailbreak sur le DFU,

 

 

Developpement web securisé les bonnes pratiques :  Présentation de l'équipe de pentesters LGHM

Damien Thomas (LGHM)

https://www.consultingit.fr/lghm

Cette Red Team vous aide à tester votre application pour detecter les vulnérabilités avant que les hackers ne les trouvent . Simulation de black hat: White hat as a service! 

pwne les tous

 

Venez jouer avec nous à notre prochain Ethical Hacker Jeopardy

 

 Consultingit suite fleche 299

 

  

Une question? Posez-la ici

Besoin d'un tests d'intrusion, contactez la Red Team LGHM

Developpement web securisé les bonnes pratiques: Sqreen

Jean-Baptiste Aviat (sqreen)
CTO de Sqreen
https://www.sqreen.io
Avant chez apple dans la red team pendant 5 ans
Avant apple, pentester chez HSC
Fondé en 2015
2018 San Francisco, 15 personne là bas, R&D à Paris; Levee de fond de 14Millions avec Greylock

talk destiné aux equipes experts en sécurité

Nouvelle feature?

En 2000, on faisait notre app en PHP, il n'y avait pas beaucoup de frameworks, un seul driver Mysql. j'écrivais moi meme mes briques, mon code était énorme. Tout le monde réinvente la roue, donc beaucoup de vulnérabilités.

2010, les choses changent: github, les packages managers ont rendu le partage de code. La proportion est inversée: le code qu'on fait n'est plus un ORM, mais purement métier. On bouge vers la logique métier. La sécurité s'améliore car les frameworks sont patchés par la communauté.

2010, on bouge de l'app monolithique vers micro services. Taille équipe idéale: 8 personnnes, 1 feature.
On pousse les devs à deployer rapidement: docker et kubernetes. LA vélocité est importante: on est en train de donner du poids au développeur pour ça, car le dev est une denrée rare, il faut maximisé l'efficacité.

Qu'est-ce qu'une attaque contre la business logic?

On connait tous le TOP 10 Owasp, CSRF, XSS, injection, etc...

Les challenges sécurité se déplacent vers la logique métier.

Exemple: commande de pizza, il faut téléphoner, faire la pizza, mettre au four, livrer. Problème métier dans la conception. Comment protéger le réseau contre des attaques de ce type là: on met un WAF: web application firewall, un proxy http qui voit passer les requetes et les analyse. Il a une liste de mots clés, de patterns et les detecte dans les données qui rentrent. Ca existe depuis longtemps, mais les WAF restent dur à configurer et à scaler. Le WAF est décorélé des developpeurs et géré par l'équipe sécurité; Pentest pour une banque, parc de la tete d'or: tous ceux qui habitaient autour ne pouvaient pas s'isncrire. Pourquoi? Parce que le "d'" de la tete d'or ne passait pas le WAF, il interdisait l'apostrophe, faux positif


Une infra moderne, des apis sont exposées partout; On doit identifier les attaques sur les services. On detecte les attaques à certains endroits clés du réseau, et non plus sur les endpoints.

En pratique, comment faire??

Ona une fonction, si on veut tracker des problemes de logique métier, par exemple, si on a une commande de pizza qui vient de se faire.

def track(event_name)

cette fonction, on la dissémine dans notre code de notre application, dans toutes les fonctions un peu sensibles.

On capture tous les evenements vers un event stream qui envoie les données vers un moteur d'analyse. Si j'ai un utilisateur qui a commandé 200 pizzas en une minute, c'est suspect, donc on bloque. On bloque l'utilisateur, son login, son IP, on interdit le service à l'utilisateur, etc.

Avec cet outillage, je peux analyser ce qu'il se passe dans l'application

Si trop de connections par exemple, on bloque

On decentralise le WAF et on le met dans

New relic permet de gérer la performance de notre application: c'est lent ou rapide.

Il y a 20 ans, on avait un load balancer, un reverse proxy et on regardait combien de temps les requetes mettaient. Exemple de 200 ms , la requete doit passer à 100 ms. On doit profiler...
New relic passe DANS l'application, il analyse quelle type de requete est le goulet d'etranglement, le langage, python? javascript? la base de donnée,e tc...

Donc tout ca c'est beau, mais comment scaler, faire ça à l'échelle?

Le layer accède aux données et il est le point sur lequel concentrer les attaques, c'est le point sensible. Idée: toute la logique qui permet de tracker les events utilisateurs, soit on les track dans chaque fonction, soit on utilise une technique logicielle: l'instrumentation dynamique, comme les antivirus. Comment ça marche? A chaque fois qu'on ouvre un fichier, l'antivirus scan. Il rempalce la fonction open() par une fonction à lui. Il analyse et si un virus est trouvé il avertit le système d'expoitation: l'antivirus remplace la fonction open() readfile() et les overide. Idem, je vais utiliser le meme process au niveau de l'authentification.

Dynamique? On les definit hors de l'application, donc on peut surveiller les fonctions souhaitées. Par exemple, en Ruby, 10 lignes de code:

alias_method saved
devine_medhod

on rempalce une methode par une autre

Java c'est similaire: class dynamicType = new class...

On a dont une liste de fonction qui track ce qui se passe. Grace au hook, on va connaitre quel utilisateur est authentifié. On récupère de l'information métier: quelle est la pizza commandée? Hawaienne? Margarita?

MAIS il faut que les développeurs soient content de cette nouvelle fonction: pas trop de longs, pas trop de consommation mémoire...

Comment ca marche en pratique?

Exemple, avec un fichier JSON, on peut paramétrer ce qu'on hook.

Detection des activités inhabituelles. Exemple, un utilisateur qui commande 200 pizzas c'est bizarre.

On detecte les flux logique: si on commande 10 pizzas sans être authentifié, ce n'est pas normal.

Cas d'école, le hack facebook: plusieurs millions de tokens utilisateurs volés qui pouvaient lire des données personnelles.

Il ya une fonctionnalité facebook pour uploader les videos: fonction "voir se post en tant que". 3 vulnérabilités métier: "view as" ca générait un token qui avait beaucoup de droits, au moment où on uploadait une video sur mobile. On a pu récupérer des millions de tokens de FAceook.

Comment Facebook peut-il contrer ça?

On impersonnalise un utilisateur, on genere un token à la place. On crée des regles: si un utilisateur genere trop de tokens, on veut le savoir. On génére des reponses de sécurité: lock le user, ou tag le pour review.

En partique comment faire?

Un event stream avec Kafka
Détection d'anomalie

Est-ce que ça peut etre vu comme une brique Rasp? Runtime application self protection, on fait la sécurité au niveau du runtime, c'est apporter de la sécurité au runtime. Idéal pour la protection injection SQL, injection MongoDB etc. On appelle ca un micro-agent, mais c'est une librairie qu'on fait avec npm install. PAs de demon, c'est juste un package à installer.

Comment détecter un accès qui n'a pas été donné à un utilisateur? Si un user devient administrateur au lieu d'être utilisateur de base par exemple. Quand on track un event, login ou reset password, on ajoute des arguments avec des privileges: quand un user est authentifie, il est privilege, 1 ou 2 ou 3... Ensuite on teste le changement des provoleges.

function login(email,password) {
...
track('login')

Qu'envoie Sqreen comme données dans le Cloud? GDPR: pas de cookies, pas de données persos. Etre en SAS pour une banque c'est un frein, mais on filtre à l'envoi. Les banques américaines migrent vers le Cloud, les banques françaises montent de l'open stack in house.

Est-ce qu'on a deja testé si du fuzzing est fait dans un projet open source? PAs de recherche de vulnérabilités dans les projets open source

Une question? Posez-la ici

Besoin d'un tests d'intrusion, contactez la Red Team LGHM

Developpement web securisé les bonnes pratiques: Gitguardian

Eric fourrier (Gitguardian) sécurité depuis le dev
https://www.gitguardian.com


Jupyter notebook: check de policies sur le source code, et s'interesser aux informations sensibles dans le code: clés RSA, clés twitter, clés AwS, etc.
Empecher de se faire voler les clés, donc ainsi sécuriser

Shifting to the left: la cyberszécurité se retrouve du coté du développeur, dans l'IDE, sur github, et plus les vulnéarbilités sont catchées tôt, moins elles countent cher.SAST, Sneak pour intégrer des librairies dans le code


Les hackers, à partir des pushs ils reconstruisent les clés. Quand un hacker prend possession d'un cloud amazon, il les chiffre et ils ransome ensuite.

On extrait 50000 repositories Github et on cherche le rootree. Objectif, voir ce qu'il y a dedans.

Donc on parse les codes. On fait des stats sur combien de repos ont des gitignore, les repo name, , has_dockerfile, has_travis, on a les stats des langages, avec Javascript, Java, python, PHP en tete

60% des repos ont un git_ignore, pour eviter de pousser sur GIT des données sensibles.
travis_ci: 15% ont une ci
dockerignore? dockerfile?

Les gens font de plus en plus attention à ne plus pousser n'importe quoi sur. C'est lié aux nouveaux outils aussi de templating qui génerent automatiquement les fichiers.

Point de vue d'un hacker qui n'a pas de temps: il cherche les fichiers sensibles: les .env, les .npmrc, les
1,4% de fichiers sensibles qui contiennent de credentials:
.env
.npm
.jks
.zshenv
database.yml
private.key

Github a un github sarch, soit un elastic qui indexe les commit messages. On peut chercher "remove password" par exemple, et on trouve une tonne de mots de passe, ça marche assez bien

Github dorks: on cherche dans la search private keys, credentials...

Trouver les vulnérabilités avec Snyk :

secret detection: catcher les secrets AVANT qu'ils ne soit poussés sur github.

Snyk test:
il extrait les dependances du code. Sur javascript c'est pareil: il envoie ca a son API qui a les vulnerabilités, et il envoie les resultats. Exemple des vulnérabilités detectées dans SCAPY. MAIS ca lève pas mal de faux positifs: est-ce que la vulnérabilité est exploitable par un attaquant.

Sur github, 12 millions de push par jour, et on trouve 1200 clés AWS!

snyk vs pipenv

Snyk agrege les CVE

pipenv integre aussi une librairie de scan de vulnérabilités:

pipenv check

Snyk est developer friendly, mais il faut savoir quoi filtrer.


SAST opensource:
Gosec, Bandut TSlint config security, NideJScan, Brakeman, phpcs-security-audit (worpress), sonarcube, Flawfinder pour C et C++
javascript: ESLint security plugin

test bandit:

bandit --help

bandit check -r .

Github a mis en place un service token scanning, avec des regex qui testent si des clés sont importées, comme: AWS, AZure, mailgun, Alibaba cloud, Slack, Stripe...

Attention aux pré commits, github precommit hooks. L'idée c'est que certaines actions, commit, push, on attache des actions avant et après, pré ou post et qui vont etre lancées à chaque fois que je fais un commit. Dans le .git, on les voit, c'est un script bash qui fait ce qu'on veut. Il crée des librairies de pré commit, pour faire tout ce qui est linging, code quality.

pre-commit run --all-files

Github n'est pas vraiment GDPR car il expose l'adresse email de chaque personne qui fait un push.
40% des adresses des developpeurs ont été trouvées sur haveibeenpwned !

 

On a envoyé 450000 emails d'alerte depuis la creation de la boite Gitguardian. Technique de growth hack qui marche bien.

 

 

  

Une question? Posez-la ici

Besoin d'un tests d'intrusion, contactez la Red Team LGHM

 

 

Ce transcript reflète exclusivement l'opinion de ses auteurs et n’engage en aucune façon Consultingit

 

Commentaires?

Voilà, j'espère que ça vous a plu. Vos commentaires/remarques sont les bienvenus

 

ou contactez-nous?