最近学了点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. 影响决策的。
互联网,充满诱惑和邪恶,行走其中确实要小心,切记,切记!
分享到:
相关推荐
目录: Web安全入门导论.pdf Web安全实验室.pdf Web技术入门授课课件.zip 网络安全实验室与靶机说明.pdf
7. 安全性:理解如何保护Web应用免受攻击,如SQL注入、跨站脚本(XSS)和跨站请求伪造(CSRF)等,是开发者必须掌握的基本技能。 8. 错误处理和调试:学会使用Visual Studio等IDE进行错误检测和调试,有助于找出并...
随着学习的深入,读者可能会了解到如何使用***框架提供的各种控件和组件,例如*** Web Forms、MVC(Model-View-Controller)模式、以及Web API等,来构建可扩展、安全且易于维护的Web应用程序。 除了技术知识以外,...
如服务器控件、数探访问、数据绑定、Asp.NET状态管理、XML与web开发、web应用程序中的web服务、ASP.NET身份验证、授权和安全、调试和异常处理、利用缓存改进性能以及在NET中发布web应用程序等。 本书适用于熟悉...
Web 安全应用入门 Web 安全应用入门的知识点可以总结如下: Web 服务安全模型 * Web 服务安全模型是由微软和 IBM 共同定义的,以 WS-Security 规范为核心,保证了 SOAP 消息的安全性。 * 该模型引入了一个由各个...
怀旧篇 C#Web应用程序入门经典 格式:PDG 共3部分 20M 1,2 章 介绍 基础知识 环境和体系结构 .NET环境下的WEB开发 3~13 介绍功能 用户界面和服务器控件 ADO.NET 数据绑定 ASP.NET状态管理...
《C# Web应用程序入门经典电子书1》是一本专为初学者设计的教程,旨在帮助读者快速掌握使用C#语言开发Web应用程序的基本技能。这本书详细介绍了C#与Web开发的相关概念和技术,是学习C# Web编程的理想起点。 一、C#...
C# Web应用程序是一种基于.NET Framework或.NET ...通过"《C#Web应用程序入门经典》"的学习,读者将能够掌握C# Web开发的基础知识,进一步探索Web应用程序的高级特性和实践技巧,为今后的Web开发生涯打下坚实的基础。
"C# Web应用程序入门经典"是针对初学者的一份重要资源,它深入浅出地介绍了如何使用C#进行Web应用程序开发。在这个教程中,我们将探讨C#的基础知识,Web应用程序的架构,以及如何利用C#构建实际的Web应用。 首先,...
《CWeb应用程序入门经典》是一本专为初学者设计的指南,旨在帮助...通过阅读《CWeb应用程序入门经典》,读者将全面了解C#在Web开发中的应用,掌握从开发到部署的整个流程,为构建高效、安全的Web应用程序打下坚实基础。
Web 安全入门 PPT 课件 本 PPT课件主要介绍了 Web 安全的基础知识,包括 Web 安全初探、Web 漏洞等内容。下面是从本 PPT 课件中提炼出的相关知识点: Web 安全初探 * Web 安全的重要性:Web 应用程序的安全性是...
7. **安全性**: 了解如何在Web应用中实现用户认证和授权,防止XSS(跨站脚本攻击)和CSRF(跨站请求伪造)等安全问题。 8. **部署和发布**: 教程可能涉及将开发完成的Web应用程序部署到IIS(Internet Information ...
怀旧篇 C#Web应用程序入门经典 格式:PDG 共3部分 20M 1,2 章 介绍 基础知识 环境和体系结构 .NET环境下的WEB开发 3~13 介绍功能 用户界面和服务器控件 ADO.NET 数据绑定 ASP.NET状态管理...
SQL注入是一种常见的网络安全漏洞,攻击者通过在Web应用的输入框中输入恶意SQL语句,从而能够控制数据库。SQL注入漏洞可以让攻击者获取数据库信息、表结构甚至整个数据,对系统安全构成严重威胁。 3.2 工具检测 为...