教材知识学习
第三章 网络信息收集技术
网络信息收集概述
安全缺陷和漏洞会存在于构成目标信息系统的三大核心元素——人、网络与主机系统中,包括管理上的安全缺陷与漏洞、网络协议安全缺陷与漏洞、系统安全缺陷及漏洞,这些安全缺陷和漏洞的信息是攻击者信息收集的重点。
网络踩点:web 搜索与挖掘、DNS 和 IP 查询、网络拓扑侦察
网络扫描:主机扫描、端口扫描、系统类型探查、漏洞扫描
网络查点:旗标抓取、网络服务查点
课后作业
使用 nmap 扫描Windows靶机
获取目标服务器开放的服务
获取目标服务器操作系统
使用 Nessus 扫描Windows靶机
首先进入网页新建规则,创建规则名字
点击下一步
选择性的开启扫描的插件,然后点击下一步
点击提交,完成规则的创建
填写扫描任务名称和靶机地址
进行开始扫描,扫描完成后,在report下可看到扫描完成的结果,及扫描的详细信息
kali视频教程
kali信息收集之主机探测
1.使用 netenum 对c段扫描,首先获得测试IP地址,以网易为例
netenum 是一个IP段生成的工具,列出一个所有的IP地址信息,为了方便生成一个列表,然后重新下到一个文件里,放到test里,
也可以用来测试目标主机数在线,比如```ping 163.com```,测试这个网段有哪些主机数在线,这样获取的是一个IP段,ping是测试数的联通,
总结:netenum,如果对方有防火墙,将无法探测。
2.使用fping进行C段主机在线扫描
fping -h
可以查看其使用说明,说明如下:
总结:fping好用一些,把可达的与不可达的列出。
3.使用nbtscan扫描内网,借助NetBIOS服务获取一定信息
输入nbtscan,可看出扫描了整个C段
4.使用ARPing探测MAC地址
arping主要是得到Mac地址,依赖arping协议来判断的。
5.使用Netdiscover探测内网信息
6.使用dmitry获取目标详细信息,能收集关于主机的很多信息,包括whois、tcp port等,使用非常方便,作为前期的信息收集非常有用也很简单。
7.对测试目标进行WAF探测。
8.使用LBD(load balancing detector,负载平衡检测器)工具,其检测机制基于DNS解析、HTTP头(服务器和日期),从中找到服务器应答之间的差异。可以帮助发现多个IP地址映射到单个域名,并由此确定针对性的测试(如 DDOS)范围。
kali 信息搜集之主机扫描
通过主机探测,确定测试目标地址后,往往需要对主机信息做更完整的扫描。
1.普通简单扫描
Nmap 会默认发送一个arp的ping数据包,探测目标主机在1-10000范围内所开放的端口。
加入 -vv操作可以对扫描结果做出详细输出
例如扫描目标主机1-998 号端口 nmap -p1-998
nmap -p80.443.22.21.8080.25.53 扫描指定端口
nmap -sP 对目标进行ping扫描(测试是否在线),s是一种扫描的模式
nmap -traceroute 使用nmap进行路由跟踪
nmap -sP 扫描一个 C 段的主机在线状况
nmap -o 操作系统探测
nmap -A 万能开关扫描
kali 信息搜集之指纹识别
1.Banner 抓取介绍
可以使用telnet命令链接端口进行探测,如: Telnet
2.常规主动指纹识别工具
nmap自身就提供了很丰富的指纹探测功能,-sV 参数可以主动探测开放端口的服务版本信息。
如图所示: -pn 不进行ping操作,扫描方式是stcp扫描,-sV 是查看版本信息,端口号,目标地址。
也可用 xprobe2 +目标地址,进行指纹识别。缺点:对现在新系统准确率较低。
3.被动指纹识别工具
p0f 在网络分析方面功能强大,可以用它来分析NAT、负载均衡、应用代理等
4.WEB 指纹识别工具
使用whatweb可探测应用版本等以下信息:
kali 信息搜集之协议分析
SMB分析:acccheck、nbt scan等;
SMTP分析:nmap、smtp-user-enum(枚举用户名,可以判断服务器有哪些邮箱)、swaks(尝试借助使用指定的sever给某些人发测试邮件);
SNMP分析:SNMP enumerator 直接测试开关SNMP协议的ip地址;
SSL分析
可以得到证书的公钥信息及其他详细信息,如图所示:
wireshark分析
kali 漏洞分析之 openVAS 安装
上周作业中,镜像更新失败,所以这周决定一定把遗留问题解决。
最开始更新源总是失败,显示如图:
之后在网上查找资料,说是需要更新软件包,可还是相同问题,显示不成功。
在查找的其他博客内容,根据上面的提示,我查看了apt-secure(8)——>命令man 8 apt-secure
首先阅读一下apt-secure的描述,读完之后我们可以知道,之所以一直更新不成功,是因为没有签名或者是有签名但是apt没有对应的key的package是不被信任的,安全起见,默认是不会采用这种源来进行更新的
继续往下阅读
第二段的标题正是没有签名的仓库,这正是我们需要的说明
You can force all APT clients to raise only warnings by setting the configuration option Acquire::AllowInsecureRepositories to true.
这句话就是解决问题的关键,虽然国内的源没有签名,或者签名过期(失效),但是我们可以强制apt进行更新,忽略仓库的安全性,而想要达到这个目的,我们就需要对APT的配置文件进行修改
我搜索了apt.conf这个关键字,但相关网页都是英文的,硬着头皮读完之后发现我的kali中并没有apt.conf文件,在我的/etc/apt目录下,只有一个apt.conf.d目录,cd进该目录:
根据网上提示,我打开了70debconf文件,按照前面其他人博客指导,在里面输入了Acquire::AllowInsecureRepositories “true”
;
然后执行apt-config dump
,查看apt的对应配置有无生效
Acquire::AllowInsecureRepositories的属性值由最初的”0”变成了”true”
说明更改配置成功,然后敲入apt-get update && apt-get upgrade
,之后显示如下:
在安装过程中,不成功,输入openvas-check-setup
,在fix中显示
You should start the redis-server or configure it to listen on socket: /tmp/redis.sock(您应该启动redisserver或将其配置为监听套接字:/tmp/redis.sock。)
所以我又对Redis进行了安装与配置
root@kali:~# wget http://download.redis.io/releases/redis-2.8.3.tar.gz
root@kali:~# tar xzf redis-2.8.3.tar.gz
root@kali:~# cd redis-2.8.3
root@kali:~/redis-2.8.3# make
把四个可执行文件拷贝到一个目录下
root@kali:~/redis-2.8.3# cd src
root@kali:~/redis-2.8.3/src# mkdir /usr/redis
root@kali:~/redis-2.8.3/src# cp redis-server /usr/redis
root@kali:~/redis-2.8.3/src# cp redis-benchmark /usr/redis
root@kali:~/redis-2.8.3/src# cp redis-cli /usr/redis
root@kali:~/redis-2.8.3/src# cd ..
root@kali:~/redis-2.8.3# cp redis.conf /usr/redis
root@kali:~/redis-2.8.3# cd /usr/redis
启动Redis服务
root@kali:/usr/redis# redis-server redis.conf
为了能够让服务进程在后台执行,对配置文件redis.conf做如下修改:
root@kali:/usr/redis# vim redis.conf
daemonize yes
按ESC键 输入 :wq
测试一下
root@kali:~# redis-cli
127.0.0.1:6379> set foo bar
OK
127.0.0.1:6379> get foo
"bar"
127.0.0.1:6379>