Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php $_F=__FILE__;$_X='P2lCP1ouWg1WDVZIZVlNblplMk0+RlpaXHVPOU1XbjsNVg1WUW5NPm00NzsNVlFuTT..
Decoded Output download
?><?php
namespace App\Models;
use PDO;
use \Core\View;
use \Core\Classes\Flash;
use \Core\Classes\Token;
use \Core\Classes\Chiamate;
/**
* Example user model
*
* PHP version 7.0
*/
class User extends \Core\Model
{
public $ritorno = [];
function __construct($data = []){
$licenze = array_diff( scandir("./licenza"), array(".", "..") );
$rimuovi = './licenza/.DS_Store';
if(ile_exists($rimuovi)){
unlink($rimuovi);
}
if(isset($licenze[2])){
$dettagli['key'] = str_replace('.xml', '', $licenze[2]);
$dettagli['host'] = \App\Config::LINK_HOST;
$mando = url_codifica(\json_encode($dettagli));
$url = "http://licenze.marcodattisi.com/core/licence.php?check=".$mando;
$risultato = \json_decode(ile_get_contents($url), true);
if($risultato['risultato'] != 'ok'){
Flash::AggMex('Attenzione Questo software non ha la licenza', Flash::WARNING, 'No Licenza');
exit(header('Location: /login', true, 303));
}else{
$_SESSION['licenza'] = $licenze[2];
}
}else{
Flash::AggMex('Attenzione Questo software non ha la licenza', Flash::WARNING, 'No Licenza');
}
foreach ($data as $key => $value) {
$this->$key = $value;
}
}
/**
* Get all the users as an associative array
*
* @return array
*/
public function loginUser(){
$actual_link = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https" : "http") . "://$_SERVER[HTTP_HOST]";
//echo password_hash($this->password, password_DEFAULT).'<br />';
$this->ritorno['dati']['email'] = $this->email;
$this->ritorno['dati']['password'] = $this->password;
if($this->validate()){
$ctrl = $this->loginCntrol();
$ctrlPassw = $this->CheckPassword($ctrl->passwordUtente);
}else{
$ctrlPassw = $this->CheckPassword("");
$ctrl = false;
}
if($ctrlPassw){
\session_regenerate_id(true);
foreach ($ctrl as $key => $value) {
// code...
if(!is_array($key) && !is_array($value)){
if($key == 'idUtenteAutoIncrement'){
$token = $this->ricordaLogin($ctrl->$key);
if($token){
setcookie('logedIn', $token, time() + 60 * 60 * 24 * 30);
}
}
$_SESSION[$key] = $ctrl->$key;
}
}
Flash::AggMex('Login avvenuto con successo', Flash::SUCCESS);
header('Location: '.$actual_link, true, 303);
}else{
View::renderTemplate('Login/login.html', $this->ritorno);
}
}
function validate(){
if (filter_var($this->email, FILTER_VALIDATE_EMAIL)) {
return true;
} else {
Flash::AggMex('Immettere una email valida', Flash::INFO);
return false;
}
}
function CheckPassword($psw){
if(password_verify($this->password, $psw)){
return true;
}else{
Flash::AggMex('Password Errata');
return false;
//header('Location: /login', true, 303)
}
}
function loginCntrol(){
$sql = 'SELECT * FROM tbl_utenti INNER JOIN ap_permessi ON tbl_utenti.permessiUtente = ap_permessi.idPermessoAutoIncrement WHERE emailUtente = :email';
$db = static::getDB();
$stmt = $db->prepare($sql);
$stmt->bindValue(':email', $this->email, PDO::PARAM_STR);
$stmt->setFetchMode(PDO::FETCH_CLASS, \get_called_class());
$stmt->execute();
return $stmt->fetch();
}
function controlloUpdate($email, $id)
{
$sql = "SELECT * FROM tbl_utenti WHERE emailUtente = :emailUtente AND idUtenteAutoIncrement != :id";
$db = static::getDB();
$stmt = $db->prepare($sql);
$stmt->bindValue(':emailUtente', $email, PDO::PARAM_STR);
$stmt->bindValue(':id', $id, PDO::PARAM_INT);
$stmt->setFetchMode(PDO::FETCH_CLASS, \get_called_class());
$stmt->execute();
return $stmt->fetch();
}
public function ricordaLogin($idLogin){
$token = new Token();
$scadenza = time() + 60 * 60 * 24 * 30; // equivalente di un mese
$c = new Chiamate();
$token = $token->getHash();
$campiValori = [
'token_hash' => $token,
'utenteIdAutoIncrement' => $idLogin,
'scadenza_at' => date('Y-m-d H:i:s', $scadenza)
];
//$ritorno = $c->salva('ap_ricordaLogin', $campiValori);
if($token){
return $token;
}else{
return false;
}
}
}
Did this file decode correctly?
Original Code
<?php $_F=__FILE__;$_X='P2lCP1ouWg1WDVZIZVlNblplMk0+RlpaXHVPOU1XbjsNVg1WUW5NPm00NzsNVlFuTT5cL096TVw2c019Ow1WUW5NPlwvT3pNXC9XZW5uTW5ccldlbi47DVZRbk0+XC9Pek1cL1dlbm5NblxUT3lNSDsNVlFuTT5cL096TVwvV2Vubk1uXC8uc2VZZT1NOw1WaCoqDVY+Kj5LUmVZWldNPlFuTXo+WU85TVcNVj4qDVY+Kj5tdG0+Y016bnNPSD4xWGENVj4qaA1WMldlbm4+IG5Nej5NUj1NSDluPlwvT3pNXHVPOU1XDVZdDVYNVg1WCVpRPFdzMj4kenM9T3pITz5TPmpkOw1WDVYJQVFIMj1zT0g+X18yT0huPXpRMj0oJDllPWU+Uz5qZCldDVYJCSRXczJNSDVNPlM+ZXp6ZXFfOXNBQSg+bjJlSDlzeigiWGhXczJNSDVlIiksPmV6emVxKCJYIiw+IlhYIik+KTsNVgkJJHpzWVFPY3M+Uz4nWGhXczJNSDVlaFg0cF9wPU96TSc7DVYJCXNBKFxBc1dNX01Sc249bigkenNZUU9jcykpXQ1WCQkJUUhXc0h5KCR6c1lRT2NzKTsNVgkJbA1WCQlzQShzbm5NPSgkV3MyTUg1TWprZCkpXQ1WCQkJJDlNPT1leFdzaid5TXEnZD5TPm49el96TVpXZTJNKCdYUllXJyw+JycsPiRXczJNSDVNamtkKTsNVgkJCSQ5TT09ZXhXc2onLk9uPSdkPlM+XEZaWlwvT0hBc3g6OkkzRUdfdDdwVDsNVgkJCSRZZUg5Tz5TPlF6V18yTzlzQXMyZShcCm5PSF9NSDJPOU0oJDlNPT1leFdzKSk7DVYJCQkkUXpXPlM+Ii49PVo6aGhXczJNSDVNWFllejJPOWU9PXNuc1gyT1loMk96TWhXczJNSDJNWFouWj8yLk0yeVMiWCRZZUg5TzsNVgkJCSR6c25RVz1lPU8+Uz5cCm5PSF85TTJPOU0oXEFzV01feE09XzJPSD1NSD1uKCRRelcpLD49elFNKTsNVgkJCXNBKCR6c25RVz1lPU9qJ3pzblFXPWU9TydkPiFTPidPeScpXQ1WCQkJCXJXZW4uOjpGeHh1TVIoJ0Y9PU1INXNPSE0+d1FNbj1PPm5PQT19ZXpNPkhPSD4uZT5XZT5XczJNSDVlJyw+cldlbi46OntGZ0UzRUMsPidFTz5JczJNSDVlJyk7DVYJCQkJTVJzPSguTWU5TXooJ0lPMmU9c09IOj5oV094c0gnLD49elFNLD5KYUopKTsNVgkJCWxNV25NXQ1WCQkJCSRfcEtwcDM3RWonV3MyTUg1ZSdkPlM+JFdzMk1INU1qa2Q7DVYJCQlsDVYJCWxNV25NXQ1WCQkJcldlbi46OkZ4eHVNUignRj09TUg1c09ITT53UU1uPU8+bk9BPX1lek0+SE9IPi5lPldlPldzMk1INWUnLD5yV2VuLjo6e0ZnRTNFQyw+J0VPPklzMk1INWUnKTsNVgkJbA1WCQlBT3pNZTIuPigkOWU9ZT5lbj4keU1xPlNpPiRjZVdRTSk+XQ1WCQkJJD0uc24taSR5TXE+Uz4kY2VXUU07DVYJCWwNVglsDVY+Pj4+aCoqDVY+Pj4+Pio+Q009PmVXVz49Lk0+UW5Nem4+ZW4+ZUg+ZW5uTzJzZT1zY00+ZXp6ZXENVj4+Pj4+Kg1WPj4+Pj4qPkB6TT1Rekg+ZXp6ZXENVj4+Pj4+KmgNVj4+Pj5aUTxXczI+QVFIMj1zT0g+V094c0ggbk16KCldDVYNVgkJCSRlMj1RZVdfV3NIeT5TPihzbm5NPSgkX3BLZzZLZ2ondFRUbXAnZCk+JiY+JF9wS2c2S2dqJ3RUVG1wJ2Q+U1NTPidPSCc+Pz4iLj09Wm4iPjo+Ii49PVoiKT5YPiI6aGgkX3BLZzZLZ2p0VFRtX3Q3cFRkIjsNVgkJCWhoTTIuTz5aZW5ufU96OV8uZW4uKCQ9LnNuLWlaZW5ufU96OSw+WmVubn1PejlfNEtyRiBJVClYJ0I8ej5oaSc7DVYJCQkkPS5zbi1penM9T3pIT2onOWU9cydkaidNWWVzVydkPlM+JD0uc24taU1ZZXNXOw1WDVYJCQkkPS5zbi1penM9T3pIT2onOWU9cydkaidaZW5ufU96OSdkPlM+JD0uc24taVplbm59T3o5Ow1WDVYJCQlzQSgkPS5zbi1pY2VXczllPU0oKSldDVYNVgkJCQkkMj16Vz5TPiQ9LnNuLWlXT3hzSC9IPXpPVygpOw1WDVYJCQkJJDI9eldtZW5ufT5TPiQ9LnNuLWkvLk0yeW1lbm59T3o5KCQyPXpXLWlaZW5ufU96OSA9TUg9TSk7DVYNVgkJCWxNV25NXQ1WDVYJCQkJJDI9eldtZW5ufT5TPiQ9LnNuLWkvLk0yeW1lbm59T3o5KCIiKTsNVg1WCQkJCSQyPXpXPlM+QWVXbk07DVYNVgkJCWwNVg1WDVYJCQlzQSgkMj16V21lbm59KV0NVg1WCQkJCVxuTW5uc09IX3pNeE1ITXplPU1fczkoPXpRTSk7DVYNVgkJCQlBT3pNZTIuPigkMj16Vz5lbj4keU1xPlNpPiRjZVdRTSk+XQ1WCQkJCQloaD4yTzlNWFhYDVYJCQkJCXNBKCFzbl9lenplcSgkeU1xKT4mJj4hc25fZXp6ZXEoJGNlV1FNKSldDVYNVgkJCQkJCXNBKCR5TXE+U1M+J3M5ID1NSD1NRlE9TzNIMnpNWU1IPScpXQ1WDVYJCQkJCQkJJD1PeU1IPlM+JD0uc24taXpzMk96OWVJT3hzSCgkMj16Vy1pJHlNcSk7DVYNVgkJCQkJCQlzQSgkPU95TUgpXQ1WDVYJCQkJCQkJCW5NPTJPT3lzTSgnV094TTkzSCcsPiQ9T3lNSCw+PXNZTSgpPis+W2E+Kj5bYT4qPmtVPio+SmEpOw1WDVYJCQkJCQkJbA1WDVYJCQkJCQlsDVYNVgkJCQkJCSRfcEtwcDM3RWokeU1xZD5TPiQyPXpXLWkkeU1xOw1WDVYJCQkJCWwNVg1WCQkJCWwNVg1WCQkJCXJXZW4uOjpGeHh1TVIoJ0lPeHNIPmVjY01IUT1PPjJPSD5uUTIyTW5uTycsPnJXZW4uOjpwIC8vS3BwKTsNVg1WCQkJCS5NZTlNeignSU8yZT1zT0g6PidYJGUyPVFlV19Xc0h5LD49elFNLD5KYUopOw1WDVYJCQlsTVduTV0NVg1WCQkJCTZzTX06OnpNSDlNelRNWVpXZT1NKCdJT3hzSGhXT3hzSFguPVlXJyw+JD0uc24taXpzPU96SE8pOw1WDVYJCQlsDVYNVgkJbA1WCQlBUUgyPXNPSD5jZVdzOWU9TSgpXQ1WDVYJCQlzQT4oQXNXPU16X2NleigkPS5zbi1pTVllc1csPnIzSVRLZ182RkkzNEZUS19LdUYzSSkpPl0NVg1WCQkJCT4+ek09UXpIPj16UU07DVYNVgkJCQlsPk1Xbk0+XQ1WDVYJCQkJCXJXZW4uOjpGeHh1TVIoJzNZWU09PU16TT5RSGU+TVllc1c+Y2VXczllJyw+cldlbi46OjNFcjcpOw1WDVYJCQkJPj56TT1Rekg+QWVXbk07DVYNVgkJCQlsDVYNVgkJbA1WDVYJCUFRSDI9c09IPi8uTTJ5bWVubn1PejkoJFpufSldDVYNVgkJCXNBKFplbm59T3o5X2NNenNBcSgkPS5zbi1pWmVubn1PejksPiRabn0pKV0NVg1WCQkJCXpNPVF6SD49elFNOw1WDVYJCQlsTVduTV0NVg1WCQkJCXJXZW4uOjpGeHh1TVIoJ21lbm59T3o5Pkt6emU9ZScpOw1WDVYJCQkJek09UXpIPkFlV25NOw1WCQkJCWhoLk1lOU16KCdJTzJlPXNPSDo+aFdPeHNIJyw+PXpRTSw+SmFKKQ1WCQkJbA1WCQlsDVYNVg1WCQlBUUgyPXNPSD5XT3hzSC9IPXpPVygpXQ1WDVYJCQkkbnZXPlM+J3BLSUsvVD4qPnJnN3U+PTxXX1E9TUg9cz4zRUVLZz44NzNFPmVaX1pNellNbm5zPjdFPj08V19RPU1IPXNYWk16WU1ubnMgPU1IPU0+Uz5lWl9aTXpZTW5uc1hzOW1NellNbm5PRlE9TzNIMnpNWU1IPT57dEtnSz5NWWVzVyA9TUg9TT5TPjpNWWVzVyc7DVYNVgkJCSQ5PD5TPm49ZT1zMjo6eE09NG8oKTsNVg1WCQkJJG49WT0+Uz4kOTwtaVp6TVplek0oJG52Vyk7DVYNVgkJCSRuPVk9LWk8c0g5NmVXUU0oJzpNWWVzVycsPiQ9LnNuLWlNWWVzVyw+bTQ3OjptRmdGdV9wVGcpOw1WDVYJCQkkbj1ZPS1pbk09ck09Mi51TzlNKG00Nzo6cktUL3RfL0lGcHAsPlx4TT1fMmVXV005XzJXZW5uKCkpOw1WDVYJCQkkbj1ZPS1pTVJNMlE9TSgpOw1WDVYJCQl6TT1Rekg+JG49WT0taUFNPTIuKCk7DVYNVgkJbA1WDVYJCUFRSDI9c09IPjJPSD16T1dXTyBaOWU9TSgkTVllc1csPiRzOSkNVgkJXQ1WCQkJJG52Vz5TPiJwS0lLL1Q+Kj5yZzd1Pj08V19RPU1IPXM+e3RLZ0s+TVllc1cgPU1IPU0+Uz46TVllc1cgPU1IPU0+RkU0PnM5ID1NSD1NRlE9TzNIMnpNWU1IPT4hUz46czkiOw1WDVYJCQkkOTw+Uz5uPWU9czI6OnhNPTRvKCk7DVYNVgkJCSRuPVk9PlM+JDk8LWlaek1aZXpNKCRudlcpOw1WDVYJCQkkbj1ZPS1pPHNIOTZlV1FNKCc6TVllc1cgPU1IPU0nLD4kTVllc1csPm00Nzo6bUZnRnVfcFRnKTsNVgkJCSRuPVk9LWk8c0g5NmVXUU0oJzpzOScsPiRzOSw+bTQ3OjptRmdGdV8zRVQpOw1WDVYJCQkkbj1ZPS1pbk09ck09Mi51TzlNKG00Nzo6cktUL3RfL0lGcHAsPlx4TT1fMmVXV005XzJXZW5uKCkpOw1WDVYJCQkkbj1ZPS1pTVJNMlE9TSgpOw1WDVYJCQl6TT1Rekg+JG49WT0taUFNPTIuKCk7DVYJCWwNVg1WCQlaUTxXczI+QVFIMj1zT0g+enMyT3o5ZUlPeHNIKCRzOUlPeHNIKV0NVgkJCSQ9T3lNSD5TPkhNfT5UT3lNSCgpOw1WDVYNVgkJCSRuMmU5TUg1ZT5TPj1zWU0oKT4rPlthPio+W2E+Kj5rVT4qPkphOz5oaD5NdlFzY2VXTUg9TT45cz5RSD5ZTW5NDVYJCQkkMj5TPkhNfT4vLnNlWWU9TSgpOw1WCQkJJD1PeU1IPlM+JD1PeU1ILWl4TT10ZW4uKCk7DVYNVgkJCSQyZVlaczZlV096cz5TPmoNVgkJCQknPU95TUhfLmVuLic+U2k+JD1PeU1ILA1WCQkJCSdRPU1IPU0zOUZRPU8zSDJ6TVlNSD0nPlNpPiRzOUlPeHNILA1WCQkJCSduMmU5TUg1ZV9lPSc+U2k+OWU9TSgnYi1ZLTk+dDpzOm4nLD4kbjJlOU1INWUpDVYJCQlkOw1WDVYJCQloaCR6cz1PekhPPlM+JDItaW5lV2NlKCdlWl96czJPejllSU94c0gnLD4kMmVZWnM2ZVdPenMpOw1WCQkJc0EoJD1PeU1IKV0NVgkJCQl6TT1Rekg+JD1PeU1IOw1WCQkJbE1Xbk1dDVYJCQkJek09UXpIPkFlV25NOw1WCQkJbA1WCQlsDVZsDVY=';$_D=strrev('edoced_46esab');eval($_D('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCdTZ1BPOVlaV0ZLbXF5ZnhjakxKUnp1TTV2TnRzMWIue0I0bkNdaS8yRGwwRWhlQQpbZDg9UXA+VlhvIEh9NkdJdzdrYTNUclU8JywnPVI5b2RtcGxBRVB5azhndls1M3hyTWV6cVpIaTdZaFc8RHNHez5DY1h9MU4vYWZqNl1KdHVTIAouQlVud1ZLTFFPMjBJVEY0YicpOyRfUj1zdHJfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw='));?>
Function Calls
strtr | 1 |
strrev | 1 |
str_replace | 1 |
base64_decode | 2 |
Stats
MD5 | 9e4b5d3767645aecdd3d4ea0ad1a568f |
Eval Count | 2 |
Decode Time | 102 ms |