Короче говоря, я создаю приложение для самостоятельного размещения, и для создания средства сдерживания базового уровня, которое не позволит тем, кто обладает небольшими знаниями в области разработки (например, мой целевой рынок), удалять обратные вызовы, я решил используйте eval()
и base64_decode()
для того, чтобы запутать и выполнить несколько строк кода - особенно те, которые имеют дело с проверкой лицензионного ключа пользователя.
Проблема, с которой я столкнулся, заключается в том, что мне кажется, что я не могу запустить eval(base64_decode(..));
внутри функции.
Например, это прекрасно работает:
eval(base64_decode('c2Vzc2lvbl9uYW1lKCJfaW5zdCIpOyBzZXNzaW9uX3N0YXJ0KCk7ICRfU0VTU0lPTlsna2V5J10gPSB0cnVlOyBlY2hvICI8c2NyaXB0IHR5cGU9XCJ0ZXh0L2phdmFzY3JpcHRcIj53aW5kb3cubG9jYXRpb24gPSAnL2luc3QvYWRtaW4vc2V0dGluZ3MnPC9zY3JpcHQ+Ijs=');
выполняет следующее,
session_name("_inst");
session_start();
$_SESSION['key'] = true;
echo "<script type=\"text/javascript\">window.location = '/inst/admin/settings'</script>";
Но это, с другой стороны, не удается:
function escapeOut() {
eval(base64_decode('c2Vzc2lvbl9uYW1lKCJfaW5zdCIpOyBzZXNzaW9uX3N0YXJ0KCk7ICRfU0VTU0lPTlsna2V5J10gPSB0cnVlOyAkZXNjYXBlID0gICI8c2NyaXB0IHR5cGU9XCJ0ZXh0L2phdmFzY3JpcHRcIj53aW5kb3cubG9jYXRpb24gPSAnL2luc3QvYWRtaW4vc2V0dGluZ3MnPC9zY3JpcHQ+IjsgcmV0dXJuICRlc2NhcGU7'));
}
echo escapeOut();
должно выполнить следующее,
session_name("_inst");
session_start();
$_SESSION['key'] = true;
$escape = "<script type=\"text/javascript\">window.location = '/inst/admin/settings'</script>";
return $escape;
Сначала я не возвращал $escape
, но после осознания и устранения этой проблемы я в тупике. Это, наверное, что-то довольно простое, но я довольно озадачен.
Будем весьма благодарны за любые ответы о том, почему это не работает / что я могу сделать, чтобы это работало!