WEB 应用程序技术基础

  • A+
所属分类:安全闲碎

每日学习打卡计划是信安之路知识星球开启的每天读书一小时,挑战打卡一百天的活动,能够坚持学习打卡 100 天的同学可以获得信安之路提供的百分成就徽章和证书,学习书籍可以自选,主要目的是养成每日读书学习的好习惯,并将自己的学习心得分享出来供大家学习,如下是本周打卡榜单:

WEB 应用程序技术基础

打卡一:P77-88

这部分内容都是在讲 HTTP 协议,学习 web 安全,http 协议的知识必不可少,这部分内容适合根据实际的网站抓包之后对照的学习,光看不太行,这个内容也是成长平台中的一个任务的要求,书中的内容还是比较全面的。

对于 http 协议,用的最多的关键词是 cookie、x-forword-for、user-agent、GET、POST、Referer、HttpOnly、404、200、500 等。

以前做 web 渗透的时候,有个 cookie 注入,造成漏洞的原因是获取参数使用 request 的方式,而不是 GET 或者 POST,但是在做安全防御的时候,只监测 GET、POST 获取的参数,而对于 COOKIE 中获取的参数为做处理,所以就造成了 COOKIE 注入,当时是有一种很通用的防御措施,还挺普遍。

这部分内容适合记忆,最好能够将本章节的内容都记下来,抓到一个数据包之后能够知道各个字段都是什么意思,比如 user-agent 是用来表示用户的浏览器的,而很多爬虫会把自己的 user-agent 改为搜索引擎的,从而骗过反爬虫的检测,毕竟很多网站还是希望可以被搜索引擎收录,提升知名度。

还有就是 https 的问题,目前网站基本普及 https,很多云服务商都可以免费申请单域名的证书,几年前,https 不普及的时候,在内网大家都会用 arp 欺骗来进行内网抓包,有人在使用 http 协议做认证的时候还是可以抓到不少账号密码的,现在这种方式就比较难了,在内网尽量不要做这么大的动作,很容易被发现,而且效果也不一定很好。

http 协议相关的其他内容还要大家亲自动手,理解数据包中各个字段的意思,剩下就看大家的了。

打卡二:P89-102

前面的内容讲了 web 应用的核心传输协议,协议是用户与 web 应用的交互通道,而这几页的内容主要让大家知道 web 应用是如何构成的,其中包含哪些组件,应用如何接受用户的输入等。

首先 web 应用接受用户提交参数的方式包括:url 中的参数(GET)、请求主体(POST)、cookie、REST风格(URL 路径),除了这些,user-agent 作为浏览器的标识,可以根据不同的 UA 展示不同风格的页面。

关于 web 应用的构成,前端的 html+css+JavaScript 技术,如今的 nodejs 框架等;中间件服务器的 IIS、Apache、Tomcat、nginx 等;后端语言的 PHP、Java、python、go、Asp.net 等;数据库的 mysql、mssql、oracle、monogo、redis 等;还有其他的一些加速和防御的组件,比如 CDN、Waf、负载均衡、文件系统、目录服务(ldap)等;这些都是组成 web 应用的核心组件,也是可能存在安全问题的根源,都是我们要学习和了解的技术点。

这部分内容都 web 应用组成的各个组件做了简单的介绍,更详细的内容可以去网站上自行搜索扩展,了解各个组件在整个 web 应用框架中所处的位置,如何识别 web 应用使用哪些技术栈,这样可以大大提升我们找出安全问题的效率。

打卡三:P103-108

这部分内容主要讲了跟 web 应用相关的几种编码方式,比如:URL 编码、Unicode 编码、HTML 编码、Base64 编码、十六进制编码,对于这类基础的编码方式我们都是需要熟悉,能够识别并且进行自定义编码,有很多在线平台可以进行各种编码,比如站长工具:https://tool.chinaz.com/tools/urlencode.aspx

信安之路 unicode 编码后:u4fe1u5b89u4e4bu8def

信安之路 url 编码后:%e4%bf%a1%e5%ae%89%e4%b9%8b%e8%b7%af

<信安之路> html 编码后:&lt;信安之路&gt;

信安之路十六进制编码后:e4bfa1e5ae89e4b98be8b7af

信安之路 base64 编码后:5L+h5a6J5LmL6Lev

还有很多其他的编码格式,需要自行扩展,这里提的几种编码方式都是比较容易识别的,各有各的特点。

在渗透测试的过程中会经常使用编码来绕过安全防御的策略,因为很多防御和检测规则都是基于正则表达式来的,所以绕过正则的检测也就可以绕过防御的措施。

WEB 应用程序技术基础

本文始发于微信公众号(信安之路):WEB 应用程序技术基础

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: