Subscribe to RSS
Sascha Cloud Engineer & SysOp
  • HOME
  • BLOG
  • PORTFOLIO
  • ABOUT ME
    • VITA
  • CONTACT
Homepage > Blog > Cloud Engineering > Decrypt easySCP DB password
10. Juli 2015  |  By Sascha Lewandowski In Blog, Cloud Engineering

Decrypt easySCP DB password

Hacks

Ihr kennt vielleicht den Moment, ihr werde angesprochen oder habt selbst das Problem, dass man sein “root” Passwort vom MySQL Server verliert und entwendet – Passiert natürlich nie ;), oder aber ihr migriert von einer anderen Version easySCP.

Wie dem auch sei, wenn ihr nun das Passwort nicht mehr haben solltet und aber trotzdem haben möchtet, dann gibt es hier einen kleinen aber sehr effizienten Trick das verschlüsselte Passwort von easySCP wieder zu entschlüsseln. Dafür benötigt ihr eigentlich nur euren “Key” und eure “IV” welche in der “config_DB.php” stehen, sowie das base64 verschlüsselte Passwort welches man haben möchte. Diese drei Werte müssen danach in dieses Code-Snippet eingefügt werden. Die stellen habe ich euch markiert.

function decrypt_db_password($db_pass) {
  if ($db_pass == '') {
    return '';
  }
  if (extension_loaded('mcrypt')) {

    $text = @base64_decode($db_pass . "\\n");
    $td = @mcrypt_module_open(MCRYPT_BLOWFISH, '', MCRYPT_MODE_CBC, '');
    $key = "<strong>KEY</strong>";
    $iv = "<strong>IV</strong>";

    // Initialize encryption
    @mcrypt_generic_init($td, $key, $iv);
    // Decrypt encrypted string
    $decrypted = @mdecrypt_generic($td, $text);
    @mcrypt_module_close($td);

    // Show string
    return trim($decrypted);

  } else {
    throw new EasySCP_Exception(
    "Error: PHP extension 'mcrypt' not loaded!"
    );
  }
}

echo decrypt_db_password('<strong>base64 PW</strong>');

Diese Datei muss (über den Browser erreichbar) für die Zeit der Abfrage in den Webroot gelegt werden. Ausführen im Browser und schon hat man das Passwort in Klartext vor sich. Die Datei sollte danach wieder gelöscht werden, da nun auch andere über die Datei das Passwort auslesen können.

Was hier gemacht wird ist eigentlich relativ simpel, in der Funktion wird auf die selben Entschlüsselungsalgorythmen zugegriffen, welche auch easySCP nutzt. Hier sind es base64_decode sowie Teile von mcrypt, einer php basierten Verschlüsselung.

Sharing is caring!

0shares
easySCP php

Article by Sascha Lewandowski

I'm Sascha, owner and author here at my own blog. If you want to know more about me and the things I usually do take a look in my "about me". Otherwise take a deeper look at my blogposts. Maybe you will find something interesting for you inside my live as SysOp, linux administrator and cloud engineer.
Next StoryUsing properties in Jenkins scripted pipeline

Comments: no replies

Join in: leave your comment Cancel Reply

(will not be shared)

Ich akzeptiere* Die Checkbox für die Zustimmung zur Speicherung ist nach DSGVO zwingend.

SEARCH

About Me

Sascha Lewandowski

CATEGORIES

  • Blog (7)
    • Cloud Engineering (2)
    • Private (1)
    • Travel (2)

RECENT POSTS

  • 10 Year Challenge and my decision 17. Januar 2019
  • Marriage – We are one 29. Dezember 2018
  • “One date in Prague” 17. November 2018
  • What about traveling? 6. Oktober 2018
  • ReStart / ReBoot / ReSet / ReCreation 3. Oktober 2018

TAG CLOUD

#10yearchallange easySCP Eurowings husband Jenkins marriage php restart Scripted Pipelines wife

About Me

I’m Sascha, a guy from Germany round about 30 years and my profession is informatics technology. You want to find out more about me?

Take a look inside my website, or my vita.

Latest Posts

  • 10 Year Challenge and my decision 17. Januar 2019
  • Marriage – We are one 29. Dezember 2018
  • “One date in Prague” 17. November 2018

Tag Cloud

#10yearchallange easySCP Eurowings husband Jenkins marriage php restart Scripted Pipelines wife

Links

  • HOME
  • CONTACT
  • DATA PRIVACY
  • IMPRINT
  • Katya’ View (rus)
Copyright ©2018 Sascha Lewandowski

you're currently offline

WP DSGVO Tools (GDPR) for Wordpress and WooCommerce Wir verwenden Cookies, um Ihnen das beste Nutzererlebnis bieten zu können. Wenn Sie fortfahren, diese Seite zu verwenden, nehmen wir an, dass Sie damit einverstanden sind. OK Ablehnen