D Blog

Just do it!

Chapter 6 Attacking Authentication(3) - Implementation Flaws in Authentication

参考: The Web Application Hacker’s Handbook Chapter 6 由于实施中的错误,即使是设计良好的身份验证机制也可能非常不安全。 这些错误可能导致信息泄漏,完整的登录绕过或削弱所设计机制的整体安全性。 与设计缺陷(例如劣质密码和强行强制性)相比,实现缺陷往往更微妙且更难检测。 因此,它们通常是针对最关键安全性应用程序进行攻击的富有成效的目标,在这些应...

Chapter 6 Attacking Authentication(2) - Design Flaws in Authentication Mechanisms(4)

参考: The Web Application Hacker’s Handbook Chapter 6 1.非唯一用户名(Nonunique Usernames) 某些支持自我注册的应用程序允许用户指定自己的用户名,而不强制要求用户名唯一。 尽管这种情况很少见,但作者已经遇到了不止一种应用程序。 这代表设计缺陷,其原因有两个: 1.在注册过程中或在随后的密码更改过程中,与另一用户共...

Chapter 6 Attacking Authentication(2) - Design Flaws in Authentication Mechanisms(3)

参考: The Web Application Hacker’s Handbook Chapter 6 1.”记住我”功能(“Remember Me” Functionality) 应用程序通常会实现“记住我”功能,以方便用户使用。 这样,用户无需在每次通过特定计算机使用该应用程序时都重新输入用户名和密码。 这些功能通常在设计上是不安全的,并且使用户容易受到本地和其他计算机上用户的攻击:...

Chapter 6 Attacking Authentication(2) - Design Flaws in Authentication Mechanisms(2)

参考: The Web Application Hacker’s Handbook 1.证书传输的脆弱性(Vulnerable Transmission of Credentials) 使用未加密的HTTP协议传输,登录凭证.很容易被监听和截获.根据用户位置,可能的监听者如下: 在用户本地网络 在用户的IT部门 在用户的同一个ISP内(移动,联通,电信) 在Intern...

核心防御机制

参考:The Web Application Hacker’s Handbook (Chapter 2) web应用程序的基本安全问题——所有用户输入都是不可信的——导致了应用程序使用许多安全机制来防御攻击。实际上,所有的应用程序都采用了概念上类似的机制,尽管设计的细节和实现的效率差别很大。 web应用程序使用的防御机制包括以下核心元素: 1.处理用户对应用程序数据和功能的访问,以...

Chapter 5 Bypassing Client-Side Controls(4) - Capturing User Data:Browser Extensions

参考: The Web Application Hacker’s Handbook 1.安全地处理客户端数据(Handling Client-Side Data Securely) 如您所见,Web应用程序出现了核心安全问题,因为客户端组件和用户输入不在服务器的直接控制范围内。 客户端以及从客户端接收的所有数据本来就是不可信的。 1.1 通过客户端传输数据(Transmitting D...

Chapter 6 Attacking Authentication(2) - Design Flaws in Authentication Mechanisms(1)

参考: The Web Application Hacker’s Handbook 1.Design Flaws in Authentication Mechanisms(1)(身份验证机制中的设计缺陷) 身份验证功能比Web应用程序中通常使用的任何其他安全机制受更多的设计弱点困扰。 即使在应用程序根据用户名和密码对用户进行身份验证的看似简单的标准模型中,该模型的设计缺陷也可能使应用程序...

Chapter 6 Attacking Authentication(1) - Authentication Technologies

参考: The Web Application Hacker’s Handbook 从表面上看,身份验证是Web应用程序中采用的所有安全机制中最简单的一种。 在典型情况下,用户提供其用户名和密码,应用程序必须验证这些项目正确无误。 如果是这样,则允许用户进入。如果不是,则不允许。 身份验证也是应用程序防范恶意攻击的核心。 它是防止未经授权访问的第一道防线。 如果攻击者可以打败这些防御措施...

Chapter 5 Bypassing Client-Side Controls(3) - Capturing User Data:Browser Extensions

参考: The Web Application Hacker’s Handbook 1. 捕获用户数据:浏览器扩展(Capturing User Data: Browser Extensions) 除HTML表单外,捕获,验证和提交用户数据的另一种主要方法是使用在浏览器扩展(例如Java或Flash)中运行的客户端组件。在Web应用程序中首次使用时,浏览器扩展通常用于执行简单且通常是修饰...

Chapter 5 Bypassing Client-Side Controls(2) - Capturing User Data:HTML Forms

参考:The Web Application Hacker’s Handbook 1.捕获用户数据:HTML表单(Capturing User Data: HTML Forms) 应用程序使用客户端控件来限制客户端提交的数据的另一种主要方式发生于服务器最初未指定但在客户端计算机本身上收集的数据。 HTML表单是捕获用户输入并将其提交给服务器的最简单,最常见的方法。 使用此方法的最基本用...