使用PHP/JavaScript链接获取有关站点访问者的信息

使用PHP/JavaScript链接获取有关站点访问者的信息,javascript,php,phishing,data-harvest,Javascript,Php,Phishing,Data Harvest,有人想欺骗我,他们假装是我的一个密友来羞辱我们两个。此人创建了一个伪造的电子邮件帐户,冒充此人,并试图从我这里获取个人信息。我和我的朋友确认了那不是他,现在我们想弄清楚那是谁 我想给他们发送一个指向某种PHP或JS页面的链接,收集至少一点关于他们客户机的信息(浏览器、操作系统,可能是ISP位置?),然后将它们转发到实际的网站(比如youtube视频或其他东西) 有了PHP的基本知识,我真的很感激任何能让我收集一些基本信息的脚本 谢谢大家! 您可以获取一些信息,如IP和用户代理,并将其写入文件 &

有人想欺骗我,他们假装是我的一个密友来羞辱我们两个。此人创建了一个伪造的电子邮件帐户,冒充此人,并试图从我这里获取个人信息。我和我的朋友确认了那不是他,现在我们想弄清楚那是谁

我想给他们发送一个指向某种PHP或JS页面的链接,收集至少一点关于他们客户机的信息(浏览器、操作系统,可能是ISP位置?),然后将它们转发到实际的网站(比如youtube视频或其他东西)

有了PHP的基本知识,我真的很感激任何能让我收集一些基本信息的脚本


谢谢大家!

您可以获取一些信息,如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的文件中。在这里,您可以使用它重新创建PHP: 数据检索 基本重定向可以很容易地完成(在PHP中,在任何输出之前):

但是,如果您发送此消息,他的浏览器将不会在您的假页面上加载任何javascript或HTML。您仍然可以从以下站点收集:

  • HTTP\u USER\u AGENT
    -浏览器发送的任何内容都作为其标识
  • 远程地址
    -他的IP(或服务器代理IP)
这是全部

数据保存 用PHP保存数据非常容易。如果您懒惰,您可以只使用文件内容:

file_put_contents("info.txt", print_f($_SERVER, true));
中的
true
导致函数返回字符串,而不是打印字符串

Javascript 数据检索 Javascript还允许您访问有关浏览器的信息。但任何个人信息只有在用户明确允许后才能检索

然后,可以使用以下方法进行重定向:

window.location.href = "http://...";
这就是你能得到的:

未经允许
  • -与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");
现在,如果您将用户重定向到其他地方,请求可能会停止。但是,您可以将请求设置为阻塞/同步(或者在请求完成后重定向,这可能是可疑的)

在第二种情况下,浏览器可能会变得无响应,这实际上比停留在空白页面上更加可疑

导航器发送信标 不适用于所有浏览器

心理学 我选择的解决方案不是通过电脑黑客,而是通过社会工程。我会玩他的游戏,最终发现他是谁(只要我了解现实生活中的那个人)。每个人都有自己的行为和表情特征。他们假装自己是别人的事实并不像看上去那么重要。

事实上,任何计算机的安全性最好是使用计算机用户来破坏。任何其他类型的安全或保密也是如此。

使用
HTTP\u X\u FORWARDED\u for
是一些网站无法查明谁对其进行了黑客攻击的原因。当然,不是一个毫无戒心的用户。当然,如果有人想欺骗他们的IP、用户代理或推荐人,他们很容易做到。但是一个毫无戒心的用户不会改变它。两个错误并不等于一个正确。但是,如果你不主持一个网站并检查Apache日志,那就容易多了。如果这个问题会危及你的身份,我会联系当局。
//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://...";