Posts in Category: Security

Flash Player local trust

Ca arrive souvant de devoir tester en locale un fichier flash en dehors du logiciel d’authoring Flash ou Flex en visualistant soit dans le Standalone Player (Projector) ou avec le plugin d’un navigateur.
Sauf que quand une animation nécéssite à la fois de charger ou lier des éléments local (relatifs) et ditants (absolut avec “http://” ou “https://”) une boite apparait indiquant que animation tente une opération non authorisé.
Tout ça c’est à cause du fait qu’il existe 4 zones (“sandbox”) (voir 5 pour le sytème de sécurité < FP8) :

  • remote
  • local-with-filesystem
  • local-with-networking
  • local-trusted

Par défaut l’export de Flash (et Flex ?) le fichier flash est authorisé seulement à acceder au fichiers locaux (“local-with-filesystem”), configurable dans le panneau d’export de Flash ou en ajoutant un paramètre de compilation pour le FlexSDK (-use-network=true|false) ou après l’export, sur un fichier local en utilisant Flash Local Content Updater ou SWF SandBox Type Switcher. On a alors la possibilité de le configurer soit en “local-with-filesystem” ou “local-with-networking”.
L’animation pourra donc acceder soit aux chemins locaux absolus soit aux chemins locaux relatifs (semblables aux chemins distant relatifs) tel que c:\folder01\folder02\file01.ext ou /folder01/folder02/file01.ext ou file:///C:/folder01/folder02/file01.ext ou encore ./../folder03/file01. La syntaxe est dépendante du system hôte de l’animation flash (préférer un syntaxe de type “file://” ou relatif avec des séparateur “/”).

Seulement c’est soit tout locale soit seulement accès disants. Pour autoriser les deux à la fois, il existe différentes manière de procéder (Overview of permission controls) :

  • Ce rendre sur le Global Security Settings panel (directement) et d’ajouter le chemin local absolu du fichier flash (ou d’un dossier le contenant)
  • Ajouter un fichier .cfg comportant une ligne par chemin d’animation locale authorisé dans le dossier %APPDATA%\Macromedia\Flash Player\#Security\FlashPlayerTrust\ ou {APP_DATA}/Macromedia/Flash Player/#Security/FlashPlayerTrust/
  • Même chose mais pour le chemin %WINDIR%\system32\Macromed\Flash\FlashPlayerTrust\ ou {APP_SUPPORT}/Macromedia/FlashPlayerTrust/

On peut faire à la barbare et utiliser la dernière méthode en ajoutant un fichier qui contient :

# Authorisation pour tout le disque C
C:\
file:///c:/
# Authorisation pour un emplacement Samba
\\ServerSMB\share\
file://///ServerSMB/share/

Chaque enregistrement est mis en chemin Windows (pour IE) et en URI
Ca signifie que tout les flash sur le disque C:\ et sur le réseau \\ServerSMB\share\ ont les droits Trust !

Plus d’informations :

As3Crypto

Package AS3 supportant beaucoup d’algorithmes de cryptage/hashage/sécurité

  • Protocols: TLS 1.0 support (partial)
  • Certificates: X.509 Certificate parsing and validation, built-in Root CAs.
  • Public Key Encryption: RSA (encrypt/decrypt, sign/verify)
  • Secret Key Encryption: AES, DES, 3DES, BlowFish, XTEA, RC4
  • Confidentiality Modes: ECB, CBC, CFB, CFB8, OFB, CTR
  • Hashing Algorithms: MD2, MD5, SHA-1, SHA-224, SHA-256
  • Paddings available: PKCS#5, PKCS#1 type 1 and 2
  • Other Useful Stuff: HMAC, Random, TLS-PRF, some ASN-1/DER parsing

Beaucoup mieux que Adobe Core Lib !

As3Crypto on hurlant.com

[Original] [Web archive] AS3 Crypto sources