Je travaille avec un ensemble de retard signé des assemblées que je suis en mesure d'installer et la charge de GAC après avoir sauté la vérification (sn -Vr * ...fichier Snk et retard Signer
Depuis Delaysigning comme un processus nécessite seulement le fichier clé publique
- sn -k keys.snk (les deux & publiques clés privées)
- sn -p keys.snk pkey.snk (seule clé publique)
- Ajouter pkey.snk de projeter des propriétés et cochez 'Signe de retard seulement'
- sn -v (ensemble affiche un retard signé)
- sn -e (extrait pkey)
- fc (pas trouvé diff)
I a constaté que la première 160 bytes of the SNK file is the PKey ... et de repos 436 octets représenter une clé privée. Alors que pour le développement sn-Vr ou sn -R keys.snk (nouvelle paire de clés publique/privée pour remplacer celle avec un delay-signed) devrait suffire, je suis curieux de savoir si extraire la clé publique d'un l'assemblage et l'appairage avec votre propre clé privée fonctionnerait ...
Cela pourrait être un trou de boucle de sécurité potentiel (comme les assemblages sont recherchés avec des jetons de clé publique) ... Pas étonnant qu'il n'y ait pas d'outil intégré dans Framework .Net/SDK qui permet cela.
Existe-t-il un endroit où la structure complète du fichier SNK (format de fichier) est documentée? Cette approche peut-elle fonctionner en général? Qu'est-ce que tu penses?
Quel est exactement le trou de sécurité? Votre description n'est pas claire. – SLaks
J'ai dit "potentiel" ... Pas un expert là-bas ... Haut de ma tête: Vous pourriez prétendre que la clé publique de quelqu'un d'autre est la vôtre ... Et vos jetons de clés publiques correspondraient .. Si j'avais des droits de sécurité assignés/la vérification a sauté en fonction du jeton de clé publique, vous pourriez potentiellement en profiter ... –