逻辑漏洞挖掘一直是安全测试中“经久不衰”的话题。相比SQL注入、XSS漏洞等传统安全漏洞,现在的攻击者更倾向于利用业务逻辑层的应用安全问题,这类问题往往危害巨大,可能造成了企业的资产损失和名誉受损,并且传统的安全防御设备和措施收效甚微。今天漏洞盒子安全研究团队就与大家分享Web安全测试中逻辑漏洞的挖掘经验。
一、订单金额任意修改
解析
很多中小型的购物网站都存在这个漏洞。在提交订单的时候抓取数据包或者直接修改前端代码,然后对订单的金额任意修改。
如下图所示:
经常见到的参数大多为
关于支付的逻辑漏洞这一块还有很多种思路,比如相同价格增加订单数量,相同订单数量减少产品价格,订单价格设定为负数等等。
预防思路
1.订单需要多重效验,如下图所演示。
2. 订单数值较大时需要人工审核订单信息,如下图所演示。
3. 我只是提到两个非常简单的预防思路,第二个甚至还有一些不足之处。这里需要根据业务环境的不同总结出自己的预防方式,最好咨询专门的网络安全公司。
二、验证码回传
解析
这个漏洞主要是发生在前端验证处,并且经常发生的位置在于
验证码主要发送途径
其运行机制如下图所示:
黑客只需要抓取Response数据包便知道验证码是多少。
预防思路
1.response数据内不包含验证码,验证方式主要采取后端验证,但是缺点是 服务器 的运算压力也会随之增加。
2.如果要进行前端验证的话也可以,但是需要进行加密。当然,这个流程图还有一些安全缺陷,需要根据公司业务的不同而进行更改。
三、未进行登陆凭证验证
解析
有些业务的接口,因为缺少了对用户的登陆凭证的效验或者是验证存在缺陷,导致黑客可以未经授权访问这些敏感信息甚至是越权操作。
常见案例:
1. 某电商后台主页面,直接在管理员web路径后面输入main.php之类的即可进入。
2. 某航空公司订单ID枚举
3. 某电子认证中心敏感文件下载
4.某站越权操作及缺陷,其主要原因是没对ID参数做cookie验证导致。
5. 实际上还有很多案例,这里就不一一例举了,但是他们都存在一个共同的特性,就是没有对用户的登陆凭证进行效验,如下图为例。
预防思路
对敏感数据存在的接口和页面做cookie,ssid,token或者其它验证,如下图所示。
四、接口无限制枚举
解析
有些关键性的接口因为没有做验证或者其它预防机制,容易遭到枚举攻击。
常见案例:
1. 某电商登陆接口无验证导致撞库
2. 某招聘网验证码无限制枚举
3. 某快递公司优惠券枚举
4. 某电商会员卡卡号枚举
5. 某超市注册用户信息获取
预防思路
1. 在输入接口设置验证,如token,验证码等。
2. 注册界面的接口不要返回太多敏感信息,以防遭到黑客制作枚举字典。
3. 验证码请不要以短数字来甚至,最好是以字母加数字进行组合,并且验证码需要设定时间期限。
4. 优惠券,VIP卡号请尽量不要存在规律性和简短性,并且优惠券最好是以数字加字母进行组合。
5. 以上这是部分个人建议,实际方案需要参考业务的具体情况。
五、cookie设计存在缺陷
解析
这里需要对其详细的说一下。我们先一个一个来吧。
Cookie的效验值过于简单。有些web对于cookie的生成过于单一或者简单,导致黑客可以对cookie的效验值进行一个枚举,如下图所示
根据上图,我们可以分析出,这家网站对于cookie的效验只单纯的采用了一组数字,并且数值为常量,不会改变,这样非常容易遭到黑客的枚举。甚至有一些网站做的更简单,直接以用户名,邮箱号或者用户ID等来作为cookie的判断标准。
2. cookie设置存在被盗风险
有很多时候,如果一个用户的cookie被盗取,就算用户怎么修改账号和密码,那段cookie一样有效。详情可以参考《BlackHat(世界黑帽大会)官方APP出现两个逻辑漏洞》。
其原理如下:
国内大部分厂商都不会把这个地方当作安全漏洞来处理,他们认为这个漏洞的利用条件是黑客必须要大批量获取到用户的cookie。虽然事实如此,但是这个也是一个安全隐患。
3.用户的cookie数据加密应严格使用标准加密算法,并注意密钥管理。
有一些厂商为了图方便,没有对用户的cookie做太多的加密工作,仅仅是单纯的做一个静态加密就完事了。我之前就碰到一个,可以为大家还原一下当时的场景。
当时我看到cookie中有个access token参数,看到value后面是两个等号,习惯性的给丢去base64解码里面,发现解出来后是我的用户名。因此只要知道一个人的用户名就可以伪造对方的cookie,登陆他人账户。
4.还有多个案例不再做重复说明,大家可以深入研究一下cookie中的逻辑漏洞。但是cookie中的漏洞大多都是属于一个越权漏洞。越权漏洞又分为平行越权,垂直越权和交叉越权。
如下图所示:
预防思路
1.cookie中设定多个验证,比如自如APP的cookie中,需要sign和ssid两个参数配对,才能返回数据。
2.用户的cookie数据加密应严格使用标准加密算法,并注意密钥管理。
3.用户的cookie的生成过程中最好带入用户的密码,一旦密码改变,cookie的值也会改变。
4.cookie中设定session参数,以防cookie可以长时间生效。
5.还有很多方法,不再一一例举,请根据业务不同而思考。
六、找回密码存在设计缺陷
解析
1.auth设计缺陷
经常研究逻辑漏洞的人可能会对以下URL很熟悉
用户修改密码时,邮箱中会收到一个含有auth的链接,在有效期内用户点击链接,即可进入重置密码环节。而大部分网站对于auth的生成都是采用rand()函数,那么这里就存在一个问题了,Windows环境下rand()最大值为32768,所以这个auth的值是可以被枚举的。
如下面这个代码可以对auth的值做一个字典。
然后重置某个账号,并且对重置链接内的auth进行枚举。
整个漏洞的运作的流程图如下:
2.对response做验证
这个漏洞经常出现在APP中,其主要原因是对于重置密码的的验证是看response数据包,由于之前的案例没有截图,只能画个流程图给大家演示一下。
3.《密码找回逻辑漏洞总结》这篇文章很全面的总结了密码找回漏洞的几个具体思路和分析,这里我就不再继续滚轮子了。
预防思路
1.严格使用标准加密算法,并注意密钥管理。
2.在重置密码的链接上请带入多个安全的验证参数。
七、单纯读取内存值数据来当作用户凭证
解析
实际上这个应该算作一个软件的漏洞,但是因为和Web服务器相关,所以也当作WEB的逻辑漏洞来处理了。最能当作例子是《腾讯QQ存在高危漏洞可读取并下载任意用户离线文件(泄漏敏感信息)》这个漏洞,但是我相信这种奇葩的漏洞不一定只有腾讯才有,只是还没人去检测罢了。
产生这个漏洞的主要原因是程序在确定一个用户的登陆凭证的时候主要是依靠内存值中的某个value来进行确认,而不是cookie。但是内存值是可以更改和查看的。其流程图如下:
预防思路
1. 走服务器端的数据最好做cookie验证。
2. 我不反对直接在进程中确定用户的登陆凭证,但是请对进程进行保护,或者对进程中的value做加密处理。
总结
以上见到的只是几个比较经典的和常见的逻辑漏洞,这些逻辑漏洞也是程序开发人员和安全检测人员需要留意的。
我电脑这几天特卡 不知道为什么?
垃圾文件太多其次开机程序太多
再次就是你没查出病毒现在的查病毒软件对与一些新的病毒无法查杀
建议重装下系统吧
首先要判断你电脑配置。
卡的表现表述不清,
一、cpu负荷过大,或者工作不正常。检查CPU和显卡散热,除尘,上油,或更换风扇。
二、电源电压不稳,电源功率不足。更换质量高的功率大的电源。
三、经常清理磁盘和整理磁盘碎片。
1、在“我的电脑”窗口,右击要清理的盘符—“属性”—“清理磁盘”—勾选要删除的文件—确定—是。
2、清除临时文件,开始—运行—输入 “%temp%”—确定。
3、用优化大师或超级兔子清理注册表和垃圾文件。
4、关闭一些启动程序, 开始-运行-msconfig---启动 ,除杀毒软件、输入法外一般的程序都可以关掉。
5、删除不用的程序软件。
6、整理磁盘碎片--开始 --所有程序--附件--系统工具--磁盘碎片整理程序--选定磁盘--分析--碎片整理。
7、减轻内存负担 ,打开的程序不可太多。如果同时打开的文档过多或者运行的程序过多,就没有足够的内存运行其他程序,要随时关闭不用的程序和窗口。
四、升级显卡、网卡驱动,换个档次高一点的显卡。
五、加大物理内存。
六、合理设置虚拟内存 。
1、玩游戏,虚拟内存可设置大一些,最大值和最小值均设为物理内存的2-3倍,再大了,占用硬盘空间太多了。
2、虚拟内存设置方法是: 右击我的电脑—属性--高级--性能设置--高级--虚拟内存更改--在驱动器列表中选选择虚拟内存(页面文件)存放的分区--自定义大小--在“初始大小”和“最大值”中设定数值,然后单击“设置”按钮,最后点击“确定”按钮退出。
3、虚拟内存(页面文件)存放的分区,一定要有足够的空间,硬盘资源不足,造成虚拟内存不够用,在一台电脑中,在一个分区设置虚拟内存就够用了,不必在多个分区设置。
七、用优化大师或超级兔子优化电脑。
这些办法用过了,电脑还是很卡,你就得检查你的硬件是否有问题,或者要试试换一个系统jj
让WinXP运行更快捷 、更可靠的23招实用技巧,希望对您有所帮助 :
1)在系统中安装Ultra-133硬盘加速扩充卡或带有8M缓存的ATA硬盘,可以有效减少系统的启动时间。
2)把内存增加到512M以上。
3)确定Windows XP使用的是NTFS文件系统。检查方法 :双击我的电脑,在C :盘上右击鼠标,选择属性,检查文件系统的类型。如果是FAT32,就把它转换成NTFS,方法是 :先备份所有重要的数据,然后选择开始菜单里的运行,输入CMD后确认。在提示符下,输入CONVERT C : /FS :NTFS和回车。在这个过程中,最好不要中途异常中断,并确保系统中没有病毒。
4)关闭文件索引功能。Windows索引服务要从硬盘上大量文件中提取信息并创建关键字索引,如果硬盘上有数以千计的文件,这个功能可以加快从这些文件中搜索信息的速度。但Windows创建这个索引要花费很多时间,而且大多数人从来不使用这个功能。关闭的方法是 :双击我的电脑,在硬盘和下面的子文件夹上右击鼠标,选择属性,取消使用索引以便快速查找文件。如果有警告或错误信息出现(如拒绝访问),点击忽略即可。
5)升级主板和显卡的驱动程序,升级BIOS。
6)每三个月左右清空Windows的预读取文件夹(Windows\Prefetch)一次。Windows把频繁使用的数据存放在预读取文件夹中,需要再次使用这些数据时就可以大大加快读取速度。但时间一长,这个文件夹中就会有大量不再使用的垃圾数据存在,反而增加了Windows的读取时间,影响了系统性能。
7)每个月运行一次磁盘清理程序,删除临时和无用文件。方法 :双击我的电脑,在C :盘上右击鼠标,选择属性,点击磁盘清理按钮。
8)在设备管理员中双击IDE ATA/ATAPI控制器,到Primary/Secondary IDE Channel里将所有连接设备的转输模式都设定为使用DMA(如果可用)。
9)更新接线.采用了新式的硬盘后,应该同时为所有IDE设备换装80线的Ultra-133线缆。如果只安装一个硬盘,那么这个硬盘应该安装在线缆的顶端,不要安装在线缆中间的那个接口,否则可能发生信号异常。对于Ultra DMA硬盘驱动器来说,这些异常信号会影响驱动器发挥最佳性能。
10)清除所有spyware(间谍程序)。有很多免费软件,如AdAware,可以完成这个任务。清除后,所以包含spyware的软件都将不能正常工作,如果确实需要其中的某个软件,就把它重新安装一遍吧。
11)从启动组里删除不必要的程序。方法 :选择开始菜单里的运行,输入msconfig,进入启动选项卡,取消不想在系统启动时加载的项目。对于不能确定的项目,查阅一下WinTasks Process Library(进程库),里面包含了已知的系统进程、应用程序和spyware的描述。也可以在google等WEB搜索引擎中查找。
12)进入控制面板中的增加/删除程序项,删除不必要的和不用的程序。
13)关闭所有不必要的动画和活动桌面。方法 :在控制面板中点击系统图标,进入高级选项卡,对性能进行设置,在视觉效果选项卡上, 选中自定义单选框,将有关用户界面特性设定为禁用状态。
14)使用Tweak-XP软件编辑系统注册表,进一步提升性能。
15)定期访问微软Windows更新站点,下载所有标有Critical(重大)标志的更新项目。
16)每周更新防病毒软件。系统中最好只安装一套防病毒软件,安装多套软件会对性能带来不利影响。
17)安装的字体数量不要超过500种,字体数量太多会使系统变慢。
18)不要对硬盘分区。Windows XP的NTFS文件系统在一个比较大的分区上运行会更有效率。以前,人们为了方便数据组织或重新安装操作系统时不必格式化整个硬盘而对硬盘进行分区。在Windows XP的NTFS文件系统中,重新安装操作系统已不必重新格式化分区,数据组织更可以通过文件夹来完成。例如,不需要再把大量的数据放到另外划分的D :盘上,可以创建一个命名为D盘的文件夹,数据放在这个文件夹中即不影响系统性能,又能起到很好的组织作用。
19)测试内存条(RAM)是否完好。建议使用免费程序MemTest86,先用这个程序制作一个启动盘,用此盘启动电脑后程序将对内存条运行10项不同的测试,每项测试进行3遍。如果测试中遇到错误,就关闭电脑,拔掉其中一根内存条(如果有多根的话),重新测试。仍掉坏的内存条,换上一根好的。
20)如果电脑上安装了CD或DVD刻录机,有时候升级驱动程序可以使刻录速度更快。
21)取消不必要的服务。Windows XP调用了许多用户可能根本用不到的服务,这些服务不仅影响运行速度,对保护系统安全也非常不利。因此,可以根据需要禁用不必要的系统服务。方法 :选择开始菜单里的运行,输入打开服务管理控制台,通过更改服务的启动类型启动或停止该项服务。
22)如果感觉Windows的单窗口浏览器速度比较慢,可以加以改进,方法是 :打开我的电脑,点击工具->文件夹选项->查看,选中使用独立的进程打开文件夹窗口。这样可以防止一个较慢的设备影响用户界面的响应速度。
23)打开机箱,把灰尘和碎片打扫干净,每年至少做一次。同时检查一下所有的风扇是否工作正常,主板上的电容器有没有膨胀或泄漏。
至此,23招都用过一遍,是不是对自己的系统更满意了?
提醒 :虽然碎片整理对提升电脑性能作用有限,但一个没有碎片的硬盘总比一个布满碎片的硬盘消耗的功率少,况且,一旦硬盘损坏,如果硬盘上的数据连续存放,就更容易恢复.所以,仍建议每隔一段时间(根据机器使用情况,从数月到一年不等),对硬盘做一次碎片整理。
白羊和巨蟹和得来吗
白羊 VS. 巨蟹配对评分:50 需要努力维持的一对星座比重:58:42解析:白羊座外向率真配上巨蟹的内向、情绪化,有些伤脑筋。 蟹子大都敏感而缺乏安全感,遇到不顺心的事,直觉反应就是逃避,与凡事确定目标就往前冲的羊儿大不相同,很容易显得不协调。 由於个性、行为模式和思考逻辑的差距恰成对比,因此衍生出的问题... 基本上不是属於起点相同与否,而是立足点相异的关系。 注意事项:虽然羊儿对蟹子而言是站在较强势的高位,多少能满足您原始潜在的领导欲;但您追求新挑战的习性却可能致使您见异思迁,使您俩的关系很不稳定。 假如您想要维持下去,只消发挥您攻无不克的本事,对他抱持尊重和呵护的态度,相信很容易就可达成目标。 蟹子或许不是您的标准伴侣,事实上,他可能也没什野心或行动力,连许下爱的承诺,都会考虑再三;而最后的结论通常是拒绝别人也放弃自己,再找一个新对象,重新开始另一个苦恼。 另外,不妨先从您们共同的兴趣和朋友等方面著手交往,可从一开始就先得到调和。
http和https区别 具体是什么意思
HTTP全称是超文本传输协议(Hypertext transfer protocol)是一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。 HTTPS全称是超文本传输安全协议(Hyper Text Transfer Protocol over Secure Socket Layer 或 Hypertext Transfer Protocol Secure)是以安全为目标的HTTP通道,简单讲是HTTP的安全版。 HTTP和HTTPS的区别:1、安全性不同。 HTTP是超文本传输协议,信息是明文传输的。 HTTPS是具有安全性的ssl证书加密的传输协议。 所以HTTPS比HTTP更安全2、默认端口不同。 HTTP的默认端口是80,HTTPS的默认端口是443。 3、协议不同。 HTTP是无状态的协议,而HTTPS是由ssl+HTTP构建的可进行加密传输、身份认证的网络协议。 4、部署的成本不同。 HTTP是免费的,HTTPS是需要证书的,一般免费证书很少,需要交费。 所以HTTPS的成本相对会更高。 参考资料来源:网络百科-https参考资料来源:网络百科-http
发表评论