SQL注入
成因
程序未对用户的输入的内容举行过滤,从而直接代入数据库查询,以是导致了sql注入弊端。
思绪
在URL处可以通过单引号和and1=1and1=2等语句举行手工测试sql注入。
Post注入
比如背景登录框输入单引号测试注入,报错的话阐明存在注入可以直接抓包,用工具来完成注入。(在HTML中关于提交范例代码,尤其是背景登录和留言这些,都是必要post情势来提交的,而且post提交方式也是不会像get情势在URL中表现的。)关于SQL注入尚有,Cookie注入盲注爆错注入等等...
实例
输入单引号,举行开端判定,假如报错就阐明大概存在注入。
然后我,料想出真正实行的SQL语句应该是:select*frominfowherefid=623继承输入and1=1,and1=2来看下是否可以手工注入,就是查察页面是否存在表现性错误,而不是单引号式的错误。
由于我是转贴的,以是就没有这个截图,但是乐成的报错了。而and1=1和and1=2在SQL语句中是如许的:
如许的语句在数据库查询中是可以查询乐成的,623and1=1而这里的and是一个逻辑判定符,623是精确存在的,而1=1这个也是精确的啊!以是精确and精确,就会查询623这个,以是页面也就返回正常了,而1=2这肯定不对等,以是精确and错误,就会查询错误,以是报错。
既然存在注入了,懒的手工就直接扔sqlmap了。
XSS弊端
原理
web程序分析了用户的HTML代码操纵。说白了,就是程序员在计划网站中输入输出的部分的时间,没有对用户输入的内容举行过滤,从而导致用户输入恶意代码时,这些代码会被web程序给实行了。
Xss分类
反射型,存储型,DOM型,FLASH(DOM,FLASH不常用)
反射型xss:存在输入输出的地方,不具备转存数据库这一步,只是一个简单的输入输出。一样平常这类的弊端危害比力小,由于它的传播方式必要恶意用户把他构造好的恶意URL发给你,你点击才会触发的,一样平常有安全意识的很少会中招。
存储型xss:没有对用户输入的东西,举行过滤,就直接存储到数据库中。一样平常这类的弊端是危害最大的,而且可以运用在很多方面上,只要你知识牢固,头脑广阔,这个弊端,可以玩出很多格式来,不外该弊端,如今运用最广的就是在网站留言板这一类的,输入恶意代码,让网站管理员查察后,并中招,从而盗取cookie。
反射型实例
反射型(查察url)明白话总结:吃什么吐什么
发现php?S=24(下面的输出内容为1,测试下)
发现把s的内容更换之后页面的内容也随之更换,则此处应该存在xss反射弊端。
那我们构造下一个常用的java的弹窗代码,再看下结果。
回车一下。
通过测试,我们发现这是一个典范的反射型XSS弊端。
储存型XSS实例
这是一个存在储存型XSS弊端垂纶网站。
然后,我们鼠标右键简单的查察下网页源代码。
在查察源代码时,我们发现当领取码不便是98的时间就返回true,及领取码便是98。
我们任意输入领取码之后,就是弹出一个领取奖品页面,在这个页面,我们着实就可以盲打一下试试。
那么在开始之前,我们先任意找一个XSS平台,复制一段偷取cookie的恶意代码。
Xss
Xss插入的地方大多为标题跟内容(统统可以输出文本内容的都可以插入),然后我们试着插入下。
插入到接洽地点内里测试下能不能插入,(前面加个”)以防万一闭合下前面的标签。
#(这里,我着实不保举如许的插入,由于这个的格式,字数限定都是一些html这个层面的限定,发起举行抓包插XSS代码,如许被打到的几率更大。)
到这里就提交乐成了,那就等管理员中计就是了。
看来这个垂纶网站的管理员也是个时时关注信息,认真负责的管理啊!不像某些公司的那些运维们,泰半年的背景都不进,我记得我一个朋侪,前段时间,发了一个说说,大概内容是mlgbz,两年前插的一个留言板,我本日竟然收到这个cookie了。。。
分析弊端
利用web中心件自身的弊端,对畸形脚本格式举行了分析。
这个不多表明,程序自身研发时的题目。
IIS6.0
常见组合:server2003+IIS6(IE6.0)
1.正常分析格式包罗:asp,asa,cer
2.正常分析1.asp;.jpg|1.asa;.jpg|1.cer;.jpg|1.asp;xxxx.pdf3.正常分析1.asp文件夹下的恣意文件:比如说网站目次中有一个文件夹名为1.asp,那么这个文件夹下的恣意文件,比如1.jpg,1.pdf,1.doc,1.abc都会分析成asp脚本文件。再比如有一个链接:
https://www.zhutougg.com/abc.asp/1.pdf
假如该站的中心件为IIS6.0,那么这个链接就会分析成asp脚本。
备注:在利用上传弊端的时间,假如不能上传asp格式文件,先实行上传asa,cer格式,然后再实行上传1.asp;.jpg格式文件,假如可以控制上传后的目次,就上传test.jpg图片大马到1.asp目次下。
IIS7.5
常见组合:server2008+IIS7/IIS7.5
假如目标能分析PHP脚本,则可以实行上传1.jpg,然后访问%00.phpAPACHE2.2.*
常见弊端版本为2.0.*到2.2.*
apache文件分析方式
文件名由右往左分析。即1.jpg.pdfapache会先辨认pdf格式,然后再辨认jpg格式,由于apache可以或许辨认pdf格式,以是这里它不会分析.jpg格式。再比如1.jpg.abcapache先辨认.abc格式,再辨认.jpg格式,这里apache不认识.abc格式,以是这里apache将其分析成.jpg格式。
利用
上传1.php.abc1.jpg.abc.php.123.rar(?)
NGINX0.5.*|0.6.*|0.7-0.7.65|0.8-0.8.37
假如目标能分析PHP脚本,则可以实行上传1.jpg,然后访问%00.php
备注:在碰到nginx中心件时间,先找到网站的图片链接比如,然后直接在链接背面加上%00.php
别的常见的中心件
asp,aspx:iis5.0,iis6.0,iis7.0,iis7.0,iis8.0
php:apache,nginx,fast-cgi
jsp:tomcat,weblogic,jboss,jetty,GlassFish,Resin,IBMWebsphere
aspx的兄弟格式:ashx
jsp:jspx
实例:asp分析弊端
进入网站之后顺手测试下注入点(https://xxx/detail_industry_news.asp?id=6)手工测试之后发现存在sql注入,然后就扔注入工具里。
但是没有注入出来表单,厥后又换了多个注入工具举行注入,结果一样,都没有表单数据。
然后利用目次扫描器举行扫描,发现有一个webdata二级目次,本身推测会不会是数据库文件了?
然后,继承扫描二级目次发现webdata/webdata.mdb这个数据库文件,下载之后发现账号,暗码。
既然,账号暗码都有了,那就找背景吧。
目次扫描器,扫背景没找见==!那好吧,手工渐渐找。。。
末了在一个旁站的robots.txt文件里,发现一个特点,就是它这个旁站的背景是域名格式的背景,那主站是不是也是这个了?搞!
没想到还真是xx.xx/xx.xx如许背景。。。
那就进背景。
一股浓浓的南边站的味道,就像吃老干妈的感觉一样,那就先找数据库功能吧。
额,没有数据库备份这个功能,看来数据库备份拿shell这个方法是不可了。。。
不外这个站是IIS6.0的,存在分析弊端,还好日,那就找上传点吧。
找到一个上传点,先传个正常图片看看,看这个上传点是不是坏的,尚有会不会出来路径。
既然不是坏的,那就上传个aspDAMA吧。
看来不能直接上传,那好吧,抓包上传吧。
由于,我们事先知道了上传路径/bookpic/,以是我们直接利用IIS6.0的分析弊端,也就是(1.asp;.xx){xx是上传文件的名字}在文件夹背面加上1.asp;试试可以上传乐成并分析吗。
抓包,改包,来先看看。
来,看看我们能不能连上这个DAMA。
结果很不赖,被分析了,从而,也就拿下这个站了。
上传弊端加绕过方法
客户端检测
程序员一样平常利用Java来拒绝非法文件上传。
绕过方法
FireBug插件:将用于查验文件扩展名的onsubmit变乱删除。
中心人攻击:利用BurpSuite。起首把木马扩展名改为一张正常图片的扩展名,比如JPG扩展名,在上传时利用BurpSuite拦截上传数据,再将此中的扩展名JPG修改为PHP,就可以绕过客户端验证。(大概还必要相应地修改Content-Length)任何客户端验证都是不安全的。客户端验证是防止用户输入错误,镌汰服务器开销,而服务器端验证才可以真正防御攻击者。
服务器端检测
白名单与黑名单验证
黑名单过滤方法:界说不答应上传的文件扩展名
黑名单的绕过方法
1.攻击者可以从黑名单中找到Web开辟职员忽略的扩展名,如:cer
2.对文件的后缀名举行巨细写转换,比如黑名单中有php,可以将文件的后缀改为pHp,仅限windows平台
3.在windows体系下,假如文件名以“.”大概空格作为末了,体系会主动删除“.”与空格,利用此特性也可以绕过黑名单验证。(asp.或asp_)
白名单过滤方法:界说答应上传的文件扩展名
白名单的绕过方法
连合Web容器的分析弊端
MIME验证
php中通过$_FILE['file']['type']来查验
绕过方法:可以在BurpSuite中更改Content-Type的内容为image/jpeg
目次验证
在文件上传时,程序通常答应用户将文件放到指定的目次中,假如指定的目次存在,就将文件写入目次中,不存在的话则先创建目次,然后写入。
比如:在前端的HTML代码中,有一个隐蔽标签inputtype="hidden"name="Extension"value="up"/
在服务器端有如下代码:
if(!is_dir($Extension)){//假如文件夹不存在,就创建文件夹mkdir($Extension);
}
攻击者可以利用工具将表单中value的值由“up”改为“pentest.asp”,并上传一句话图片木马文件。
程序在吸取到文件后,对目次判定,假如服务器不存在pentest.asp目次,将会创建此目次,然后再将图片一句话暗码文件写入pentest.asp目次,假如Web容器为IIS6.0,那么网页木马会被分析。
00截断上传
在ASP程序中最常见,也就是%00将背面的字符都截断了,比如上传文件名为1.asp%00xxser.jpg。
实际操纵过程中,利用BurpSuite的Repeater中的HEX选项卡可以举行如许的操纵。
截断上传弊端不但出如今ASP程序上,在PHP、JSP程序中也存在如许的题目。
0x00不是针对全部基于白名单的后缀名查抄都能绕过,代码的实现过程中必须存在截断上传弊端。
逻辑弊端分类
诱骗暗码找回功能(恣意暗码重置等)
程序根据一个验证码来确定是用户本人,攻击者可以通过抓包改包,暴力破解,等方法来举行绕过。(弊端产生的缘故起因:前端验证,数据包中含CODE等)
思绪:fuzz含糊测试来举行弊端发掘
实例:某学院存在恣意暗码重置弊端
第一步(先找回暗码)查察源代码
跟一下nextDo2
关键在跳转第二步
假如data.status便是0那么跳转第二步,假如不便是0那么就提示验证码不精确!
只要status便是0它就跳转第二步,那么通过burp去修改它的Response放包之后就会发现直接绕过验证改密,如许就形成了恣意暗码重置弊端。
防备思绪:response数据内不包罗验证码,验证方式重要采取后端验证。
恣意金额修改
可以通过窜改数据报,使得购买的商品代价为负数等(金额数据通过明文传输,没有后端验证等一系列都可以产生恣意金额修改弊端)
实例
注册下单,付出,选择拉卡拉付出
截断http哀求,更改post金额数据。
到达付出页面发现,
发现金额被修改,也未提示该修改无效。
防备方法:后端验证,数据包加密后举行传输。
越权弊端
重要是由于开辟职员在对数据举行增、删、改、查询时对客户端哀求的数据太过信托而遗漏了权限的判定(仅限于存在弊端功能对应的数据)
思绪:
大概出现越权弊端的地方(对数据库举行操纵的都可以)。
查察代码当id=数组内里的数为则表现账号暗码,否则输出信息堕落。
当知道管理员的id的时间可以恣意更改url查询到账号暗码。
固然越权弊端存在很多种cookie绕过等等。
好了,完结!
作者:GeekC0s
泉源:i春秋
链接:https://bbs.ichunqiu.com/thread-21386-1-1.html
炼石信息安全培训春季班开招
咨询QQ群:495066536
敬请连续关注……
我要评论