02基础入门-Web应用&架构搭建&漏洞&Http数据包&代理服务器
一.网站搭建前置知识
域名,子域名,DNS,HTTP/HTTPS,证书等
二.WEB 应用环境架构类
开发语言:asp, php, aspx, jsp, java, python, ruby, go, html, javascript 等
程序源码:根据开发语言分类;应用类型分类;开源 CMS 分类;开发框架分类等;
源码的作用不同分了类,网站的源码有名字,开源出来能公开下载或商用就称之为CMS;将网站功能封装到一个程序内就叫框架
中间件容器:IIS, Apache, Nginx, Tomcat, Weblogic, Jboos, glasshfish 等;
中间件容器就是支撑网站运行的东西,针对不同的源码有更优秀的选择
数据库类型:Access, Mysql, Mssql, Oracle, db2, Sybase, Redis, MongoDB 等;
一般用于存储网站相关数据
服务器操作系统:Windows 系列,Linux 系列,Mac 系列等
第三方软件:phpmyadmin, vs-ftpd, VNC, ELK, Openssh 等
三.WEB 应用安全漏洞分类
SQL 注入,文件安全,RCE 执行,XSS 跨站,CSRF/SSRF/CRLF,
反序列化,逻辑越权,未授权访问,XXE/XML,弱口令安全等
要先搞清楚漏洞产生在哪个层面(程序源码、中间件容器等)才能去看存不存在
四.WEB 请求返回过程数据包参考
请求数据包,请求方法,请求体,响应包,响应头,状态码,代理服务器等
Request,Response,User-Agent,Cookie,Server,Content-Length 等
Http协议数据包简单总结:HTTP协议数据包简单总结 - cherry_cui - 博客园 (cnblogs.com)
WEB请求处理一:浏览器请求发起处理 - 简书 (jianshu.com)



五.实际案例
1.请求包-新闻回帖点赞-重放数据包
在新浪新闻点赞后,右键点检查来查看点赞的数据包,具体解读可以看四的链接

现在用发送相同数据包的方式实现继续点赞同一个评论,用burp


下面192.168.1.9是IP地址,可以在cmd里面ipconfig查看

抓个包


点赞一个评论抓到包

然后重复发送包就可以实现点赞了

2.请求包-移动端&PC 访问-自定义 UA 头(burp原理)
burpsuit原理解释(重要):
软件代理设置原理:工具设置监听127.0.0.1 8888也就是本地地址,浏览器也设置的127.0.0.1 8888,二者的网络出口都是本地,所以可以通讯,相当于数据包先到工具,然后工具拦截数据包,选择性地丢弃或放行
至于设置192.168.1.9 8888:虚拟机虽然在本机上面,但虚拟机是一个单独的系统,在设置里面有一个WiFi就是一个虚拟的地址,如果要监听模拟器的数据包的话,就要监听本地IP地址192.168.x.x(可以ipconfig查看),给模拟器的网络切上代理
如果代理写127的话,那么指向的是模拟器的本地,在模拟器的本地没有burp所以抓不到,要通过192来找到burp来抓
burp相当于一个代理,操作浏览器发送数据包给网络服务器的路上要经过这个代理(浏览器→代理→服务器),burp作为代理会拦截这个数据包,此时来对这个包进行操作,打开下图中的Intercept is on按钮就是开始监听,然后监听到数据包后按Forward放行/按Drop丢弃
对于访问的浏览器,PC端和手机端访问的界面会有所不同,这和数据包的UA头有关,做手机端安全测试时要用电脑,就可以通过burpsuit更改数据包内识别电脑操作系统的字段来实现在电脑上查看手机页面,用burp抓取访问360搜索的数据包分别如下,在拦截数据包的时候调整即可


3.返回包-网站文件目录扫描-返回状态码(网络扫描工具)
返回状态码:判断文件是否存在
举个例子,访问一张图片的地址,如果是200就是存在,如果是404就是不存在


如果判断的是文件夹,如下403代表存在,404代表不存在


目录扫描工具
用于扫描网站的敏感文件和敏感目录,原理就和上面一样利用返回状态码判断
其他返回码判断参考四的文章
3XX表示跳转(处置过程,判断可有可无),5XX表示内部错误(服务器问题,文件判断可有可无)
接下来可以用burp试着扫描2019目录下面有哪些目录,操作如下(不需要会)


设置一个1




结果可观

4.数据包-WAF 文件目录扫描-代理服务器
上面说的是本地代理,接下来说的是远程代理,去买一个代理使用,这样被某某拉黑IP后就可以使用新的IP访问,就可以防止被封IP后无法访问

设置白名单

在浏览器配置代理

5.搭建一个网站
- 先购买一个域名

- 然后购买一个服务器,国内要备案,非大陆地区的服务器例如港澳的不需要备案

选择镜像,新手一般选windows

然后选安全组,有多台服务器分到一个组方便管理

然后配置带宽计费模式,一般按使用流量计费,然后确认付款就可以了

然后到云服务器实例里面看自己的服务器

用这个IP地址,用xshell或者本地的远程桌面连接访问
- 下载一个宝塔,宝塔是一个集成软件,将搭建网站需要的东西集成在一起方便下载使用,在服务器上安装

复制地址访问,输入账号密码

安装插件

可以在软件商店里面安装插件

在域名管理里面点解析

然后解析到刚刚买的那个服务器的IP地址

在宝塔部署(以Zblog博客为例),填上刚刚的域名

然后就有了
本节课知识点:
明白网站基础知识
了解Web应用架构
了解Web应用安全漏洞分类
明白Web请求返回过程
学会利用burp截取数据包,修改数据包发送数据包
学会用返回状态码判断目录是否存在
学会用burp扫描目录
学会搭建网站