Hybrid Backup Sync Decipher

Edit du 23/01/2019 : l’outil se trouve ici sur GitHub et son suivi s’effectue désormais là-bas. Je laisse cette page pour historique.


Je propose un outil en JAVA pour déchiffrer en local les fichiers envoyés par Hybrid Backup Sync de QNAP™ vers les providers en ligne comme Dropbox ou OneDrive, à l’aide du mot de passe choisi sur le NAS. Actuellement il faut repasser par le NAS pour les ouvrir (ce qui n’est pas bon pour les cas de casses, vols, …) donc il faut un outil autonome, mais QNAP™ n’en fournis pas encore.
Je l’ai développé dans le but d’avoir un outil : léger (< 1 Mo), rapide (<3s pour 300Mo sur ma machine), le plus universel possible, open source, avec un minimum de dépendances.

Je ne pourrais pas être tenu responsable des éventuels dommages, cet outil est fournis en open source et sans garantie.

License:
Outil sous licence GNU version 3.

Description:
Premièrement, ce programme N’EST PAS supporté par QNAP Systems Inc™.
Il s’agit d’un outil pour déchiffrer les fichiers envoyés par Hybrid Backup Sync vers les providers en ligne (Dropbox, …).
Il ne s’agit PAS d’un outil de hacking, il est nécessaire de connaitre le mot de passe utilisé, celui-ci est demandé.
Deux exécutables sont fournis, en ligne de commande ou avec UI, pour des utilisations à la fois en script et par l’utilisateur.
A la fin de chaque déchiffrement, le hash (ou la taille) des fichiers clairs est comparé aux originaux clairs pour vérifier la bonne procédure.

Compatibilité:
En tant que programme JAVA, la compatibilité est large, du moment que une JRE7+ est installée.

Requis:
– Un OS récent. x86 et x64 supportés.
– Oracle JAVA JRE 7+,:
http://www.oracle.com/technetwork/java/index.html
ou OpenJDK 7+:
http://openjdk.java.net/

–  ****** Déprécié après JAVA update 151 ******
– Unlimited JCE policy pour JAVA selon version,ici:
JAVA 7 : http://www.oracle.com/technetwork/java/ … 32124.html
JAVA 8 : http://www.oracle.com/technetwork/java/ … 33166.html
ATTENTION: Après chaque update JAVA la policy doit être réappliquée (c’est un copié/collé à faire).

–  ************

– Testé sur Windows 10 64bits, CentOS 6 32 bits, Oracle JRE 7 et Oracle JRE 8

NOTE IMPORTANTE POUR LES UTILSATEURS MAC AVANT JAVA UPDATE 151 :
– Utilisez Ctrl+C/Ctrl+V pour copier/coller le mot de passe, Command ne marche pas.
– Pour les JCE il y a 2 emplacements :
JRE: /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/jre/lib/security
JDK: /Library/Java/JavaVirtualMachines/jdk1.x.x_xxx.jdk/Contents/Home/jre/lib/security

Utilisation:
Déjà il faut récupérer vos fichiers en local depuis le provider en ligne.

En ligne de commande:
1. Allez dans le répertoire de l’outil
2. Utilisé la ligne :
java -jar hybrid_backup_sync_decipher_XXX.jar -i CHEMIN_FICHIER_CHIFFRE -o CHEMIN_FICHIER_CLAIR (où XXX est la version courante).
Le mot de passe sera ensuite demandé, à moins de le passer directement avec l’option ‘-p’ en paramètre. Un mode verbose est possible avec ‘-v’.

Avec UI :
1. Allez dans le répertoire de l’outil
2. Utilisé la ligne :
java -jar hybrid_backup_sync_decipher_XXX_gui.jar (ou lancer depuis votre explorateur)
3. Choisir la source chiffrée et la destination claire
4. Cliquer pour déchiffrer.
5. Un pop-up fournira le résultat, plus d’informations dans le fichier HBSUtility_report.txt dans le repertoir de destination.

Note : Il est possible de déchiffrer un dossier.
Si un dossier est choisi en source, la destination doit aussi être un dossier.
Si un dossier est choisi en destination mais pas pour la source, un fichier du même nom sera crée dans le dossier de destination.
Si un même dossier est choisi en destination et en source, un fichier du même nom sera crée dans le dossier de destination avec un préfix « plain_ ».

Lien :

Changelog :

1.4.2 :
– Correction compatibilité JAVA 7
Améliorations scripts

1.4.1 :
Possibilité de lancer l’IHM  redimensionnable avec l’option « r » ou accompagnée d’un fichier « resizeEnable »
Mise à jour des libs Apache Commons

1.4 :
Support du mode « Chiffrement + Compression » dans HBS.

1.3.2 :
– Ajout d’un mode récursif pour déchiffrer une arborescence (à utiliser avec précautions !) et quelques améliorations de la version GUI.

1.2 :
Ne dépend plus de l’installation manuelle des fichiers JCE si JAVA update 151 est installé.

1.1 :
– Correction d’un soucis sur la détection des fichiers HBS sur les systèmes Unix (soucis d’encodage) depuis HBS 2.1

1.0 :
– Compatible avec le nouveau moteur cloud de la version HBS 2.1.
RC4 :
– Fix pour la taille de fenêtres sur écrans à hautes résolutions (taille de fenêtre désormais calculée, 1/2 de la largeur, 1/2 de la hauteur)
RC3 :
– Fix pour l’écrasement d’un fichier en place (renomme avec plain_ la sortie)
RC2 :
-Première version publique