购买云服务器,有个“网络和安全组”,表示如果你有多个服务器,你可以把它们归类到同一个组,组里的服务器们共享安全策略:
建站前置知识
网站包括:开发语言、程序源码、中间件容器、数据库类型、服务器操作系统、第三方软件(如phpmyadmin,vs-ftpd,VNC,ELK,Openssh等)。
phpMyAdmin是基于PHP 开发的基于B/S模式的 管理MySQL 的软件。
中间件容器
IIs,Apache,Nginx,Tomcat,Weblogic,Jboos,glasshfish等.
不同的中间件对不同功能或不同源码的网站,支持性上的优势有大有小,所以会有Mysql数据库搭配php脚本的程序,SQlServer数据库搭配asp / aspx脚本、IIS多搭配ASP / ASPX;apache则搭配php居多。tomcat是jsp居多。
WEB应用安全漏洞分类
SQL注入,文件安全(包括文件上传、下载、删除等),RCE执行,XSS跨站,CSRF/SSRF/CRLF,反序列化,逻辑越权,未授权访问,XXE/XML,弱口令安全等。我们学的漏洞,大部分是产生于程序源码层面。
WEB请求返回过程数据包格式
HTTP协议通信过程:浏览器建立与web服务器之间的连接——>发送请求数据包——>返回响应数据包——>web服务器关闭连接
请求数据包
1.请求行:请求类型/请求资源路径、协议的版本和类型
2.请求头:一些键值对,一般由w3c定义,浏览器与web服务器之间都可以发送,表示特定的某种含义
Accept:指浏览器或其他客户可以接爱的MIME文件格式。Servlet可以根据它判断并返回适当的文件格式。
User-Agent:是客户浏览器名称
Host:对应网址URL中的Web名称和端口号。
Accept-Langeuage:指出浏览器可以接受的语言种类,如en或en-us,指英语。
connection:用来告诉服务器是否可以维持固定的HTTP连接。http是无连接的,HTTP/1.1使用Keep-Alive为默认值,这样,当浏览器需要多个文件时(比如一个HTML文件和相关的图形文件),不需要每次都建立连接
Cookie:浏览器用这个属性向服务器发送Cookie。Cookie是在浏览器中寄存的小型数据体,它可以记载和服务器相关的用户信息,也可以用来实现会话功能。
Referer:表明产生请求的网页URL。如比从网页/icconcept/index.jsp中点击一个链接到网页/icwork/search,在向服务器发送的GET/icwork/search中的请求中,Referer是http://hostname:8080/icconcept/index.jsp。这个属性可以用来跟踪Web请求是从什么网站来的。
Content-Type:用来表名request的内容类型。可以用HttpServletRequest的getContentType()方法取得。
Accept-Charset:指出浏览器可以接受的字符编码。英文浏览器的默认值是ISO-8859-1.
Accept-Encoding:指出浏览器可以接受的编码方式。编码方式不同于文件格式,它是为了压缩文件并加速文件传递速度。浏览器在接收到Web响应之后先解码,然后再检查文件格式。
3.【空行】请求头与请求体之间用一个空行隔开;
4.请求体:要发送的数据(一般post方式会使用);例:userName=123&password=123&returnUrl=/
POST /contentapi/content/interaction/praise HTTP/1.1 Host: api.thepaper.cn User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/118.0 Accept: application/json Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2 Accept-Encoding: gzip, deflate Content-Type: application/json Content-Length: 42 Origin: https://www.thepaper.cn Connection: close Referer: https://www.thepaper.cn/ Cookie: acw_tc=ac11000116963221537402688e008af4a1b3b8114969229ab72ac11347fcb5; ariaDefaultTheme=undefined Sec-Fetch-Dest: empty Sec-Fetch-Mode: cors Sec-Fetch-Site: same-site name=name&age=11
响应数据包
1.状态行:协议版本、数字形式的状态代码和状态描述,空格分隔
常见状态码
1**:提示信息-表示请求已收到,继续处理
2**:发送成功(200)
3**:重定向
301 状态码表明目标资源被永久的移动到了一个新的 URI,任何未来对这个资源的引用都应该使用新的 URI。
302 临时跳转,跳转的地址通过Location指定
4**:客户端错误
400.客户端请求有语法错误,不能被服务器识别
401.访问页面没有授权,侧重于身份未认证,例如用户没登陆账号,尝试访问管理员权限的api时
403.没有权限访问该页面,侧重于服务器资源不给看
404.没有该页面
5**:服务端错误
500.服务器内部异常
504.服务器请求超时,没有返回结果
2.响应头:包含服务器类型、日期、长度、内容类型等
3.【空行】响应头与响应体之间用空行隔开
4.响应正文:程序处理后果,浏览器会将实体内容中的数据取出来,生成相应的页面
HTTP/1.1 200 OK Date: Tue, 03 Oct 2023 08:36:03 GMT Content-Type: application/json;charset=UTF-8 Connection: close Access-Control-Allow-Origin: https://www.thepaper.cn Access-Control-Allow-Credentials: true Access-Control-Expose-Headers: * Access-Control-Max-Age: 18000 Access-Control-Allow-Headers: Content-Type,h5Token,h5From,Client-Type PAPER-REQUEST-ID: aec9a3e281923f2c Strict-Transport-Security: max-age=31536000 Content-Length: 61 {"code":200,"data":1407,"desc":"æ••å••","time":1696322163648}
杂
burp抓包
我的电脑ip是1.2.3.4,我在电脑上启动了手机模拟器,将模拟器的网络代理设置为了1.2.3.4:8080,然后在电脑上启动burpsuite,并让burpsuite监听127.0.0.1:8080,但是burpsuite抓不到模拟器的数据包,如果让burpsuite监听1.2.3.4:8080,则burpsuite能抓到模拟器的数据包,为什么
127.0.0.1被称为本地回环地址(loopback), 本地回环地址主要用于网络软件测试以及本地机进程间通信,一旦使用回环地址发送数据,协议软件立即返回,不进行任何网络传输。
当您将burpsuite监听127.0.0.1:8080时,burpsuite将仅监听在本地回环地址上,即只接受来自本机的网络请求。因此,当模拟器尝试将请求发送到1.2.3.4:8080时,burpsuite将无法接收到这些请求。
状态码
文件夹 | 403存在 | 404不存在 |
---|---|---|
文件 | 200存在 / 403存在 | 404不存在 |
chmod 777 文件夹
,网页访问文件夹依旧是403
代理
解惑
为什么用https://ip138.com/、百度的查IP和php的检测访客IP的代码等手段,得到的结果是:
这个60开头不是我的本机真实IP:192.168.28.59,其实60.27.158.186是我的网关,也就是我的网络代理。我的电脑是在内网,IP:192.168.28.59在每个内网都可能有。我每次请求网页,都是请求包from me to 网关 to 服务器,对于服务器来说,他能追查到的最后一个公网IP就是我的代理(网关)IP,再往后,连网关也不知道192.168.28.59是来自哪个内网。
所以,连接同一局域网的多台设备,对于服务器记录日志来说,是同一IP,这也是有点赞功能的网页,不方便限制同一IP只能点赞一次的原因吧。
代理服务提供商
需求小的代理可以用一元机场:
需求大、专业可以用
老师根据提示 - 设置道代理和设置其他代理P一样,把tp3128.kd1pi.com作为代理的1P,把15818作为代理的端口即可,设置完就可以正常使用了,配置了浏览器或网络的代理,然后每次访问网站,IP都在变化:
代理的作用
如果网站把我的IP拉黑了,我开个代理,继续访问。
或者用目录扫描工具扫描网站,同一个IP短时间内请求1000次,多容易被封禁,不如让扫描,每10次请求换一个IP。这样网站来不及封你,刚知道你的IP我就换IP了。
一般我也不是天天都需要用到代理,快代理的按量付费就很适合安全人员的偶尔短期内有高需求,用到的时候再买,一个小时也就¥10内。
代理其他用途:薅羊毛党需要注册多个账号,官方常常限制同一IP注册多个账号;投票也会根据IP限制投票次数。
共有 0 条评论