设为主页 | 加入收藏 | 繁體中文

论在mssql中public和db_owner权限下拿到webshell或者

  作者:许文强 
  联系方式:QQ:57133683
  在看之前我们先回顾一下目前在公开或者已知的public和db_owner权限拿到webshell或者系统权限的思路和要领(sysadmin权限我就不说拉,给你这么一句,只要是sysadmin,拿不到webshell或者系统权限那是你的无能)public下面我还没见到一种可以真正能利用的要领。db_owner目前公开的要领主要有5种:第一种便是最广泛的backup,现在利用差异备份生成的asp文件确实要比曩昔小拉不少,但能否失掉webshell,目前成功率还不是很高。第二种便是在下的全能提权,此法成功率几乎为零,只要在特定的条件下面才气完成。第三种便是LCX大虾在《MSSQL db_owner脚色注入间接获得系统权限》,所说的利用xp_regread读出VNC在注册表的加密密码,然后破解,间接拿到系统权限,这种要领局限性比较大,要是对方主机没有装vnc,你怎样办。第四种便是利用xp_regwrite再注册表里间接加个系统帐号或者间接写个webshell,在主机重起的时间就可以拿到webshell或者系统权限。此法实用范畴比较大,成功率也相对前3种较高点,但缺点也是不言而喻的,便是不克不及够马上失掉webshell,需要对方重起。第五种便是利用添加作业的一些存储历程,sp_add_job,sp_addtask之类失掉系统权限。理论上应该说是目前这5种内里成功率最高的的一种吧(忧郁,我在本机测试的时间一次也没成功过,可能是操作系统的原因吧)。
  看过以上5种要领后,应该说目前在db_owner权限下面失掉系统权限的的手段无论是成功率照旧从效果来看,都照旧不太抱负的。呵呵要是我报告你另有第6种,第7种,第8种呢,而且每个都比以上任何一种的要领的成功率都高。呵呵,你信不信。我先先容一个大家应该都知道的,而且可能大家都每每用,但是却没想到他另有另一面的要领,我把他叫做——瞒天过海。再先容之前还得有请列位看官先把我制造的动画看一下。
  看拉之后,不知道网管们会做何感触啊,想不到只要相对public权限(我在movie内里只要public权限,信赖看过动画的列位也应该看明白拉,之以是说是相对,那是因为我在master中有db_owner权限)的我们居然可以使用只要sysadmin才气用的sp_oacreate及sp_oamethod吧,利用sp_oacreate,sp_oamethod我们可以说是无所不克不及,你可以用来写个webshell乃至间接加个系统帐号。而且利用sp_oacreate及sp_oamethod写出来的webshell但是没有乱码的哦。那么为什么只要 sysadmin 牢固办事器脚色的成员才气实行的 sp_OACreate、sp_oamethod(呵呵,M$讲的),而只要相对public权限的我们却好使用,原因我也不太明白,可能是M$送给我们的“彩蛋”吧。
  可能你会问,那要是在master中是public权限,其他数据库都是public权限的情况下,我们还能失掉webshell或者系统权限吗?我现在就报告你,那是绝对不行能的事变,细致我的意思是说,在绝对public权限下面,你想经过存储历程以及扩展存储历程,失掉webshell或者系统权限那是绝对不行能的事变,除非你借助其他要领才有可能在绝对的public权限下面,才有可能失掉webshell或者系统权限,单靠sql的力量是一定不敷的。我在我的《终极利用要领》一文内里说的public权限的用户拿到webshell乃至系统权限的要领至少有4种,是指在相对的public权限下面,至少有4种以上。绝对的情况下面,你想用存储历程或者扩展存储历程拿到webshell或者系统权限是绝对不行能的。下面我来说说为什么在绝对的public权限下面是绝对不行能的.
  可能会有人说可以利用sp_add_job,sp_add_jobstep,sp_add_jobserver,sp_start_job,sp_addtask这些存储历程可以失掉webshell或者系统权限啊,的确是可以,(忧郁,我在本身机器上作实验一次也没成功过,肉鸡上却可以,不懂)但要在SQLSERVERAGENT办事开启的情况下面,而且默许是不开启的哦,你想利用xp_servicecontrol来启动啊,你到查询分析器输出exec master..xp_servicecontrol 'start','SQLSERVERAGENT'试试看,看看是不是出现错误拉。
  就算是public可以使用的xp_regread,xp_dirtree,xp_subdirs这些轻微对你有用的存储历程,就算是给你用,你在检测对方的网站的时间也没办法用,你起首要建个表吧,然后才气把你要读的键值或者你要看的盘符插到表内里吧,末了才气经过暴出来才气看见你想要看见的内容。但是不要忘拉public是没有建表,插入,更新,备份等权限的,以是第一关你就过不去,你只能除拉select照旧select。
  至于其他的有伤害的存储及扩展存储我就不逐一举例拉,不是权限不敷便是有限制。以是综上所述,在绝对public权限下,想要只依附sql的力量拿到webshell及系统权限是绝对不行能的事变(假如你可以做到的话,作个动画给大家看看,成功的话,那你绝对是牛人中的牛人拉。)
  网管们也不要开心的太早拉,就算是在绝对的public权限下,只要条件成熟,sql注射配合其他伎俩照旧可以拿到webshell的,假定你的网站有sql injection毛病,但是是绝对的public权限,“黑客”们固然光凭sql的力量是无法失掉webshell,但可以利用select暴出你的办理员密码然后到后台,经过上传(或者干脆便是上传毛病)或者备份,修正,创立失掉一个webshell,也可能用木马代替你的一个正常文件,失掉webshell。当然要领另有许多,不行能逐一列举出来。
  sql injection只是剧本毛病的冰山一脚,网管们不要以为根绝拉sql injection就可以高枕无忧,就算你真的根绝拉sql injection,但是一旦在其他中央出拉题目,列如跨站拉(中国目前至少90%以上的网站都有这个题目,纵然大型流派网站也不克不及幸免),上传拉(近来上传毛病的确是火拉一阵啊),暴库拉(经过暴库失掉数据库名,要是后缀是asp或asa的可以插入一句话木马),等等,只要你一个很小的中央出现拉题目,那么就有可能带来巨大的丧失。在这里我想给所有网管们一个建议:
  对付那些公开的或者是已知的毛病和题目,我们一定要处置惩罚好,办理好,而对付那些没有公开或者只要少数人掌握的毛病,我们只要作好齐备的防备步伐,这样才气在"灾祸"来临时把丧失降到最低。
  总之一句话:宁静是一个团体。
  后记:
  可能会有人说有谁回在其他数据库内里都是public的情况下面,而惟独给master,db_owner权限呢?确实,这种概率确实很低。在实战public提权中也没多大利用价值。
  呵呵,那要是在其他数据库是db_owner权限,你认为master中具有db_owner的概率大不大?我以我实战的的经历报告你,至少90%的网站会在给他默许数据库db_owner权限的同时,同时给master,db_owner权限,尤其是在他数据库少的时间,只要2,3个用户数据库的情况下,100%在master中具有db_owner权限。呵呵,那你说在db_owner权限下利用价值大不大。而且在所有有关的册本内里都说拉只要sysadmin才气用的sp_oacreate及sp_oamethod,以是大少数网管都市认为纵然我们找到注射点,也没有权限使用而不会删除。纵然删除拉,也无所谓,由于MSSQL壮大的功能再加上大量丰富的存储历程及扩展存储历程,我们照旧有办法失掉webshell乃至系统权限的,以是说最好的要领便是根绝sql injection。
  应该有不少人都市在看拉之后回说我在N年前就知道拉,早就会用sp_oacreate和sp_oamethod拉,不错,你可能很早就知道拉,我也很早就知道拉,但是你知道只要有相对public权限或者说db_owner权限也可以使用吗?你可能还以为只要sysadmin牢固办事器脚色的成员才气实行吧。
  可能有的人看过以后会有人问我要工具,呵呵,实在网上面早就有拉,xiaolu写sqlcomm内里有这个功能,不外我觉得不太好用本身又重新写拉个。这里多说几句,不停用工具的话,会把人变傻的,工具只是武器,思想才是魂魄,工具只是提高效率而已,并不代表你的技术高明。思想决定统统
  (版权所有,未经允许,不得用于贸易目标只能用于民间交流)
 


    文章作者: 福州军威计算机技术有限公司
    军威网络是福州最专业的电脑维修公司,专业承接福州电脑维修、上门维修、IT外包、企业电脑包年维护、局域网网络布线、网吧承包等相关维修服务。
    版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处 、作者信息和声明。否则将追究法律责任。

TAG:
评论加载中...
内容:
评论者: 验证码: