28、web攻防——通用漏洞&SQL注入&HTTP头XFF&COOKIE&POST请求

文章目录


在这里插入图片描述

$_GET:接收get请求,传输少量数据,URL是有长度限制的;
$_POST:接收post请求;
$_COOKIE:接收cookie,用于身份验证;
$_REQUEST:收集通过 GET 、POST和COOKIE 方法发送的表单数据;
$_SERVER:接收数据包中的一些内容,如浏览器信息、当前访问url地址等;
在这里插入图片描述

网站功能点:

  1. 后台要记录操作访问IP
    IP要进行代码的获取,获取到之后,IP会不会记录到数据库中?IP要写到数据库,如果IP能够自定义数据,是不是就能尝试SQL注入。

  2. 网站要根据用户的访问设备给予显示页面
    用手机和电脑访问同一个网站,页面显示不一样。后端判断方式:判断User-Agent字段。具体做法:接收访问的UA信息,将各种UA进行数据库整理后,用户访问后对比数据库中的UA值进行判断(涉及数据库查询)。

  3. 网站要进行文件上传、用户登录
    用户登录,接受账号密码后进行数据库查询后对比。

sqlmap使用POST方式提交数据:
在这里插入图片描述

header注入用sqlmap跑的时候,在需要注入的地方加*,命令python sqlmap.py -r xxx.txt

限制登录次数

  • 一般通过IP来进行判断,然后进行数据库查询。(白盒)
    在这里插入图片描述

  • 它怎么知道是你访问的?或者说后端凭什么确定你的登录次数。一般通过获取IP,这里可以换个IP看看返回情况。若换了IP,发现仍然显示可以尝试4次。说明通过IP来确定登录次数。
    在这里插入图片描述

黑盒测试:功能点分析;
白盒测试:功能点分析&关键代码追踪。

总结

  • 数据库类型决定攻击手法、payload不一样;
  • 数据类型注入,payload考虑闭合、数据格式;
  • 提交方式,数据请求不同,注入需要按照知道的方式去测试
    • url没有参数并不代表没有注入,有些数据会在数据包才有体现;
    • http数据包任何一个地方只要被接受,就有可能产生漏洞。

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-19 18:12:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-19 18:12:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-19 18:12:01       82 阅读
  4. Python语言-面向对象

    2024-01-19 18:12:01       91 阅读

热门阅读

  1. npm install 太慢?解决方法

    2024-01-19 18:12:01       59 阅读
  2. git merge 和 git pull的区别是什么

    2024-01-19 18:12:01       48 阅读
  3. Github Copilot 的使用方法和快捷键

    2024-01-19 18:12:01       71 阅读
  4. 公司OA办公系统使用阿里云服务器怎么选配置?

    2024-01-19 18:12:01       60 阅读
  5. Linux常用命令

    2024-01-19 18:12:01       47 阅读
  6. Spring Boot3 系列:Spring Boot3 跨域配置 Cors

    2024-01-19 18:12:01       35 阅读
  7. 《设计模式的艺术》笔记 - 享元模式

    2024-01-19 18:12:01       49 阅读
  8. C语言中各变量声明及注意事项

    2024-01-19 18:12:01       56 阅读
  9. pytorch学习(一)、tensorboard和torchvision

    2024-01-19 18:12:01       51 阅读
  10. 用python实现word中所有图片变清晰

    2024-01-19 18:12:01       61 阅读