我想向他们发送一个链接到某种PHP或JS页面,至少收集一些关于他们客户端的信息(浏览器,操作系统,可能是ISP的位置?),然后将它们转发到一个实际的网站(像youtube视频或其他东西)。
拥有非常基本的PHP知识,我非常感谢任何可以让我收集一些基本信息的脚本。
谢谢!
答案 0 :(得分:3)
基本的重定向可以很容易地完成(在PHP中,在任何输出之前):
header("Location: http://....");
但是,如果您发送此邮件,他的浏览器将不会在您的虚假页面上加载任何JavaScript或HTML。您仍然可以从$_SERVER superglobal variable收集以下内容:
HTTP_USER_AGENT
- 无论他的浏览器发送了什么标识REMOTE_ADDR
- 他的IP(或服务器代理IP)在PHP中保存数据非常容易。如果你很懒,你可以使用file_put_contents:
file_put_contents("info.txt", print_f($_SERVER, true));
print_f
中的true
会导致函数返回字符串,而不是打印它。
Javascript也可以让您访问有关浏览器的信息。但任何个人信息只能在用户明确允许后才能检索。
然后可以使用以下方式完成重定向:
window.location.href = "http://...";
所以这就是你能得到的:
navigator.userAgent
- 与PHP中的用户代理相同,但我认为这个不能轻易隐藏(有些人安装附加组件来隐藏真正的用户代理)获得用户许可,可以检索到真正有趣的内容:
这是一个复杂的地方:您需要时间将数据从用户的浏览器发送到您的服务器。可能的解决方案:
通常,在加载/发送数据时,javascript发送请求,分配完成和结束时要执行的功能:
//Example of loading next page with AJAX
var req = new XMLHttpRequest();
req.open("POST", "http://...");
//This function will be started after the request finishes
req.onload = function() {
showPage(this.responseText);
}
//The request starts and the javascript thread ends
req.send("page=2");
现在,如果您将用户重定向到其他位置,则可能会停止请求。但是,您可以将请求设置为阻止/同步(或者您可以在请求完成后重定向 ,这可能是怀疑的)
//Example of sending user info synchronously
var req = new XMLHttpRequest();
req.open("POST", "http://...", false);
//Let getuserInfo be function that creates the data
req.send(getUserInfo());
//Redirect when done
window.location = "http://...";
在第二种情况下,浏览器可能会变得没有响应,这实际上不如卡在空白页面上那么可疑。
Read on MDN.不适用于所有浏览器。
我所采用的解决方案不会通过计算机黑客攻击,而是通过社交工程。我会玩他的游戏并最终发现他是谁(前提是我认识现实生活中的那个人)。每个人都有行为和表达的特征。他们假装自己是别人的事实并不像看起来那么重要 实际上,使用计算机用户最好破坏任何计算机安全性。任何其他类型的安全或保密也是如此。
答案 1 :(得分:0)
您可以获取IP和用户代理等信息并将其写入文件。
<?php
$fp = fopen("Output.txt","a");
$visitorIP = addslashes((getenv(HTTP_X_FORWARDED_FOR)) ? getenv(HTTP_X_FORWARDED_FOR) : getenv(REMOTE_ADDR));
$visitorBrowser = addslashes(( $_SERVER['HTTP_USER_AGENT'] ) ? $_SERVER['HTTP_USER_AGENT'] : 'Browser undetectable.');
$User_Info = "IP: " . $visitorIP . "\t\tUser Agent: " . $visitorBrowser . "\n";
fwrite($fp, $User_Info);
header( 'Location: http://REDIRECTURLHERE' ) ;
?>
结果将在名为Output.txt的文件中。从这里你可以得到它