最近学了点web安全的东西,作为笔记记录一下。
1)关于web应用安全,最好的是一个网站OWASP
,开放web应用安全项目。
这上面货色很多,大家可以尽情享用。我以前也总是想知道XSS,CSRF,SQL injection具体的攻击过程是怎样的的,WebGoat
提供了一个演示项目,里面有30几种常见的攻击演示。
强烈建议大家去试试看。
2)攻击方式分类:
a. 直接的方式。修改进程指令,等于修改内存地址。关于悬挂指针,黑客可以用撞大运的方式,将恶意代码地址写满内存,撞上悬挂指针就赚了。
- 任意四字节内容写到任意地址,这种无悬念的控制整个过程。
- 任意四字节内容写到特殊地址,Stack overflow,heap overflow
- 受限制的四字节写到任意的地址,可以找个memcpy(),在长度检查后,执行前,把len给替换了。
- 受限制的四字节写到受限制的地址,这个就看运气了。
b. 间接的方式。通过提供不同的参数和环境,让程序按自己预想的方式执行。
- SQL Injection
- XSS
- CSRF
- Directory traversal
- HTTP header Injection
- HTTP response splitting
3) 本质原因
a. 冯诺依曼体系结构的原因,数据和代码是不做区分的,这是缓冲区溢出的根本原因。
b. 对同一数据流的处理方式不同,如何应对用户的输入。非法输入会对系统造成损害,一个正常的数据递送过程,经过浏览器,web服务器,应用服务器,数据库服务器。举例:
- 浏览器认为合法的,可能对web服务器造成伤害,比如%bf字符。
- 浏览器认为合法的,web服务器也认为合法的,应用服务器也认为合法的,但对数据库服务器造成伤害,比如SQL Injection。
扩展开去,就是数据流经的各部分存在信任边界:
- 层与层之间存在信任边界。
- 功能组件之间存在信任边界。
- 用户与系统之间存在信任边界。
- 用户与用户之间存在信任边界。
4)威胁模型(STRIDE)
a. S
poofing.伪装,冒充他人身份,属认证范畴。
b. T
ampering. 篡改,修改数据或代码,属完整性范畴。
c. R
epudiation. 抵赖,否认做过的事情,属不可抵赖范畴。
d. I
nformation Disclosure. 信息泄露,属机密性范畴。
e. D
enial of Service. 拒绝服务,属可用性范畴。
f. E
levation of Privilege. 未经授权的许可,属授权范畴。
5)一点思考
以前听说QFD,叫质量功能展开,我想,可不可以借鉴这个概念,对安全也这样分析和展开,我初步做了一下分类:
a. 影响开发的。非法输入,SQL Injection,XSS。
b. 影响运维的。
c. 影响客服的。钓鱼
d. 影响UI的。XSS,CSRF,CSS,Javascript。
e. 影响管理的。专岗专职。
f. 影响决策的。
互联网,充满诱惑和邪恶,行走其中确实要小心,切记,切记!
分享到:
相关推荐
如服务器控件、数探访问、数据绑定、Asp.NET状态管理、XML与web开发、web应用程序中的web服务、ASP.NET身份验证、授权和安全、调试和异常处理、利用缓存改进性能以及在NET中发布web应用程序等。 本书适用于熟悉...
web安全应用入门.docx
怀旧篇 C#Web应用程序入门经典 格式:PDG 共3部分 20M 1,2 章 介绍 基础知识 环境和体系结构 .NET环境下的WEB开发 3~13 介绍功能 用户界面和服务器控件 ADO.NET 数据绑定 ASP.NET状态管理...
怀旧篇 C#Web应用程序入门经典 格式:PDG 共3部分 20M 1,2 章 介绍 基础知识 环境和体系结构 .NET环境下的WEB开发 3~13 介绍功能 用户界面和服务器控件 ADO.NET 数据绑定 ASP.NET状态管理...
在随后的11章中从理论和实践两个方面讲解了Web应用程序的创建、测试、调试和部署等环节,如服务器控件、数据绑定、ASP.NET状态管理、XML与Web开发、Web应用程序中的Web服务、ASP.NET身份验证、授权和安全、调试和...
Web应用安全培训PPT教程,可以作为web安全测试的入门课程
许多程序员不知道如何开发安全的应用程序,开发出来的Web应用存在较多的安全漏洞,这些安全漏洞一旦被黑客利用将导致严重甚至是灾难性的后果。这并非危言耸听,类似的网上事故举不胜举,的Web产品也曾多次遭黑客攻击...
owasp的渗透指导,英文版本第3版。从整体上介绍如何展开web应用安全,对安全有一定理解的朋友可帮助思路的开拓,具有很强的指导意义。
如服务器控件、数据访问、数据绑定、ASP.NET状态管理、XML与Web开发、Web应用程序中的Web服务、ASP.NET身份验证、授权和安全、调试和异常处理、利用缓存改进性能以及在.NET中发布Web应用程序等。 本书适用于熟悉C#...
·提供关于保证Web应用程序安全性的系统化指南。 ·涵盖广泛的实现问题——包括国际化、错语处理、数据验证、调试、会话管理和部署。 ·关于XML、基于XML的Web服务和用于可重用PHP组件的PEAR框架。 ·如何使用Oracle...
本书采用面向任务的方式,通过实践展示了为什么WebMatrix是使用ASP.NET开发Web网站的理想入门级工具。...◆ 介绍Web应用调试、安全维护和错误处理 ◆ 介绍网站优化、发布和部署 ◆ 介绍C#编程语言的基础知识
编写高性能Web应用程序的10个入门技巧.doc
讲解Nginx中最实用的Webserver场景 提供一套整体的搭建配置方式 2.通用性 Nginx中间件,不局限于业务逻辑,有效 独立于后台开发框架(不论后端是Java开 发、PHP开发、或者其他语言框架) 都能做到平台通用 3.原理...
ppt漏洞挖掘思想,浅谈Web业务&应用逻辑缺陷,我的Web应用安全模糊测试之路,WEB安全-兵器剖析,WEB安全漏洞攻防-基础。WEB安全入门基础,WEB安全-杂类知识
基于窗体的身份验证 授权用户和角色 用户帐户模拟 安全性和 Web 服务本地化 国际化概述 Overview 设置区域性和编码 本地化 ASP.NET 应用程序 使用资源文件跟踪 跟踪概述 跟踪记录到页输出 应用程序级跟踪记录调试 ...
使用Django,使你能够以最小的代价构建和维护高质量的Web应用。 第一章:介紹Django 第二章 入门 第三章 视图和URL配置 第四章:模版 第五章:模型 第六章:Admin 第七章:表单 第八章 高级视图和URL配置 第九章...
该列表适用于希望了解Web应用程序安全性但没有起点的任何人。 您可以发送“拉取请求”添加更多信息,以提供帮助。 如果您不希望进行@infoslack可以通过@infoslack发送给我 目录 图书 Web应用程序黑客手册:发现和...