反击黑客之对网站攻击者的IP追踪
ip追踪是一件比较难实现的,因为我只有一个ip,而且在没有任何技术支持下对该ip追踪,同时我在公司也没有服务器权限,仅有后台,一般的ip追踪技术分类,反应式ip追踪,主动式的追踪,分享的只是一个过程,提供一个思路我不敢保证每个人都能这样成功利用。
早晨起床上班像往常一样,打开电脑,吃一份早餐,看看i春秋学习技术,在打开公司的网站做一份数据统计,但是今天打开网站的cnzz统计时不向往常那样了,发现显示在今天来路域名中有一个网站看着很熟悉,仔细看清楚这个不是awvs的扫描地址吗?

0×01
很疑问难道有黑客要来黑网站,发现单独一个ip对网站的访问次数是64次,wvs帮他扫描了64,不过这个次数数据有可能不准确,突然想起了在Freebuf里面看过大牛写过“论如何反击用AWVS的黑客”内容相当精彩,但是我这一次是要对这扫描者进行追踪,freebuf那边那篇是故意让黑客来访问他的攻击页面,所以利用不上,不过也是学习了,想看看是谁想要来攻击网站,因为网站多次给扫描了,这不是第一次了,所以不能每次只做防御,也要让这个黑客收手吧!
Cnzz里面有许多的信息可以寻找,而且我们网站也有记录一些信息,今天早上网站的访问量不是很多,找起来也就方便许多,uv 1000个 ip
900多个差不多这样,根据流量趋势中发现了在9点到10点这段时间uv 跟ip
90多个但是PV是800多,分析出这段时间是黑客对网站进行扫描的时间

于是我在明细中,找到了一个可疑的ip,这个ip在这个9-10的时间段,这个ip访问了两百多次,但是仔细看了一下另外这个访问两百多次的ip是我们公司的ip,事实证明了这个不是攻击者的ip,其中还有一个ip在网站点击了100多次,平均是1秒点击3个页面,跳出率是百分之百根据分析是wvs在进行扫描,这个ip就是攻击者的ip。
想到这个ip可能是代理ip可能不是黑客的真实ip,因为公司网站中添加了一些“获取客户端”真实ip防止黑客使用代理访问
参考https://my.oschina.net/geekice/blog/149556 nginx反向代理httpd获取用户真实ip
0×02
公司的网站是jsp这里我就贴上Java的获取真实ip的后端代码,下面了解一下这些代码
public String getClientIP(HttpServletRequest request) {
String ip = request.getHeader("x-forwarded-for");
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
return ip;
}
public String getClientIP (HttpServletRequest request)
得到用户的公网(代理)ip 然后在对用户发起一次http请求
String ip = request.getHeader("x-forwarded-for");
请求获取x-forwarded-for ,x-forwarded-for就是请求获取http访问的真实ip
大致的过程也就是这样来获取,下面的代码是判断ip之类的,这个Java的代码目的也是获取http访问的真实ip,下面的就不做解释了,理解他的主要功能就行
如果想深入了解的可以看看,下面这篇文章,写的很经常,也是写nginx 反向的一些东西
http://www.cnblogs.com/zhengyun_ustc/archive/2012/09/19/getremoteaddr.html

0×03
前面确认攻击者是哪个ip,但是为了保障ip正确我在公司的一些记录里找到了有这个ip来访,那么已经得到了一定的保障这个ip是对的,发现了这个ip来自xx省xx市,那么得到了ip之后接下来是要对这个ip进行定位,在找到这个攻击者的联系方式,我利用了某站的定位测试了一下

定位测试在这一块区域2774米内,为了确保定位测试正确,我使用其他接口再一次定位这个ip,以及用谷歌硬件查询他的经纬度地址,他的ip就在2774米内是最准确的数据


0×04
接下来我要在这块区域找到这个黑客的联系方式,我们每个人必用的社交软件有qq,微信 差不多就这两个是在手机电脑里的,其他的应该比较少,我之前写过一篇,(定位日站大法-之社会工程学)也发在i春秋社区里面,因为这篇文章写的内容也是有一处相关的,这里我也就利用到这篇文章其中一张图片,为了不泄露测试的目标就用一下,使用到的是qq的漫游定位功能,有些人说qq没法定位,因为qq高版本的好像没有了qq漫游定位这个功能,所以先下载16年的版本测试吧。

因为这里我在2000多米的范围内进行定位然后在找到附近的人,然后还要进一步了解,这肯定是要消耗大量时间的,而且需要运气的,因为我是找到的每一个都放入http://www.zhaohuini.com/查找注册过的网站,以及百度搜索这些qq的信息,看看有没有什么重要的确认点没,经过一番查找,查找到了一个qq曾经注册过许多安全类型的论坛,和idc网站

