Cybersecurity Auditor (source code/reviewer)

Quarkslab est une société française spécialisée dans la R&D, le conseil et le développement logiciel dans le domaine de la sécurité de l’information. Notre expertise couvre la sécurité offensive et dé

Quarkslab est une société française spécialisée dans la R&D, le conseil et le développement logiciel dans le domaine de la sécurité de l’information. Notre expertise couvre la sécurité offensive et défensive pour accompagner les organisations dans l’adoption d’une nouvelle posture sécuritaire : forcer l’attaquant et non le défenseur à s’adapter constamment. Grace à nos services et nos logiciels de sécurité, nous fournissons des solutions sur-mesure aux organisations en les aidant à protéger leur biens, données sensible et utilisateurs contre les attaques de plus en plus sophistiquées.

Quarkslab est un acteur actif, passionné, et contributeurs de la communauté open source à travers le développement et le maintien d’outils à l’état de l’art tels que : LIEF, QBDI, Triton, Irma, et bien d’autres.

Nous développons deux produits logiciels commerciaux : QFlow, pour la protection contre les menaces et les logiciels malveillants, et QShield, pour la protection d’applications, de clés et de données.

Description du poste

Lieux: Rennes ou Paris.

Type et profil: Plein temps / position senior.

Langues: Français et Anglais courant.

Le poste

Passionné par les langages de programmation, leurs spécificités et leur analyse? Vous pensez que rechercher des vulnérabilités ne se fait pas qu’avec un désassembleur? Vous disposez de connaissances techniques cybersécurité éprouvées en analyse de code et audit cybersécurité en général? QLab vous attend en tant qu’ingénieur de l’équipe Automated Analysis.

Vous participerez à la recherche de vulnérabilités dans des lignes de code en source ouverte ou fermée. Pour le compte de nos clients, vous aurez la charge de les aider à détecter des vulnérabilités et de proposer les correctifs associés. En s’appuyant sur les experts de Quarkslab, vous aurez la possibilité de développer des nouvelles méthodologies et de les implémenter dans des nouveaux outils de détection, d’analyse dynamique ou de fuzzing.

Rattaché au Team Leader de l’équipe Automated Analysis, vous aurez en charge de réaliser des missions d’audit et conseils techniques et de participer aux travaux de R&D de QLab sur le périmètre de l’audit de code et de l’outillage associé, fonction de votre expérience et compétences techniques. Vous serez également amené à créer et délivrer des formations, en interne et/ou externe sur votre domaine de compétence.

Nous recherchons une personne curieuse, intéressée à relever de nouveaux défis et à étudier de nouvelles catégories de vulnérabilités. Chez Quarkslab, nous aimons écrire des outils et effectuer des recherches pour faciliter nos activités d’audit afin d’obtenir de meilleurs résultats, et partager vos connaissances notamment lors de conférences.

Localisation: dans les locaux de Quarkslab à Paris (9e et 18e arrondissement) ou dans les locaux Quarkslab de Rennes.

À propos de QLab

Au sein de Quarkslab, la BU QLab, composée de plus de 41 ingénieurs, réalise des projets, internes ou externes, autour des thèmes suivants :

  • Reverse engineering : comprendre le fonctionnement d’un programme sans disposer du code source.
  • Cryptographie : analyser ou concevoir la cryptographie dans les applications pour augmenter les propriétés de sécurité.
  • Recherche de vulnérabilités : évaluer la robustesse d’une cible, identifier des failles et développer des exploits.
  • Sécurité matérielle et logicielle : travailler sur des systèmes à base de cartes à puce, concevoir des architectures logicielles et matérielles et tester leur niveau de sécurité.

Pourquoi travailler chez Quarkslab?

  • Pour travailler dans une équipe de passionnés, désireuse d’apprendre et de jouer avec de nouvelles approches et technologies, mélangeant des domaines de compétences variées couvrant toutes les couches du logiciel au matériel.
  • Pour profiter d’un partage de connaissances récurrent et des interactions régulières interéquipes.
  • Pour participer à des conférences dans votre domaine d’expertise, apprendre et partager vos connaissances lors de nombreux évènements internes (conférence hebdomadaire, formations, etc.).
  • Pour contribuer au développement d’outils open source ou à usage interne.
  • Pour une excellente mutuelle d’entreprise.
  • Pour un environnement international avec des bureaux à Paris, Rennes et à Buenos Aires (team croissants vs. team asado).

Processus de recrutement

  • Appel avec notre responsable de l’acquisition des talents.
  • Résolution d’un challenge technique.
  • Entretien technique et managérial dans nos locaux de Paris / Rennes ou en vidéoconférence.
  • Débriefing RH et offre d’emploi.

Quarkslab est fier d’être un employeur qui respecte l’égalité des chances sur le lieu de travail. Nous nous engageons à assurer l’égalité des chances en matière d’emploi, indépendamment de l’origine ethnique, de la couleur, de l’ascendance, de la religion, du sexe, de l’origine nationale, de l’orientation sexuelle, de l’âge, de la citoyenneté, de l’état civil, du handicap ou de l’identité de genre. Si vous avez un handicap ou des besoins particuliers qui nécessitent certains aménagements, veuillez-nous en faire part et nous serons heureux de les prendre en considération.

Profil recherché

Voici une liste de compétences et connaissances souhaitées pour le poste proposé:

  • Connaissance en langage de programmation et en analyse critique de logiciel à partir de son code source (recherche de vulnérabilités, de choix d’implémentation de mécanismes de sécurité, d’analyse du flot de données, …)
  • Les langages de programmation visés sont : C, C++, JS, Rust, Go.
  • Connaissance d’outils d’analyse statique de code et des concepts sous-jacent (e.g., SonarQube, CodeSonar, Coverity, CodeQL).
  • Connaissances des architectures processeurs Intel et/ou ARM (32 et 64 bits).
  • Bonne compréhension du fonctionnement général des systèmes d’exploitation de type desktop (e.g., Windows, Linux ou MacOS) et/ou mobile (Android/iOS).
  • Appétence pour le développement d’outils d’aide à la rétroingénierie et à l’analyse de code.
  • Sensibilisation à la sécurité logicielle et la qualité et intérêt pour la recherche de vulnérabilités : typiquement un code mal organisé sera difficile à maintenir et source de bugs à venir.
  • Maîtrise du français et de l’anglais (lu, écrit et parlé), bonne capacité rédactionnelle.
  • Autonomie et forte capacité d’apprentissage.
  • Capacité à appréhender des problématiques inconnues.

Les connaissances ou expériences suivantes seraient un plus mais non nécessaire et par ordre d’importance:

  • Connaissance et intérêt pour le domaine des blockchains et parachains.
  • Contribution à des projets open source.
  • Participation à des challenges ou CTF.
  • Connaissances de base en cryptographie appliquée (e.g., les algorithmes standards et les bonnes pratiques d’usage et d’implémentation).
  • Connaissances dans le domaine de la désobfuscation.
  • Connaissance des outils et méthodologies d’analyse sur les environnements mobiles (iOS/Android).
  • Connaissances des outils de rétro-ingénierie : IDA, Ghidra, gdb, frida, etc.

Leave a Reply