应用与数据安全
作者:互联网
应用与数据安全
4.1 应用安全
◆Web应用安全
◆了解WEB体系架构;
◆理解HTTP协议工作机制及明文传输数据、弱验证、无
◆状态等安全问题;
◆理解SQL注入攻击的原理及危害;
◆了解跨站脚本安全问题的原理及危害及其他针对WEB的攻击方式;
◆了解WEB防火墙、网页防篡改等常见Web安全防护技术作用。
应用安全威胁
◆应用系统的体系架构
◆客户端
◆传输协议
◆应用服务软件
◆数据库
◆复杂性和多样性使得安全问题也呈现出多样化的特点
Web应用安全
◆WEB服务器端安全问题(支撑软件、应用程序)
◆Web客户端(浏览器)
◆Web协议(Http)
Web服务端安全问题
◆Web服务端软件
◆Web服务提供: Apache、IIS等
◆中间件: tomcat等
◆安全问题
◆软件漏洞,如缓冲区溢出、 unicode解码漏洞等
◆软件不安全配置
◆默认账号、口令
◆不安全的配置
◆例:IS配置允许远程写入
Web服务端安全问题
◆应用软件开发语言
◆PHP、JAVA、ASP等
◆应用软件安全问题
◆运行环境存在安全漏洞
◆开发的Web应用存在安全漏洞
◆例如:SQL注入,跨站脚本等
Web服务客户端向题
◆浏览器
◆IE、 firefox、 chromes等
◆安全问题
◆安全机制不足
◆浏览器自身存在漏洞
◆默认配置安全性不足
HTTP协议
◆HTTP(超文本传输协议)
◆一种通信协议
◆使用超文本标记语言(HTM)将资源从服务器传送到客户端
◆超文本传输协议特点
◆请求、响应模式
◆协议简单,客户端只需传输请求方法和路径
◆无连接(一个请求一个连接,完成后断开)
◆无状态
HTTP协议工作过程
◆HTTP请求(Requests)
◆一个HTTP请求包含三个部分
◆HTTP请求范例
HTTP协议工作过程
◆HTTP响应(Responses)
◆一个HTTP响应也包含三个部分
◆协议状态代码、响应包头、实体包
◆HTTP协议响应范例
Http协议安全向题
◆信息泄漏(传输数据明文)
◆弱验证(会话双方没有严格认证机制)
◆http1.1提供摘要访问认证机制,采用MD5将用户名、密码、请求包头等进行封装,但仍然不提供对实体信息的保护
◆缺乏状态跟踪
◆请求响应机制決定http是一个无状态协议
◆Session解决方案带来的安全问题
Web安全防护技术
◆Web应用防火墙
◆工作在应用层
◆根据安全策略对HTTP/HTTPS的数据进行处理为Web应用提供保护的一类产品,用以解决◆Web应用层出现的安全问题
◆基本功能
◆审计并拦截HTTP数据流
◆Web应用访问控制
◆Web应用加固
Web安全防护技术
◆网页防簒改
◆监控Web服务器上的页面文件,防止被簒改
◆机制
◆备份文件对比
◆摘要文件对比
◆删改操作触发
◆系统底层过滤
针对Web的典型攻击
◆原理
◆程序没有对用户输入数据的合法性进行判断,使攻击者可以统过应用程序限制,构造一段SQL语句并传递到数据库中,实现对数据库的操作
SQL注入攻击
◆可以传递到数据库的数据都是攻击对象
◆示例
◆http://www.test.com/showdetail.asp?id=49 'and (update user set passwd='123' where username='admin');--
◆Select *from
表名 where字段='49'And( update user set passwd='123' where username='admin');
非法的SQL语句被传递到数据库中执行!
SQL注入攻击的危害
◆数据库信息收集
◆数据检索
◆操作数据库
◆增加数据
◆删除数据
◆更改数据
◆操作系统
◆借助数据库某些功能(例如: SQLServer的内置存储过程 XP_CMDshell)
SQL注入的防御
◆防御的对象:所有外部传入数据
◆用户的输入
◆提交的URL请求中的参数部分
◆从 cookie中得到的数据
◆其他系统传入的数据
◆防御的方法
◆白名单:限制传递数据的格式
◆黑名单:过滤
◆过滤特殊字串: update、 insert、 deletes等
◆开发时过滤特殊字符:单引号、双引号、斜杠、反斜杠、冒号、空字符等的字符
◆部署防SQL注入系统或脚本
针对Web应用的攻击-跨站脚本
◆原理
◆由于程序没有对用户提交的变量中的HTML代码进行过滤或转换,使得脚本可被执行,攻击者可以利用用户和服务器之间的信任关系实现恶意攻击
◆危害
◆敏感信息泄露、账号劫持、 Cookie欺骗、拒绝服务、钩鱼等
◆防范
◆不允许HTML中脚本运行
◆对所有脚本进行严格过滤
针对WEB应用的攻击
◆失效的验证和会话管理
◆不安全的对象直接引用
◆跨站请求伪造
◆不安全的配置管理
◆不安全的密码存储
◆错误的访问控制
◆传输保护不足
◆未经验证的网址重定向
◆不恰当的异常处理
◆拒绝服务攻击
◆电子邮件安全
◆理解电子邮件工作机制及SMTP、POP3协议;
◆了解电子邮件安全问题及解决方案
◆其他互联网应用
◆了解远程接入、域名系统、即时通讯等其他互联网应用安全问题及解决措施
电子邮件应用
◆应用协议
◆SMTP:简单邮件传输协议,用于邮件发送及中转
◆POP3:郎局协议,用于邮件接收
◆电子邮件协议的特点
◆协议简单,客户端请求命令
◆请求、响应模式
SMTP协议工作过程
电子邮件协议安全问题
◆信息泄露
◆用户账号/口令
◆用户邮件内容
◆用户身份验证不足
◆垃圾邮件
◆社会工程学
◆邮件服务器
◆拒绝服务:大量的邮件浪费服务器的资源
◆垃圾邮件:浪费服务器资源,导致服务器被加入拒绝名单
◆邮件客户端
◆邮件病毒
◆客户端漏洞
◆信息泄露
电子邮件安全应用-服务器端
◆安全协议
S/MIME (Secure Multipurpose Internet Mail Extension)
◆使用SSL保护会话(SMTP/POP3)
◆安全策略配置
◆确保服务器软件版本最新
◆关闭开放式转发
◆反向域名验证
◆身份验证
电子邮件安全应用-客户端
◆邮件病毒/客户端漏洞
◆客户端设置以txt方式阋读邮件
◆使用较安全的邮件客户端
◆信息泄露
◆PGP应用
◆良好的使用习惯
◆邮件标题
◆邮件正文
◆附件命名
远程接入管理应用安全
◆远程管理
◆信息泄露:例如 Telnet明文传输信息可被用于口令破解
◆解决措施
◆使用加密的远程管理如SSH、远程终端等
◆设置账号安全策略对抗口令破解
域名系统安全
◆域名系统工作机制
◆分布式数据库系统
◆弱认证
◆安全问题
◆拒绝服务
◆DNS欺骗…
即时通信系统安全
◆信息泄露
◆即时通讯软件服务器端终端漏洞
◆传输环境信息泄露
◆恶意代码传播
◆传输恶意代码文件
◆传播恶意代码链接
◆欺骗
◆认证不足导致欺骗
"熟人"间的信任,使得即时通信中的安全威胁更易于被利用
4.2 数据安全
◆数据库安全
◆了解数据库安全要求;
◆掌握数据库安全防护的策略和要求。
◆数据泄露防护
◆了解数据泄露防护的概念。
数据库系统基本概念
◆基本概念
◆数据库:长期储存在计算机系统中的一组相关数据的集
◆DBMS:建立在操作系统之上的用于有效管理数据库的系统软件
关系型数据库系统特点
◆数据结构化和共享性
◆库、表、字段
◆结构化査询语言(SQL)
◆数据独立性
◆物理独立性
◆逻辑独立性
◆数据的完整性约束
◆实体完整性
◆参照完整性
◆用户自定义完整性
◆数据由DBMS统一管理和控制
◆查询引擎、事务控制、数据存储模块组件
结构化查询语言基础
◆SQL语句格式
数据库安全机制
◆用户标识与鉴别
◆授权与访问控制
◆数据库加密
◆安全审计…
数据库安全机制-标识与鉴别
◆用户标识与鉴别
◆操作系统
◆数据库
◆第三方
◆用户管理簽略
◆默认账号管理
◆账户锁定策略
数据库安全机制-访问控制
◆设置用户对不同的数据对象允许的操作权限
◆系统权限(数据库实例级
或数据库级
)
◆模式权限(数据库对象:表、视图等
)
◆数据对象权限(数据对象:记录级
)
数据库安全机制数据库加密
◆数据库加密方式
◆传输加密
◆存储加密数据库安全机制-审计
◆数据库审计日志
◆DBMS内层加密
◆DBMS外层加密
数据库审计(也称标准审计)
◆用户级审计:安全审计员设置,用户行为审计
◆系统级审计:管理员设置,用户授权或系统级权限操作审计
◆细粒度申计
◆监视对数据对象的操作
◆数据库加密实现的机制
数据库安全防护
◆检查、监控、审计
数据库安全防护构建深度防御体系
◆安全机制
◆标识与鉴别、访可控制、传输加密、审计等
◆安全策略
◆密码策略、备份策略等
数据库安全防护安全特性检查
◆数据库系统漏洞
◆数据库配置缺陷
数据库安全特性检查
◆安全配置
◆补丁
◆协议(端口、传输协议)
◆账号
◆用户名及密码
◆口令策略
◆权限
◆存储过程
◆触发器
◆备份
数据库安全防护运行监控
◆入侵检测
◆数据库审计
数据库安全防护-审计
◆数据库审计关注的问题
◆审计对象(对谁进行审计)
◆标准审计(系统级、用户级)
◆细粒度审计(对象级)
◆审计内容(对什么行为进行审计)
◆访问数据库应用程序、位置及用户信息,包括用户操作、操作日期与时间、操作涉及的相关数据、操作是否成功等
数据防泄露
◆网络安全法中对数据保护的要求
◆“未经被收集者同意,不得向他人提供个人信息”
◆“采取技术措施和其他必要措施,确保其收集的个人信息安全,防止信息泄露、毁损、丢失。”
◆数据泄露防护应穩盖可能的数据外泄渠道,需要关注的问题
◆什么敏感数据需要发出;
◆谁会发出敏感数据;
◆这些数据要发往哪;
◆使用什么协议、端口等
◆违反了哪些安全策略;
◆违规程度如何
4.3 恶意代码防护
◆恶意代码的预防
◆了解恶意代码的概念、传播方式及安全策略、减少漏洞和减轻威胁等针对恶意代码的预防◆措施
◆恶意代码的检测分析
◆理解特征扫描、行为检测的区别及优缺点;
◆了解静态分析、动态分析的概念及区别
◆恶意代码的清除
◆了解感染引导区、感染文件、独立型和嵌入型恶意代码清除的方式。
◆基于互联网的恶意代码防护
◆了解基于互联网的恶意代码防护概念
什么是恶意代码
◆什么是恶意代码
◆《中华人民共和国计算机信息系统安全保护条例》第二十八条:“计算机病毒,是指编制或者在计算机程序中插入的破坏计算机功能或者毀坏数据,影响计算机使用,并能自我复制的一组计算机指令或者程序代码(1994.2.18)
◆恶意代码,是指能够引起计算机故障,破坏计算机数据,影响计算机系统的正常使用的程序代码、指令
◆类型:二进制代码、脚本语言、宏语言等
◆表现形式:病毒、蠕虫、后门程序、木马、流氓软件、逻辑炸弹等
恶意代码传播方式
◆文件传播
◆感染、文件捆绑
◆移动介质
◆网络传播
◆网页、电子邮件、即时通讯、漏洞
◆软件部署
◆逻辑炸弹
◆预留后门
恶意代码预防技术
◆增强安全策略与意识
◆减少漏洞
◆补丁管理
◆主机加固
◆减轻威胁
◆防病毒软件
◆间谍软件检测和删除工具
◆入侵检测/入侵防御系统
◆防火墙
◆路由器、应用安全设置等
恶意代码检查技术特征码-扫描
◆工作机制:特征匹配
◆病毒库(恶意代码特征库)
◆扫描(特征匹配过程)
◆优势
◆准确(误报率低)
◆易于管理
◆不足
◆效率可题(特征库不断庞大、依赖厂商)
◆滞后(先有病毒后有特征库,需要持续更新)…
恶意代码检测技术行为分析
◆工作机制:基于统计数据
◆恶意代码行为有哪些
◆行为符合度
◆优势
◆能检测到未知病毒
◆不足
◆误报率高
◆难点:病毒不可判定原则
恶意代码分析技术
◆静态分析
◆不实际执行恶意代码,直接对二进制代码进行分析
◆文件特性,如文件形态、版本、存储位置、长度等
◆文件格式,如PE信息、API调用等
◆动态分析
◆运行恶意代码并使用监控及测试软件分析
◆本地行为:文件读写、注册表读写等
◆网络行为:远程访问、调用等
恶意代码清除
◆感染引导区
◆修复/重建引导区
◆感染文件
◆附着型:逆向还原(从正常文件中删除恶意代码)
◆替换型:备份还原(正常文件替换感染文件)
◆独立文件
◆内存退出,删除文件
◆嵌入型
◆更新软件或系统
◆重置系统
基于互联网技术的恶意代码防御
◆恶意代码监测与预防体系
◆蜜罐、蜜网
◆恶意代码云查杀
◆分布式计算
标签:Web,HTTP,恶意代码,数据库,安全,数据安全,应用,数据库安全 来源: https://blog.csdn.net/weixin_51830687/article/details/120595146