0×05
添加了该qq,对他的空间访问,查看看见了许多挂其他网站的黑连接,黑页之类的,感觉应该是这个人,但是这个人没有发布我们公司网站的记录,因为我们公司的网站是存反射性xss的可能是黑客没有发现漏洞吧!但是wvs扫描器应该会找到这个漏洞的,判断过程中不敢明确是这个人对我们网站扫描,因为我在经纬度定位中定位到了找到了一个这样的人是非常可疑但是“也有可能不是”这个人。
先发出来,因为定位到那边这个qq是在一个中学附近定位到的所以那个中学说不定他们这两个人是同学,暂时不敢确认是这个人,后面我还会继续找这个攻击者的联系方式的,他们的学校官网目前也是关闭状态导致我无法更加深入的去了解。
反击黑客之对网站攻击者的IP追踪的更多相关文章
- 一种基于自定义代码的asp.net网站首页根据IP自动跳转指定页面的方法!
一种基于自定义代码的asp.net网站首页根据IP自动跳转指定页面的方法! 对于大中型网站,为了增强用户体验,往往需要根据不同城市站点的用户推送或展现相应个性化的内容,如对于一些大型门户网站的新闻会有 ...
- Nginx禁止直接通过IP地址访问网站以及限制IP登陆某目录(关闭默认站点或空主机头)
这篇文章主要介绍了Nginx中禁止使用IP访问网站的配置实例,一般在备案时可能需要这种设置,需要的朋友可以参考下 国内因为备案的原因,所有服务器都要禁止使用IP访问网站.否则,如果允许使用IP访问 ...
- Shell 命令行统计 apache 网站日志访问IP以及IP归属地
Shell 命令行统计 apache 网站日志访问IP以及IP归属地 我的一个站点用 apache 服务跑着,积攒了很多的日志.我想用 shell 看看有哪些人访问过我的站点,并且他来自哪里. 因为日 ...
- 新手学黑客攻防-黑客攻击电脑方式和认识IP地址
听说过黑客,没见过黑客,从最基础的开始学习,让我能在互联网中保护自己的隐私安全和信息安全. 黑客攻击电脑方式 黑客攻击的方式多种多样,但常见的只有以下几种,基本上每个黑客都会用到: 网络报文嗅探 网络 ...
- https多网站1个IP多个SSL证书的Apache设置办法
这些天接触了解SSL证书后,写了一篇<申请免费的SSL证书,开通https网站>博文,其中简单记录了Apache的设置,后来又涉及到多个域名.泛域名解析.通配符SSL证书.单服务器/多服务 ...
- 网站每日PV/IP统计/总带宽/URL统计脚本分享(依据网站访问日志)
在平时的运维工作中,我们运维人员需要清楚自己网站每天的总访问量.总带宽.ip统计和url统计等.虽然网站已经在服务商那里做了CDN加速,所以网站流量压力都在前方CDN层了像每日PV,带宽,ip统计等数 ...
- 网站精准查询IP
分享一些网站能精准查询IP的 https://www.chaidu.com/App/Web/IP/ http://www.ipip.net/ip.html http://www.hao7188.com ...
- 扫描网站服务器真实IP的小脚本
#!/usr/bin/env python # -*- coding: gbk -*- # -*- coding: utf_8 -*- # Date: 2015年9月11日 # Author:蔚蓝行 ...
- IIS网站设置禁止IP访问设置方法
本文设置系统为Windows2003.IIS版本是6.0. 打开IIS管理器,在iis管理器左侧单击打开网站下面的相应需要设置的网站,并在此网站上右键,选择属性,即可打开该网站属性进行相关设置. (i ...
随机推荐
- Android实现手机摄像头的自动对焦
如何实现Android相机的自动对焦,而且是连续自动对焦的.当然直接调用系统相机就不用说了,那个很简单的.下面我们主要来看看如如何自己实现一个相机,并且实现自动连续对焦. 代码如下: public c ...
- tensorflow中的kernel/Adam 变量的来源
原因是使用Adam优化函数时,Adam函数会创建一个Adam变量,目的是保存你使用tensorflow创建的graph中的每个可训练参数的动量, words/_word_embeddings:0 bi ...
- Navicat Premium 常用功能讲解
https://www.linuxidc.com/Linux/2016-04/130159.htm Navicat Premium 常用功能讲解 1.快捷键 1.1. F8 快速回到当前对象列表 1. ...
- .NetCore Linux环境下安装InfluxDB以及配置设置
Linux下安装 确定需要安装的版本,我的linux是干净的,所以我需要先安装wget yum -y install wget 下载安装 wget https://dl.influxdata.com/ ...
- CentOS 7.x 安装 Docker
安装之前确保之前没有安装过docker为此首先删除存在的docker程序 sudo yum remove docker \ docker-common \ docker-selinux \ docke ...
- Cname与A记录(Address)区别
Cname与A记录(Address)区别A记录是解析域名到IP,Cname是解析域名到另外一个域名. 一台服务器可以布置多个网站,也可以有多个域名,如如域名A----->A记录-----> ...
- JS实现音乐播放器
JS实现音乐播放器 前 言 最近在复习JS,觉得音乐播放器是个挺有意思的东西,今天就来用我们最原生的JS写一个小小的音乐播放器~ 主要功能: 1.支持循环.随机播放 2.在播 ...
- Git 版本控制管理(一)
Git 是一个分布式版本控制工具,它的作者 Linus Torvalds 是这样给我们介绍 Git —— The stupid content tracker(傻瓜式的内容跟踪器) 关于 Git 的 ...
- [ 转载 ] Http详解2
HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统 | |目录 1引言 2一.HTTP协议详解之URL篇 3二.HTTP协议详解之请求篇 4三.HTTP协议详 ...
- 线上zk节点报org.apache.zookeeper.server.NIOServerCnxnFactory.run(NIOServerCnxnFactory.java:187) at java.lang.Thread.run(libgcj.so.10)
线上zk做配置管理,最近突然发现两个节点一直在刷下边 java.nio.channels.CancelledKeyException at gnu.java.nio.SelectionKeyIm ...