Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
sass-king — Ingénierie inverse du dictionnaire d'instructions NVIDIA SASS, audits de noyaux et reconnaissance de motifs à travers les architectures GPU. | Kitploit
Outils/GitHubGitHub/florianmattana/sass-king
Sécurité des Systèmes EmbarquésAnalyse StatiqueAnalyse de CodeRétro-ingénierieSécurité MatérielleSécurité Matériel et IoTAnalyse de BinairesArticles et RechercheApprentissage et ÉducationRessources OrganiséesAnalyse de Micrologiciel
3171559il y a 4 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
GitHubflorianmattana/sass-king

sass-king

Ingénierie inverse du dictionnaire d'instructions NVIDIA SASS, audits de noyaux et reconnaissance de motifs à travers les architectures GPU.

Voir le dépôtSite web

Logo SASS King

SASS King

Rétro-ingénierie du SASS NVIDIA, des kernels contrôlés aux audits de production.

Article 1 · Article 2 · Base de connaissances · Bibliothèque de motifs · Glossaire des instructions SM120 · Notes sur l'encodage · Commencez ici · Structure du projet · Chapitres sur les tensor-cores · Contribuer

Architecture Statut Licence

SASS King est un projet systématique de rétro-ingénierie du SASS NVIDIA, le jeu d'instructions natif du GPU émis dans les binaires CUDA compilés. Le projet commence avec le matériel Blackwell grand public SM120 / SM120a et s'étend progressivement vers une bibliothèque complète d'ISA et de motifs multi-architectures.

L'objectif est pratique : aider un ingénieur de kernel à ouvrir un dump SASS, reconnaître les motifs du compilateur, identifier les structures pertinentes pour la performance, et relier le binaire aux décisions d'optimisation au niveau du source.

Le projet a terminé sa phase initiale de bibliothèque de motifs Phase 3 : 29 signatures SASS réutilisables sont maintenant formalisées sous patterns/, avec knowledge/FINDINGS.md conservé comme la trace complète des preuves. La prochaine étape majeure est la Phase 4 : appliquer ces motifs à des kernels de production réels.

Navigation rapide

Si vous voulez...Commencez iciPuis lisez
Comprendre le projet en 10 minutesdocs/README.mddocs/START_HERE.md, puis docs/PROJECT_STRUCTURE.md
Reproduire les preuvescorpus/README.mdun chapitre conclusion*.md, puis son dump .sass
Trouver la source de véritéknowledge/FINDINGS.mdknowledge/SASS_INSTRUCTIONS_SM120.md, knowledge/encoding/README.md
Reconnaître un motif dans un nouveau dumppatterns/README.mdla page patterns/NN-*.md correspondante
Démarrer un audit de productionproduction/README.mdles pages PATTERN-NN correspondantes et les preuves sources
Contribuer une correction ou un dumpCONTRIBUTING.mddocs/START_HERE.md

Le dépôt est organisé comme un pipeline de preuves :

corpus/      kernels contrôlés et preuves SASS brutes
knowledge/   découvertes à l'échelle du projet, notes d'instructions et notes d'encodage
patterns/    signatures d'audit réutilisables de la Phase 3
production/  audits de kernels réels de la Phase 4

Pourquoi cela existe

Le dernier grand travail public de rétro-ingénierie SASS comparable en esprit a été celui de Jia et al. sur Volta et Turing en 2018. Ampere, Hopper et Blackwell ont considérablement modifié le mélange d'instructions : chemins de copie asynchrones, familles de tensor-cores, instructions de chargement/stockage de matrices, formes MMA éparses et à échelle, et nouveaux flux de registres uniformes.

SASS King comble cette lacune en combinant des micro-kernels contrôlés, la lecture brute du SASS, des sondes d'exécution et des audits de kernels de production.

État actuel

DomaineStatutOù
Kernels pédagogiques SM120Terminés, kernels 01-12corpus/basics/01_vector_add/ à corpus/math_and_spills/12_register_spill/
Études sur les tensor-coresTerminées, jusqu'au Kernel 25corpus/tensor_cores/
Découvertes globalesSource de vérité activeknowledge/FINDINGS.md
Glossaire des instructions SM120Actif, basé sur des preuvesknowledge/SASS_INSTRUCTIONS_SM120.md
Pilotes d'encodageCommencé avec LDSM, STSM, QMMAknowledge/encoding/
Validation croisée denvdisPremier passage terminé ; des lacunes dans les codes de contrôle subsistentknowledge/DENVDIS_INTEGRATION.md
Bibliothèque de motifsBibliothèque initiale de la Phase 3 terminéepatterns/
Audits de productionPhase suivanteproduction/

Livrable de la Phase 3

La bibliothèque formelle de motifs est le principal résultat de la Phase 3. Elle transforme les preuves locales des chapitres en signatures d'audit réutilisables, afin qu'un audit puisse citer un motif nommé au lieu de réécrire la piste de recherche complète à chaque fois.

La Phase 3 est considérée comme terminée parce que :

  • les structures répétées trouvées dans les chapitres 01-25 ont été promues dans 29 pages de motifs nommés ;
  • chaque motif a une explication en anglais simple, une signature SASS, des variantes, des anti-motifs, des lacunes ouvertes et un niveau de confiance ;
  • les étiquettes de revendication restent liées aux preuves sources dans knowledge/FINDINGS.md ;
  • la navigation orientée audit commence maintenant depuis patterns/README.md ;
  • les éléments non résolus sont explicitement reportés comme des lacunes plutôt que d'être cachés dans le texte du motif.
Famille de motifsExemplesOù
Calcul des tensor-coresChaînes d'accumulateurs HMMA, QMMA, OMMA ; métadonnées éparses ; fragments étroitspatterns/02-* à patterns/04-*, patterns/10-*, patterns/21-*
Mémoire matricielle et épiloguesLDSM, STSM, pipelines de copie asynchrone, épilogues de réduction REDGpatterns/05-*, patterns/06-*, patterns/07-*, patterns/28-*
Flux de contrôledivergence/reconvergence, back-edges de boucle, sorties prédicatées, pièges froids, CALLs locauxpatterns/08-*, patterns/14-*, patterns/16-*, patterns/26-*, patterns/29-*
Mémoire et registresmémoire globale vectorisée, débordements, mise en mémoire tampon de la mémoire partagée, descripteurs, flux de registres uniformespatterns/09-*, patterns/11-*, patterns/17-*, patterns/19-*, patterns/20-*
Arithmétique et ordonnancementFusion FFMA, constantes, chemins lents MUFU, scoreboards, recyclage de durée de viepatterns/12-*, patterns/18-*, patterns/22-*, patterns/23-*, patterns/24-*
Collectifs warpréductions warp, shuffle/vote/match/sync primitivespatterns/01-*, patterns/25-*

Chaque page de motif comprend :

  • signification en anglais simple ;
  • signature SASS ;
  • variantes observées ;
  • limites d'interprétation ;
  • anti-motifs ;
  • lacunes ouvertes ;
  • niveau de confiance.

Utilisez patterns/README.md comme index orienté audit. Utilisez knowledge/FINDINGS.md lorsque vous avez besoin du contexte de recherche plus long derrière un motif.

Télécharger l’outil