1、WEB SecurityWEB安全简介cnrstar四维创智毕业于电子科技大学5年以上的网络攻防经验,在校期间参加学校与总参三部、四部多个合作项目曾为XX国安厅、某省公安厅作网络渗透服务工作毕业后曾就职于XX国安厅一年,主要负责情报、取证等工作。现就职于四维创智(北京)科技发展有限公司,负责解放军信息技术安全研究中心科研项目,同时承担对外安全服务与安全培训。一句话:转行的职业黑客自我介绍目录网络安全现状网络安全现状安全圈简介安全圈简介渗透测试概述渗透测试概述APT攻击技术攻击技术WEB安全技术初探安全技术初探网络安全现状从斯诺登泄密发现潜在威胁 斯诺登披露棱镜计划显示,电邮、即时消息等10类信
2、息的细节都被监控。美国国家安全局曾入侵中国电讯公司以获取手机短信信息,并持续攻击清华大学的主干网络以及电讯公司Pacnet香港总部的计算机,2009年起NSA就开始入侵华为总部的服务器。危机四伏的网络世界据前NSA合同工Edward Snowden泄露的文件,NSA设计窃取机密文件的恶意程序感染了超过五万个区域网络。一份日期为2012年的幻灯片显示(如左图),NSA在50000多个地点通过安装恶意程序展开秘密渗透。NSA标注为最高机密的内容收集计划(Contect Acquisition Optimization)曝光。该计划目标是包括美国公民在内的全球用户。读取你的邮件地址薄,爬取你的即时通
3、讯软件的好友列表,每年收集2.5亿个电子邮件地址和即时通讯账号。美国国安局(NSA)在世界范围内收集了上亿联系人信息,包括email地址、信息账号等,其中很多位美国公民。此为NSA最高机密。国家的角力美国网军TAO的使命很简单,那就是搜集外国目标的情报信息,具体方法则包括秘密入侵海外目标的电脑和电信系统、破解密码、攻破保护目标电脑的安全系统、窃取存储在电脑硬盘上的数据,然后复制目标电子邮件和文本信息系统内的所有消息和数据流量。NSA使用“电脑网络开发”(computer network exploitation,简称“CNE”)这一技术术语来描述这些行动。TAO还负责研究一些信息,使得美国可以
4、在得到总统的授权下,通过网络攻击破坏国外电脑和通讯系统。负责实施这种攻击的机构名叫“美国数字指挥部”(Cybercom),其总部设在米德堡,负责人由NSA局长基思亚历山大(Keith Alexander)将军兼任。自1997年创建以来,TAO就以向美国情报界提供最好的情报而闻名,享有盛誉。TAO提供的情报不仅仅与中国有关,还包括外国恐怖组织、外国政府对美国进行的间谍活动、全球各地发展的弹道导弹和大规模杀伤性武器,以及全球各地最新的政治、军事和经济发展情报。匿名者攻击中国网络 2012年5月起,中国部分政府网站相继被匿名者黑客组织(AnonymousHacker)入侵或造成网站服务器信号中断,部
5、分网站甚至被盗取客户资料。匿名者的攻击从未间断过,这将会是一个长久持续的隐患。无处不在的威胁不止匿名者 随着最近几年的互联网发展,网络安全的话题也被推向了风口浪尖,包括美国五角大楼、国防部的资料泄密,英国情报泄密,奥巴马社交帐号被盗,adobe和apple数据库泄漏等等各个国家以及世界500强企业出现的网络安全问题。在所有受攻击的企业和单位中,国家机关、涉密单位、科研院校、金融单位等涉及国家机密和资金安全的,遭到黑客攻击的技术含量和攻击频率远高于普通企业。甚至有涉密单位在一个月之内就遭到多个不同组织的近千次攻击窥测。而与涉密单位相关的个人电脑、手机、U盘等私人物品,也往往会成为黑客攻击的突破口
6、。例如,有些承担军队研究任务的院校,其研究人员的个人电脑也经常遭到攻击,攻击者企图通过对U盘、移动硬盘、手机的攻击,将其作为跳板,进而攻击涉密网络,一旦成功则会造成机密资料外泄的严重后果。安全圈简介黑客层级Level 1愣头青【百万人】:会使用安全工具,只能简单扫描、破译密码愣头青【百万人】:会使用安全工具,只能简单扫描、破译密码Level 2系统管理员【上万人】:善用安全工具,特别熟悉系统及网络系统管理员【上万人】:善用安全工具,特别熟悉系统及网络Level 3大公司的开发人员或核心安全公司大牛【几千人】:对操作系统特别大公司的开发人员或核心安全公司大牛【几千人】:对操作系统特别熟悉,开始开
7、发代码,写自己的扫描器熟悉,开始开发代码,写自己的扫描器Level 4能找到并利用漏洞【几百人】:自己能找漏洞、自己找能找到并利用漏洞【几百人】:自己能找漏洞、自己找0day并且写并且写exp利用漏洞的;对系统做挖掘漏洞的协议测试利用漏洞的;对系统做挖掘漏洞的协议测试Level 5高水平【少于百人】:防御和构建系统的人高水平【少于百人】:防御和构建系统的人Level 6精英级【几十人到十几人】:对操作系统的理解很深入精英级【几十人到十几人】:对操作系统的理解很深入Level 7大牛牛【寥寥无几】:马克大牛牛【寥寥无几】:马克扎克伯格、艾伯特扎克伯格、艾伯特爱因斯坦等改变世界爱因斯坦等改变世界的
8、人的人渗透测试概述渗透测试概念模拟真实黑客发起的网络攻击,旨在检测目标网络安全性模拟真实黑客发起的网络攻击,旨在检测目标网络安全性专业性强专业性强覆盖知识点较多覆盖知识点较多(Web、数据库、网络架构、安防设备等)、数据库、网络架构、安防设备等)攻击手法已经成型且固定攻击手法已经成型且固定攻击思路更显重要攻击思路更显重要迷宫游戏:永远不知道自己下一步遇见的是什么情况迷宫游戏:永远不知道自己下一步遇见的是什么情况经验经验+那么一点点的灵感那么一点点的灵感渗透测试术语简介扫描扫描木马、病毒木马、病毒黑帽子、白帽子黑帽子、白帽子社会工程学社会工程学钓鱼钓鱼poc、exploitWebShellDDo
9、SARP攻击攻击0day常见攻击技术XSSCSRF越权、逻辑错误目录遍历SQL注入漏洞利用(MySQL认证漏洞、远程代码执行等)DDOS(带宽消耗)ARP欺骗WEBDB网络层系统层DDOS(资源消耗)远程溢出(MS08-067、MS10-020)Rootkit0day(虚拟机逃逸、本地溢出提权等)远程代码执行网页挂马文件包含了解APT攻击APT简介Advanced Persistent Threat组织严密、高投入组织严密、高投入策划完善、目标明确策划完善、目标明确全方位渗透、不择手段全方位渗透、不择手段持续性久、难防御持续性久、难防御隐蔽性高、难发现隐蔽性高、难发现攻击目标WEB or Em
10、ail?Web攻击是邮件钓鱼攻击的5倍!APT攻击案例 极光计划极光计划 针对针对GoogleGoogle的一次定向攻击的一次定向攻击 BeeBusBeeBus行动行动 FireEyeFireEye指中国指中国6139861398部队对美国无人机制造商的攻击部队对美国无人机制造商的攻击 可汗探索可汗探索20142014“概念制定会议声明信息概念制定会议声明信息-2014-2014可汗探索军演草案文件可汗探索军演草案文件”-CVE-CVE-2012-01582012-0158 目标为蒙古国防部负责计划和演习的部门目标为蒙古国防部负责计划和演习的部门APT攻击团队山猫小组 商业间谍、政府承包商 以
11、入侵Bit9为基础,攻击多个政府组织IceFog 重点针对政府和军事机构 组合使用社会工程学和0day渗透测试流程信息收集扫描探测漏洞利用漏洞利用通道控制通道控制内网扩展资料回传信息收集目的 了解目标网络架构 了解目标业务架构 制定攻击路线 不做破坏,仅踩点手段 Whois信息、二级域名扫描 IP段端口与服务扫描 网站信息收集 合作单位信息收集 Linkedin、Facebook、微博等SNS信息收集 购买相关信息(公司通信录等)扫描探测WEB指纹识别指纹识别服务指纹识别服务指纹识别木桶原理与网络边界木桶原理与网络边界漏洞利用传统传统WEB漏洞漏洞SQL注入、注入、XSS、上传、命令执行、上传
12、、命令执行弱口令与服务设置缺陷弱口令与服务设置缺陷服务弱口令(服务弱口令(SSH、FTP、RDP、DB)WEB弱口令(后台、企业邮箱、论坛弱口令(后台、企业邮箱、论坛)定向挂马与水坑攻击定向挂马与水坑攻击0day组合利用组合利用社会工程学已有数据库(渗透“秘密”)无意泄露的密码(Github,百度例子)交互式钓鱼水坑攻击(打折信息、送电子设备等)潜伏与内网渗透通道维护通道维护正向:正向:WebShell、管理密码、管理密码反向:木马、反向:木马、rootkit、bootkit域渗透与非域环境渗透域渗透与非域环境渗透潜伏之特种木马 震网(震网(StuxnetStuxnet)是一种)是一种Wind
13、owsWindows平台上的计算机蠕虫,该蠕虫病毒平台上的计算机蠕虫,该蠕虫病毒已感染并破坏了伊朗的核设施,使伊朗的布什尔核电站推迟启动。已感染并破坏了伊朗的核设施,使伊朗的布什尔核电站推迟启动。穿透物理隔绝网络敏感的网络都是物理隔离的,特种木马如何穿透隔离?HID攻击Teensy是一个基于USB接口非常小巧而又功能完整的单片机开发系统,它能够实现多种类型的项目开发和设计。Teensy为开源项目,任何有能力有技术的都可以生产定制。其中PJRC是最优秀的或者说商业化最好的生产商。特种木马特性穿透代理(穿透代理(ISA、Bluecoat等)等)绕过流量监控与防火墙检测绕过流量监控与防火墙检测多协议
14、(多协议(TCP、UDP直连、直连、HTTP、ICMP等)等)自定义通信加密绕过检测自定义通信加密绕过检测白加黑注入正常程序执行白加黑注入正常程序执行资料回传(指定时间、速度限制)资料回传(指定时间、速度限制)智能木马(木马协作抵御查杀)智能木马(木马协作抵御查杀)WEB安全技术初探WEB时代WEB 1.0WEB 2.0未来发展未来发展为何WEB如此重要和数据库联动,关联敏感数据和数据库联动,关联敏感数据工控、监控、工控、监控、VPN、邮箱等系统、邮箱等系统作为跳板攻击其他核心应用作为跳板攻击其他核心应用挂马、篡改挂马、篡改DMZ区到核心区域的突破口区到核心区域的突破口网络基本架构简单的网站模
15、型数据库管理系统/数据库数据库服务器客户端用户1的PC客户端用户2的PC客户端黑客的PC网站WEB服务器动态网站工作过程客 户 端数 据 库脚本引擎 用户想要查看ID为36的文章请求返回http:/ Article where id=36,向数据库发起查询请求在Article表中查询id为36的所有记录返回查询到的所有记录处理返回的所有记录,如过滤和编码特殊字符等,生成静态网页并返回给客户端将网站返回的网页展示给用户HTTP协议与抓包工具Burpsuit安装与使用安装与使用Fiddler安装与使用安装与使用HTTP协议讲解协议讲解SQL注入概述2000年How I Hacked PacketS
16、torm引发引发SQL注入研究注入研究2005-2010 引发引发SQLSQL注入高潮。注入高潮。“啊啊D”D”,“明小子明小子”,“穿山穿山甲甲”“Sqlmap”“Sqlmap”2014年 依旧存在大量注入实例依旧存在大量注入实例SQL注入概述SQL注入的定义:很多应用程序都使用数据库来存储信息。SQL命令就是前端应用程序和后端数据库之间的接口。攻击者可利用应用程序根据提交的数据动态生成SQL命令的特性,在URL、表单域,或者其他的输入域中输入自己的SQL命令,改变SQL命令的操作,将被修改的SQL命令注入到后端数据库引擎执行。SQL注入的危害:这些危害包括但不局限于:A.数据库信息泄漏:数
17、据库中存放的用户的隐私信息的泄露。B.网页篡改:通过操作数据库对特定网页进行篡改。C.网站被挂马,传播恶意软件:修改数据库一些字段的值,嵌入网马链接,进行挂马攻击。D.数据库被恶意操作:数据库服务器被攻击,数据库的系统管理员帐户被窜改。E.服务器被远程控制,被安装后门。经由数据库服务器提供的操作系统支持,让黑客得以修改或控制操作系统。F.破坏硬盘数据,瘫痪全系统。一些类型的数据库系统能够让SQL指令操作文件系统,这使得SQL注入的危害被进一步放大。数据库基础概念图像、语音、文字等数据(Data)在计算机系统中,各种字母、数字符号的组合、语音、图形、图像等统称为数据。Access、MSSQL、O
18、racle、SQLITE、MySQL等数据库(Database)数据库是按照数据结构来组织、存储和管理数据的“仓库”。Access、MSSQL、Oracle、SQLITE、MySQL等数据库管理系统(DBMS)数据库管理系统(database management system)是一种操纵和管理数据库的软件,用于建立、使用和维护数据库。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。DQL、DDL、DML、TCL、DCL结构化查询语言(SQL)结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据
19、以及查询、更新和管理关系数据库系统。SQL注入产生过程轻信用户输入带来的恶果(其他漏洞类似)轻信用户输入带来的恶果(其他漏洞类似)产生条件产生条件输入可控输入可控特定输入被带入数据库查询特定输入被带入数据库查询结合代码分析结合代码分析数据库组成库(库(database)表(表(table)字段(字段(column)为什么要使用数据库静态网页:html或者htm,是一种静态的页面格式,不需要服务器解析其中的脚本。由浏览器如(IE、Chrome等)解析。1.不依赖数据库 2.灵活性差,制作、更新、维护麻烦 3.交互性交差,在功能方面有较大的限制 4.安全,不存在SQL注入漏洞动态网页:asp、as
20、px、php、jsp等,由相应的脚本引擎来解释执行,根据指令生成静态网页。1.依赖数据库 2.灵活性好,维护简便 3.交互性好,功能强大 4.存在安全风险,可能存在SQL注入漏洞SQL注入对渗透测试的作用绕过登录验证:万能密码绕过登录验证:万能密码获取敏感数据:获取网站管理员帐号密码获取敏感数据:获取网站管理员帐号密码文件操作:列目录、读写文件文件操作:列目录、读写文件注册表操作:增删改查注册表注册表操作:增删改查注册表执行系统命令:借助接口执行系统命令执行系统命令:借助接口执行系统命令无处不在的HACK查找SQL注入哪些地方可能存在注入漏洞?参数名目录名参数值文件名Cookie.未经检查和过
21、滤即被代入到SQL命令中SQL注入漏洞 最普遍的注入漏洞是由于参数值过滤不严导致的。Cookie注入漏洞普遍存在于ASP的程序中。参数名、目录名、文件名等注入漏洞通常存在于有网站路由的程序中。查找SQL注入自动化、范围广、效率高误报、漏报、测试范围有限测试范围广、准确效率高,与测试者经验有关自动化测试人工测试判断SQL注入的依据 判断注入漏洞的依据是什么?根据客户端返回的结果来判断提交的测试语句是否成功被数据库引擎执行,如果测试语句被执行了,说明存在注入漏洞。构造测试语句提交请求分析返回结果符合预期结果不符合预期结果存在SQL注入漏洞不存在SQL注入漏洞SQL注入分类按数据类型按返回结果数字型
22、注入字符型注入显错注入盲注数字型注入测试测试字符串变种预期结果触发错误,如果成功,数据库将返回一个错误。value+0value-0如果成功,将返回与原请求相同的结果。value/1value*1如果成功,将返回与原请求相同的结果。1 or 1=11)or(1=1永真条件。如果成功,将返回表中所有的行。value or 1=2 value)or(1=2 空条件。如果成功,则返回与原请求相同的结果。1 and 1=21)or(ab=a+b永假条件。如果成功则不返回表中任何行。1 or ab=a+b1)or(ab=a+bSQL Server串联。如果成功,则返回与永真条件相同的信息1 or ab=
23、ab1)or(ab=a bMysql 串联。如果成功,则返回与永真条件相同的信息1 or ab=a|b1)or(ab=a|bOracle 串联。如果成功,则返回与永真条件相同的信息字符型注入测试测试字符串变种预期结果触发错误,如果成功,数据库将返回一个错误。1 or 1=11)or(1=1永真条件。如果成功,将返回表中所有的行。value or 1=2 value)or(1=2 空条件。如果成功,则返回与原请求相同的结果。1 and 1=21)or(ab=a+b永假条件。如果成功则不返回表中任何行。1 or ab=a+b1)or(ab=a+bSQL Server串联。如果成功,则返回与永真条件相同的信息1 or ab=ab1)or(ab=a bMysql 串联。如果成功,则返回与永真条件相同的信息1 or ab=a|b1)or(ab=a|bOracle 串联。如果成功,则返回与永真条件相同的信息SQL注入确认简单单引号确认简单单引号确认简单逻辑确定简单逻辑确定数据库字符串拼接特性数据库字符串拼接特性HTTP错误代码(错误代码(500、302等)等)延时特性延时特性waitfor delay 0:0:5sleep(10)THINKS