草舍窝棚 發表於 2023-6-28 00:00:00

sql注入教程之类型以及提交注入

<div id="navCategory"><h5 class="catalogue">目录</h5><ul class="first_class_ul"><li>
        参数类型</li><li>
        明确请求方法<ul class="second_class_ul"><li>
        1.get请求</li><li>
        2.post請求</li><li>
        3.cookie注入</li><li>
        4.http头注入</li></ul></li><li>
        总结<ul class="second_class_ul"></ul></li></ul></div><div id="navcategory">
        <h5 class="catalogue">
                目录</h5>
        <ul class="first_class_ul">
<li>
                        参数类型</li>
                <li>
                        明确请求方法
                        <ul class="second_class_ul">
<li>
                                        1.get请求</li>
                                <li>
                                        2.post請求</li>
                                <li>
                                        3.cookie注入</li>
                                <li>
                                        4.http头注入</li>
                        </ul>
</li>
                <li>
                        总结
                        <ul class="second_class_ul"></ul>
</li>
        </ul>
</div>
<p class="maodian">
        </p>
<p class="maodian"></p><h2>
        参数类型</h2>
<p>
        这里说的参数是源码中存在注入的地方。</p>
<p>
        其中参数类型有:数字、字符、搜索、json等。</p>
<p>
        其中sql语句干扰符号有:',",%,),}等,过滤首先考虑闭合这些符号,再进行注入测试。</p>
<p>
        例如php中的代码:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlightersql" id="highlighter_882861">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="sql plain">$</code><code class="sql keyword">name</code> <code class="sql plain">= $_get[</code><code class="sql string">'x'</code><code class="sql plain">]</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="sql plain">$sql = </code><code class="sql string">"select * from user where name='$name'"</code><code class="sql plain">;</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        请求时:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlightersql" id="highlighter_82213">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                        <div class="line number7 index6 alt2">
                                                                7</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="sql plain">http://www.xxx.com/x.php?id=xxx </code><code class="sql color1">and</code> <code class="sql plain">1=1</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                         </div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="sql plain">返回sql语句:</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="sql keyword">select</code> <code class="sql plain">* </code><code class="sql keyword">from</code> <code class="sql color2">user</code> <code class="sql keyword">where</code> <code class="sql keyword">name</code><code class="sql plain">=</code><code class="sql string">'xxx and 1=1'</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                         </div>
                                                                <div class="line number6 index5 alt1">
                                                                        <code class="sql plain">过滤方法:</code>
</div>
                                                                <div class="line number7 index6 alt2">
                                                                        <code class="sql plain">http://www.xxx.com/x.php?id=</code><code class="sql string">'xxx and '</code><code class="sql plain">1</code><code class="sql string">'='</code><code class="sql plain">1</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p>
        许多网站有搜索功能,其搜索框可能存 在注入点,注入时需闭合%。</p>
<p>
        sql中的搜索:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlightersql" id="highlighter_79599">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="sql keyword">select</code> <code class="sql plain">*</code><code class="sql keyword">from</code> <code class="sql color2">user</code> <code class="sql keyword">where</code> <code class="sql keyword">name</code> <code class="sql color1">like</code> <code class="sql string">'%参数%'</code><code class="sql plain">;</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
</div>
<p class="maodian">
        </p>
<p class="maodian"></p><h2>
        明确请求方法</h2>
<p>
        请求方法有:get、post、cookie、request、http头等</p>
<p>
        get请求:通过url直接请求</p>
<p>
        post请求:通过请求正文进行请求</p>
<p>
        cookie:cookie属于请求头部分,有些网站可通过cookie请求的数据进行注入</p>
<p>
        request请求:既可以通过get请求,也可以通过post请求</p>
<p>
        http头:http请求头域中有些参数值可能存在可以访问服务器中数据库中某些信息,可能存在注入</p>
<p class="maodian">
        </p>
<p class="maodian"></p><h3>
        1.get请求</h3>
<p>
        sqlilabs第5关:</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/e3453185a7b7b692a9afc1748f540d37.jpg"></p>
<p>
        提交无反应,说明参数有有东西,查看源码</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/075b18458d0bd7ffd1fe7e4a62396964.jpg"></p>
<p>
        发现参数用单引号括起来了,需要闭合。</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/832379b70360c0f353f725ccf81c1f6c.jpg"></p>
<p>
        提交无反应,说明是无回显注入,暂时介绍到这里,后续在讲无回显注入方法。</p>
<p>
        sqlilabs第6关</p>
<p>
        第六关仍是无回显</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/f185003fe459bfa4034ec89b2ddbd88c.jpg"></p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/1acec787f7aad79a3055752b8aae17a7.jpg"></p>
<p>
        查看源码</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/80852eaa475937d9e83b27dc3f563adb.jpg"></p>
<p>
        发现参数用双引号括起来的,要过滤双引号</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/245b2e8a57a570b65cc790854a2ba76a.jpg"></p>
<p class="maodian">
        </p>
<p class="maodian"></p><h3>
        2.post請求</h3>
<p>
        sqlilabs第11关</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/b35742c80cd9fadbd15b7cc2672072f6.jpg"></p>
<p>
        抓个包试试:</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/c8af0e6b8ef4dfd1cbefff5d653af1ea.jpg"></p>
<p>
        是post请求方法,直接构造post请求方法进行注入</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/8aefae101023366c241f6d964b8533fc.jpg"></p>
<p class="maodian">
        </p>
<p class="maodian"></p><h3>
        3.cookie注入</h3>
<p>
        sqlilabs第20关</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/4bf34dbd40d0690ced389ed4e389b280.jpg"></p>
<p>
        被转义,尝试cooki注入:</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/eec8759c2850f9897ac27982068f762a.jpg"></p>
<p>
        测试可行。</p>
<p class="maodian">
        </p>
<p class="maodian"></p><h3>
        4.http头注入</h3>
<p>
        sqlilab第18关</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/482379f88253726d92b73edfafe15a3b.jpg"></p>
<p>
        显示ip和user agent,通过分析源码,这里对uname和passwd参数进行了处理,但是还有两个新的全局变量可控,ip和user-agent:</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/96155262dbbcf36cb750e9fadbcbc358.jpg"></p>
<p>
        修改user-agent内容为xxx,发包:</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/e36b4f933ccc3ebde9da71717e58bf25.jpg"></p>
<p>
        通过修改user-agent进行报错注入:</p>
<p>
        <img title="sql注入教程之类型以及提交注入" alt="sql注入教程之类型以及提交注入" loading="lazy" src="https://zhuji.jb51.net/uploads/img/202305/8c40e5cdb4fb0e47fc170c75f0d130a2.jpg"></p>
<p class="maodian">
        </p>
<p class="maodian"></p><h2>
        总结</h2>
<p>
        到此这篇关于sql注入教程之类型以及提交注入的文章就介绍到这了,更多相关sql注入类型及提交内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!</p>
<p>
        原文链接:https://www.cnblogs.com/zhaohzaomumu/p/15077741.html</p>
頁: [1]
查看完整版本: sql注入教程之类型以及提交注入