安全之路 线路图总结
web安全渗透总结
渗透流程
# 输入的特殊数据能被当做系统的解释器所执行进行输出,就是渗透的关键所在。
# 我们看进化之路这个图,任何软件或者程序或者框架、底层都是对操作系统的命令解释器发出指令,操作系统去执行计算或者输出。
# 那么提供数据交互的的窗口就是攻击和防守的必争之地,也就演伸出owasp top 10榜单
# 渗透的过程亲疏远近的关系,就是根据距离系统shell权限、或者数据资料而制定的,因此出现了N种渗透手法和思路
明确目标
1、域名
2、IP
收集目标信息
漏洞探测
漏洞验证
提取信息
信息分析
信息整理
形成报告
- 记好:一切的安全问题都体现在“输入输出”上,一切的安全问题都存在于“数据流”的整个过程中。
- 记好:“数据流”、“输入输出”这两个关键点。
@来源于知乎 余炫
1. 如果在操作系统层上没处理好,比如Linux的Bash环境把“特殊数据”当做指令执行时,就产生了OS命令执行的安全问题,这段“特殊数据”可能长得如下这般:; rm -rf/;
2. 如果在存储层的数据库中没处理好,数据库的SQL解析引擎把这个“特殊数据”当做指令执行时,就产生SQL注入这样的安全问题,这段“特殊数据”可能长得如下这般:' union select user, pwd, 1, 2, 3, 4 from users--
3. 如果在Web容器层如nginx中没处理好,nginx把“特殊数据”当做指令执行时,可能会产生远程溢出、DoS等各种安全问题,这段“特殊数据”可能长得如下这般:%c0.%c0./%c0.%c0./%c0.%c0./%c0.%c0./%20
4. 如果在Web开发框架或Web应用层中没处理好,把“特殊数据”当做指令执行时,可能会产生远程命令执行的安全问题,这段“特殊数据”可能长得如下这般:eval($_REQUEST['x']);
5. 如果在Web前端层中没处理好,浏览器的JS引擎把“特殊数据”当做指令执行时,可能会产生XSS跨站脚本的安全问题,这段“特殊数据”可能长得如下这般:'"><script>alert(/cos is my hero./)</script>
是否能够从零开始搭建起一个网站?(网站架构)
是否了解过 HTTP 协议原理?例如用抓包软件分析过 HTTP请求和响应包有什么内容?(Web通信协议)
是否能看懂网页源码,或者用 HTML / CSS / JavaScript 做过前端页面?(Web前端)
是否清楚什么是 MVC/MTV 架构,或者用 Python / PHP / Java 做过后端架构?(Web后端 )
是否了解过常见的 Web容器/中间件,或者用过 Apache / Nginx / Tomcat?(Web容器)
是否掌握任一常见的数据库技术,包括但不限于 MySQL / SQLsever / Oracle?(数据库)
如果真的掌握了以上这些 Web 技术,搞懂了网站前后端原理,甚至在代码层面能亲手开发出来,就能理解这样的一个Web安全渗透测试图:

由于有 Web 前端语言基础,那么学 XSS 和 CSRF 漏洞会很快(客户端安全)
由于有 Web 后端语言基础,那么会很快搞定 Webshell木马、文件上传、代码执行等漏洞(服务端安全)
由于有 数据库 SQL 语言基础,那么你学 SQL 注入漏洞或者搞手工注入会感到轻而易举(数据库安全)
……
总而言之,Web安全渗透测试技术,首先是建立在 Web 技术之上的,绕开这些技术谈安全谈渗透,那便是 "空中楼阁"。
1、单机架构
2、垂直架构
3、集群架构
4、SOA架构
5、微服务架构
浙公网安备 33010602011771号