0


渗透测试 ---利用Kali进行简单的信息收集

Kali环境安装配置更新

镜像文件下载地址

Kali Linux | Penetration Testing and Ethical Hacking Linux Distribution

默认用户名

用户名root 密码toor

我的主机用户名root 密码1

更新命令

apt updata && apt upgrade && apt dist-upgrade

网络环境配置

设置中改成桥接模式 通过kali虚拟机与主机互ping确认是否处于同一网段

二层发现

原理

利用OSI链路层中的协议进行主机发现 一般是ARP协议

缺点: 不能跨路由发现主机

工具

arping

需要 -c 参数 否则会一直扫描 缺点:无法同时扫描多主机

netdiscover

直接输入即可 优点:可以同时扫描多主机

三层发现

原理

利用OSI网络协议进行主机发现 一般是ICMP协议

优点:1.可以发现远程主机 经过路由的主机 2.速度相对较快

缺点:1.经常被防火墙过滤 2.速度相比二层发现慢

工具

ping

需要-c参数 否则会一直扫描

fping

可以进行多个主机扫描 fping

hping3

特点:发送自定义ICMP数据包

可以根据实际自定义ICMP数据包绕过防火墙过滤

四层发现

原理

利用OSI传输层协议进行主机发现,一般利用TCP、UDP探测

优点: 1.可以探测远程主机 2.比三层发现更为可靠

缺点: 花费时间更长

工具

nmap

可以调用二、三、四层发现

命令 nmap -sP IP地址范围

hping3

也可以进行四层主机发现

hping3 --udp(使用udp进行探测) -c 3(-c指定次数)-p 80(-p指定端口号) IP地址

再打开09号下的wireshark工具指定udp进行抓包分析

综上分析udp数据包可能被目标ip所在的主机上的状态防火墙过滤,所以无法响应

Python脚本

使用GitHub上分享的主机发现脚本:GitHub - Cyber-Forensic/nWatch

直接在kali自带fox浏览器中打开链接 并复制脚本工具链接

1.安装脚本工具

进入到/Desktop文件中查看是否建立nWatch文件夹 并进入

2.添加执行权限

发现nwatch.py文件没有执行权限 用chmod命令添加执行权限

运行脚本 因为kali2022安装了python2和python3两个版本的,脚本是python2写的,运行的时候要用python2

3.安装scapy模块

如图 系统提示缺乏scapy模块

安装模块要用pip2命令去安装 因为kali自带的是pip3也就是默认的pip

安装之后运行脚本 发现仍然缺少scapy模块

再安装一次即可

安装完成后再次运行脚本 发现此时系统提示缺少nmap模块 说明scapy模块已经安装完成

4.安装nmap模块

尝试安装nmap模块

报错的原因是经过测试,选择的版本低于0.6的都无法正常调用,而pip2 install python-nmap安装的是最新版本的nmap,但是由于python2不支持安装nmap最新版的,所以我选择了0.6.1版本的

命令:pip2 install python-nmap==0.6.1

5.运行脚本

安装完成后 再次运行脚本

脚本运行完毕

找到对应网卡并键入数字 回车

可以查看IP地址 MAC地址 UP状态 OS版本号 PORT端口号和开放端口号

主机发现-python脚本以及记录在安装脚本过程中出现并解决的问题_Hello,Jade的博客-CSDN博客_no module named nmap csdn上详细介绍安装脚本以及运行步骤

端口扫描

原理

一个端口代表一个提供的服务,不同的服务具有不同的端口号,因此要对服务进行测试。首先要确定是否开放对应端口号。

工具

nmap

nmap具有多张扫描端口的技术

端口状态:

open 开放

closed 关闭

filtrerd 被过滤的 无法得知此端口是否开启

unfiltered 未被过滤但无法得知

open filtered 开放或被过滤的

closed filtered 未开发或被过滤的

常用参数

命令:nmap IP地址

Dmitry

使用Dmitry进行端口扫描,其中-p参数指定Dmitry进行tcp端口扫描

命令:dmitry -p IP地址

直接回车输入命令弹出帮助信息

输入-p查看tcp端口

netcat

