Beispiel #1
0
 mysqli_query($dbTmp, "CREATE TABLE IF NOT EXISTS `" . $_SESSION['tbl_prefix'] . "export` (\n                `id` int(12) NOT NULL,\n                `label` varchar(255) NOT NULL,\n                `login` varchar(100) NOT NULL,\n                `description` text NOT NULL,\n                `pw` text NOT NULL,\n                `path` varchar(255) NOT NULL\n                ) CHARSET=utf8;");
 //CLEAN UP ITEMS TABLE
 $allowedTags = '<b><i><sup><sub><em><strong><u><br><br /><a><strike><ul>' . '<blockquote><blockquote><img><li><h1><h2><h3><h4><h5><ol><small><font>';
 $cleanRes = mysqli_query($dbTmp, "SELECT id,description FROM `" . $_SESSION['tbl_prefix'] . "items`");
 while ($cleanData = mysqli_fetch_array($cleanRes)) {
     mysqli_query($dbTmp, "UPDATE `" . $_SESSION['tbl_prefix'] . "items`\n                    SET description = '" . strip_tags($cleanData['description'], $allowedTags) . "' WHERE id = " . $cleanData['id']);
 }
 //Encrypt passwords in log_items
 $resTmp = mysqli_fetch_row(mysqli_query($dbTmp, "SELECT COUNT(*) FROM " . $pre . "misc\n                    WHERE type = 'update' AND intitule = 'encrypt_pw_in_log_items'\n                    AND valeur = 1"));
 if ($resTmp[0] == 0) {
     // AES Counter Mode implementation
     require_once '../includes/libraries/Encryption/Crypt/aesctr.php';
     $tmpRes = mysqli_query($dbTmp, "SELECT * FROM " . $pre . "log_items\n                    WHERE action = 'at_modification' AND raison LIKE 'at_pw %'");
     while ($tmpData = mysqli_fetch_array($tmpRes)) {
         $reason = explode(':', $tmpData['raison']);
         $text = Encryption\Crypt\aesctr::encrypt(trim($reason[1]), $_SESSION['encrypt_key'], 256);
     }
     mysqli_query($dbTmp, "INSERT INTO `" . $_SESSION['tbl_prefix'] . "misc`\n                    VALUES ('update', 'encrypt_pw_in_log_items',1)");
 }
 // Since 2.1.17, encrypt process is changed.
 // Previous PW need to be re-encrypted
 if (@mysqli_query($dbTmp, "SELECT valeur FROM " . $_SESSION['tbl_prefix'] . "misc\n                WHERE type='admin' AND intitule = 'encryption_protocol'")) {
     $tmpResult = mysqli_query($dbTmp, "SELECT valeur FROM " . $_SESSION['tbl_prefix'] . "misc\n                    WHERE type='admin' AND intitule = 'encryption_protocol'");
     $tmp = mysqli_fetch_row($tmpResult);
     if ($tmp[0] != "ctr") {
         //count elem
         $res = mysqli_query($dbTmp, "SELECT COUNT(*) FROM " . $_SESSION['tbl_prefix'] . "items\n                        WHERE perso = '0'");
         $data = mysqli_fetch_row($res);
         if ($data[0] > 0) {
             echo '$("#change_pw_encryption, #change_pw_encryption_progress").show();';
             echo '$("#change_pw_encryption_progress").html(' . '"Number of Passwords to re-encrypt: ' . $data[0] . '");';
function prepareExchangedData($data, $type)
{
    if ($type == "encode") {
        if (isset($_SESSION['settings']['encryptClientServer']) && $_SESSION['settings']['encryptClientServer'] == 0) {
            return json_encode($data, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP);
        } else {
            return Encryption\Crypt\aesctr::encrypt(json_encode($data, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP), $_SESSION['key'], 256);
        }
    } elseif ($type == "decode") {
        if (isset($_SESSION['settings']['encryptClientServer']) && $_SESSION['settings']['encryptClientServer'] == 0) {
            return json_decode($data, true);
        } else {
            return json_decode(Encryption\Crypt\aesctr::decrypt($data, $_SESSION['key'], 256), true);
        }
    }
}
Beispiel #3
0
function prepareExchangedData($data, $type)
{
    //Load AES
    $aes = new SplClassLoader('Encryption\\Crypt', '../includes/libraries');
    $aes->register();
    if ($type == "encode") {
        if (isset($_SESSION['settings']['encryptClientServer']) && $_SESSION['settings']['encryptClientServer'] == 0) {
            return json_encode($data, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP);
        } else {
            return Encryption\Crypt\aesctr::encrypt(json_encode($data, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP), $_SESSION['key'], 256);
        }
    } elseif ($type == "decode") {
        if (isset($_SESSION['settings']['encryptClientServer']) && $_SESSION['settings']['encryptClientServer'] == 0) {
            return json_decode($data, true);
        } else {
            return json_decode(Encryption\Crypt\aesctr::decrypt($data, $_SESSION['key'], 256), true);
        }
    }
}
Beispiel #4
0
        $return .= 'DROP TABLE ' . $table . ';';
        $row2 = mysqli_fetch_row(mysqli_query($link, 'SHOW CREATE TABLE ' . $table));
        $return .= "\n\n" . $row2[1] . ";\n\n";
        for ($i = 0; $i < $num_fields; $i++) {
            while ($row = mysqli_fetch_row($result)) {
                $return .= 'INSERT INTO ' . $table . ' VALUES(';
                for ($j = 0; $j < $num_fields; $j++) {
                    $row[$j] = addslashes($row[$j]);
                    $row[$j] = preg_replace('/\\n/', '/\\n/', $row[$j]);
                    if (isset($row[$j])) {
                        $return .= '"' . $row[$j] . '"';
                    } else {
                        $return .= '""';
                    }
                    if ($j < $num_fields - 1) {
                        $return .= ',';
                    }
                }
                $return .= ");\n";
            }
        }
        $return .= "\n\n\n";
    }
    if (!empty($settings['bck_script_key'])) {
        $return = Encryption\Crypt\aesctr::encrypt($return, $settings['bck_script_key'], 256);
    }
    //save the file
    $handle = fopen($settings['bck_script_path'] . '/' . $settings['bck_script_filename'] . '-' . time() . '.sql', 'w+');
    fwrite($handle, $return);
    fclose($handle);
}