aboutsummaryrefslogtreecommitdiff
path: root/src/getcode.php
diff options
context:
space:
mode:
authorCassio de Campos <cassiopc@gmail.com>2018-08-24 18:49:51 +0000
committerCassio de Campos <cassiopc@gmail.com>2018-08-24 18:49:51 +0000
commit9a5387bd2637cdc9fb0496d094e503e484be10e9 (patch)
treef3066cb67a237f426c5b219ad19a906cb2dffd85 /src/getcode.php
parent3cffb81354aac30059bef53406b6dcb96e262782 (diff)
parente186493a2bd8fef5fc0c7ad47edefbabddb6f0ab (diff)
downloadboca-9a5387bd2637cdc9fb0496d094e503e484be10e9.tar.gz
boca-9a5387bd2637cdc9fb0496d094e503e484be10e9.zip
Merge branch 'develc' of ssh://github.com/cassiopc/boca into develc
Diffstat (limited to 'src/getcode.php')
-rw-r--r--src/getcode.php10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/getcode.php b/src/getcode.php
index 407a00b..677aeeb 100644
--- a/src/getcode.php
+++ b/src/getcode.php
@@ -25,7 +25,13 @@ srand(make_seed());
function myhash($k) {
return hash('sha256',$k);
}
-$iv = "1234567812345678";
+if(!function_exists('openssl_cipher_iv_length')) {
+ MSGError("Encryption error -- php openssl not installed -- contact an admin (" . getFunctionName() .")");
+ LogError("Encryption error -- php openssl not installed -- contact an admin (" . getFunctionName() .")");
+ return "";
+}
+$clen = openssl_cipher_iv_length('aes-256-cbc');
+$iv = substr(myhash(openssl_random_pseudo_bytes($clen)),0,$clen);
if(isset($_GET["name"]) && $_GET["name"] != "" ) {
$name = $_GET["name"];
@@ -46,7 +52,7 @@ if(isset($_GET["name"]) && $_GET["name"] != "" ) {
"chmod 600 /root/submissions/code\n";
if(($str = @file_get_contents("/var/www/boca/src/private/run-past.code")) !== false) $txt .= $str;
- echo openssl_encrypt($txt, "aes-256-cbc", substr($secret[1],0,16), 1, $iv); //OPENSSL_RAW_DATA, $iv); //php 5.4.0
+ echo $iv . ":\n" . openssl_encrypt($txt, "aes-256-cbc", substr($secret[1],0,32), OPENSSL_RAW_DATA | OPENSSL_ZERO_PADDING, $iv); //OPENSSL_RAW_DATA, $iv); //php 5.4.0
@file_put_contents("/var/www/boca/src/private/run-past.log", $name . "|" . $cc . "|" . date(DATE_RFC2822) . "\n", LOCK_EX | FILE_APPEND);
exit;
}