使用netcat进行端口扫描

命令:nc -nvz IP地址 端口范围

(-n 输入一个IP地址 -v 输出对应的详细信息 -z I/O模式下进行扫描)

端口Banner信息获取

原理

端口范围0~65535

TCP端口和UDP端口。由于TCP和UDP两个协议是独立的。因此各自的端口号也相互独立,比如TCP有235端口,UDP也可以有235端口,两者并不冲突。

端口分为:

1.周知端口

周知端口是众所周知的端口号,范围从0到1023,其中80端口分配飞WWW服务,21端口分配给FTP服务等。我们在IE的地址栏里输入一个网址的时候是不必指定端口号的,因为在默认情况下的WWW服务的端口是“80”

2.动态端口

动态端口的范围是49152到65535。之所以被称为动态端口,是因为它一般不固定分配某种服务,而是动态分配。

2.注册端口

注册端口范围是1024到49151,分配给用户进程或应用程序。这些进程主要是用户安装的程序。

工具

nmap

使用nmap扫描指定主机的端口信息,并返回Banner

命令: nmap IP地址 -script banner -p 端口号

可以看到22端口开放 以及banner信息

dmitry

使用dmitry获取端口banner信息

命令: dmitry -pb IP地址

有些端口不返回banner信息是因为对应服务不支持返回

netcat

使用netcat获取banner信息

命令: nc -vn IP地址 端口号(指定端口或指定端口范围)

端口服务版本和操作系统版本信息获取

端口服务版本信息获取

利用nmap获取目标系统的端口版本信息

命令 :nmap -p 端口号 -sV IP地址

操作系统版本信息获取

使用nmap扫描指定主机的操作系统版本信息

命令 : nmap -O IP地址

针对不同的操作系统进行不同的测试

综合所有命令完整探测

在针对内容测试时,有授权的情况下,可以利用nmap对目标进行完整测试。

命令: nmap -A -v -T4(进行快速扫描测试) IP地址

系统漏洞扫描

原理

漏洞扫描器对漏洞进行扫描,以验证具体目标是否存在对应的具体漏洞。但是也存在错误扫描,需要对扫描结果进行漏洞验证。

扫描器的原理大致相同 都是通过发送对应的验证数据到目标具体服务进行验证。当收到目标返回的响应与存在漏洞的响应一致时,就表明存在漏洞。

nmap常见脚本运用

网址:NSEDoc Reference Portal — Nmap Scripting Engine documentation

工具

nmap

使用nmap进行漏洞扫描

命令:nmap --script vuln -O -sV 目标地址

Web应用程序漏洞扫描

原理

针对Web应用程序的漏洞 扫描其实就是每个扫描器读取自己的Payload进行探测

常见的Web漏洞扫描器

  1. Owasp-zap
  2. AWVS
  3. Appscan
  4. Nikto
  5. Burpsuite每个扫描器都有各自不同的Payload进行探测

nikto

对目标服务器进行漏洞扫描 主要针对http服务器

命令: nikto -host IP地址

我这里对百度网址进行ping之后 再用nikto进行扫描IP地址

漏洞利用

工具

SQLMAP

使用Sqlmap对扫描到的SQL注入漏洞进行利用

靶场:pikachu平台(小皮启动)

打开靶场的时候前面加上本机IP地址

命令 sqlmap -u "url地址" --current-db -batch

从倒数第二行信息可以看出 数据库名为"pikachu"

使用命令sqlmap -u “进行注入的URL” -D pikachu -tables -batch,用已知pikachu数据库名加-tables列出当前的表

得到了该数据的所有表单

使用命令sqlmap -u “进行注入的URL” -D pikachu -T users -columns -batch列出users的列

获得了列与类型

使用命令sqlmap -u “进行注入的URL” -D pikachu -T users -C username,password --dump -batch获取username与password列中的数据

cmd5.com上破解密码


本文转载自: https://blog.csdn.net/qq_39291229/article/details/127535418
版权归原作者 tzyyyyyy 所有, 如有侵权,请联系我们删除。

“渗透测试 ---利用Kali进行简单的信息收集”的评论:

还没有评论