从团购网的漏洞看网站安全性问题

news/2024/5/10 4:54:32/文章来源:https://blog.csdn.net/iteye_11341/article/details/81998255

自从9月份在同事推荐下在某团购网买了一份火锅的套餐后,就迷上了,几乎每天必去浏览一遍,看看有什么又便宜又好吃的。元旦期间当然也不例外,1号那天上午,看到了XXX团购网的“VIP会员0元领红包”活动,0元?我最喜欢了,虽然参与过很多次0元抽奖的活动,一次也没中,但是人总是有一种信念相信自己的运气的。于是果断进去注册,点击购买,进入了购物车再点击确认订单,恩?怎么alert这么一句“本活动只限VIP会员参与”?我第一反应是去看页面源代码(由于该活动已经结束,进不去购买页面了,所以在这里我只好用伪代码来表示):

//确认订单按钮的点击事件
function btn_click(){
ajax获取当前用户的类型
如果不是VIP,alert("本活动仅限VIP会员参与");
否则 form1.submit();
}

  然后我在地址栏敲入:javascript:form1.submit(); 回车! 进入付款页面了,再点击确定,恩?购买成功!我获得了5元红包!




  太给力了!!!我又新注册一个账号,重复上面的步骤,也成功获得了5元红包。马上给客服留言说明此BUG,不过到今天还没回复我,呵呵。这个漏洞的关键点是开发人员忘记了在form1.submit()的后台代码中判断当前用户是否VIP会员,只依赖于javascript的验证。

  前台的验证顶啥用啊,完全可以绕过去,后台的验证才最重要!!有了上午的收获,1号晚上我就继续找别的团购网的漏洞,果然被我找到一个更严重的。该团购网也举行了一个元旦抽奖砸金蛋活动,也是免费参与,购买后发现得邀请好友参与活动才有砸金蛋的机会,邀请一个好友就多一个机会,如图:




  我一点击金蛋就alert一句“没有抽奖机会了快去邀请好友吧!”,恩,又是javascript?看看代码先:




  这便是金蛋的点击事件,其中有一个用AJAX去访问的页面lottery1.php,而要传过去的chance变量应该就是当前用户拥有的砸蛋机会。我试着直接访问lottery1.php?chance=1,返回error字符串,lottery1.php?chance=0也返回error,lottery1.php?chance=-1,也返回error,难道没效果么?我刷新了一下砸金蛋的页面,哇!!




  我传了-1过去导致溢出了?我试着砸了几个,每次都成功获得代金卷!!太给力了。接着试着用代金卷去下单,也能成功减免掉几块钱,不过一张订单只能用一个代金卷,呵呵(当然测试用的订单我最后取消掉了,本人还没那么邪恶,哇咔咔)马上联系客服,居然下班了,QQ不在线,电话打不通,只好留了个言。

  接下来干嘛呢?砸蛋呗!42亿的金蛋呢,写了段JS自动砸!截止现在一共有3588个金蛋被砸开,其中至少有2000多个是我砸的,哇咔咔得到了一大堆的代金卷:




  整整185页,呵呵,蛮壮观的!!!到了2号,我重新查看该团购网的代码时,发现了一个更严重的问题:

JS中有这么个方法




  乍一看是跟钱有关的吧,传入用户ID和钱的数目,试试有什么效果。用户ID怎么获得呢?别急,页面上有:

  这个96204就是我当前帐户的ID了,访问了一下,返回“线下充值成功”,哇,这么给力?充值页面都不加权限验证的?查看了一下帐户余额,果然充值成功了:




  哥有2万余额了,哇咔咔!!这个漏洞太致命了,立马给客服留言。刚留完言,他们的开发人员给我打电话了,和我讨论砸金蛋的漏洞问题,正好将刚发现的漏洞一起告诉他。开发人员就是命苦啊,元旦期间,晚上10点多了,他还要改代码。

改完他说老板可能送点礼品给我,好期待啊,呵呵。最后他把我的帐户余额清零了,我在心里呼喊:不~要~啊,我的2万元啊~~~~~~~~

  总结一下:前台的验证都是不靠谱的,后台必要都要验证一遍;管理页面一定要加访问权限;传递到后台的数据一定要进行合法性验证;不必要传递的参数就不传,比如那个砸蛋,我就想不明白为什么要把当前用户拥有的砸蛋机会传递到后台,直接从数据库中读取不行么?用户ID不要以明文出现。另外还要防范XSS跨站脚本攻击(一般用判断主机头的方式)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_764121.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

社会工程学攻击之网站钓鱼

前言网络给了我们方便的同时,但也并不总是那么美好。还记得邀请苍蝇到它的客厅做客的蜘蛛吗?还记得帮助蝎子渡河的乌龟吗?这些故事都包含了猎物的天真和猎手的肮脏。互联网也是如此,其中中充斥着诱惑的陷阱、阴暗的角落、恶意的行…

[技术分享] 20110803,Web 代理客户端通过 TMG ISA 不能访问新浪微博等网站

Web 代理客户端通过 TMG/ISA 不能访问新浪微博等网站,Web 客户端返回错误:" Error Code: 502 Proxy Error. The request is not supported (50)”。 这类问题一般是由于网站回复的数据是压缩的所导致。遇到此类问题,您可以尝试以下方法…

网站建设流程图

网站建设流程 网站建设包括域名注册查询、网站策划、网页设计、网站功能、网站优化技术、网站内容整理、网站推广、网站评估、网站运营、网站整体优化、网站改版等,这里用一张图概括了网站建设的基本流程,需要的朋友可以参考下, 常见的前端产…

收藏网站制作常用经典css.div.布局.设计实例打包下载2

点击下载:多功能导航Demo.rar 点击下载:发一个选项卡动态增删的效果.rar 点击下载:仿yahoo的特色服务内容切换效果.rar 点击下载:给图片加上边框[1].(仿胶卷).rar 点击下载:国外网站的一个效果.rar 点击下载&#xff1…

协助用户搜寻您的网站 { 创建一个OpenSearch }

导言 现代浏览器其中一个最美好的特点, Microsoft Internet Explorer 和 Mozilla Firefox 的浏览器右上角有一个搜索栏在。有了这个工具,您可以很快的进行搜索任何数目的网站,无须首次访问他们的搜索页。 如何搜索您的网站是存在一个XM…

大型网站技术架构(六)网站的伸缩性架构

2019独角兽企业重金招聘Python工程师标准>>> 网站系统的伸缩性架构最重要的技术手段就是使用服务器集群功能,通过不断地向集群中添加服务器来增强整个集群的处理能力。“伸”即网站的规模和服务器的规模总是在不断扩大。 1、网站架构的伸缩性设计 网站的…

《Flash建站技术》系列6-LoadVars数据提交与表单处理

1.LoadVars vs getURLsend()getURL有很多的限制&#xff0c;LoadVars则弥补了这一点Flash时间轴脚本:<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />System.useCodepagetrue;signBtn.onReleasefunction(){var formVars:LoadVar…

C++在线编程网站

1、推荐 https://wandbox.org/ 2、https://www.tutorialspoint.com/compile_cpp_online.php 3、https://www.anycodes.cn/#/OnlineCode 4、https://tool.lu/coderunner/ 测试&#xff1a; #include <iostream>using namespace std;int main() {cout<<"input s…

我记录网站综合系统 -- 技术原理解析[11:ActionProcessor流程-wojilu核心]

这篇文章不是专门讲数据缓存的&#xff0c;但是这里有大量缓存内容&#xff0c;wojilu的缓存系统近期升级了&#xff0c;可能我的理解不是最正确的。 改日将会写专门的缓存文章。 源代码位置&#xff1a;\Web\Mvc\Processors&#xff1a;ActionProcessor.cs Config -> wojil…

大型网站的高可用分析

本文主要分析网站的高可用性&#xff0c;从应用需求、用户角度展开分析。 1.1 高可用性 “高可用性”(High Availability) 通常用来描述一个系统&#xff0c;经过特殊设计&#xff0c;减少停止服务的时间&#xff0c;从而使其服务保持高度的可使用性。 计算机系统的可靠性用平均…

网站安全技术—预防脚本攻击

阅读目录 一&#xff1a;脚本攻击 二&#xff1a;模拟脚本攻击 三&#xff1a;运行效果 四&#xff1a;预防脚本攻击的主要方法 一&#xff1a;脚本攻击 脚本攻击是指将恶意的字符插入到网页中来&#xff0c;浏览器无法验证这些插入的字符&#xff0c;并且会将它们作为网页的一…

We7网站群的共享机制

2019独角兽企业重金招聘Python工程师标准>>> 1.独立部署共享服务器 独立布署共享服务器 共享服务器作为一个独立的服务&#xff0c;允许布署在不同的物理服务器上&#xff0c;从而满足更大负载与更佳性能的要求。 技术支撑&#xff1a;信息打包技术 信息通过数据…

windows server 2008 配置1个服务器多个网站

简略&#xff1a;创建网站的三种虚拟技术&#xff1a;①多IP地址&#xff1b;②一个IP地址多个端口号&#xff1b;③主机头名。1、多IP地址架设多个网站 增加另一个网站&#xff1a;测试成功运行两个网站&#xff1a;2、同一IP地址 多端口3、同一IP地址 不同主机名增加域名…

详细的图文介绍如何利用XAMPP本地建站的环境配置教程

原文:详细的图文介绍如何利用XAMPP本地建站的环境配置教程WordPress 是一个简便快捷&#xff0c;用途广&#xff0c;人气旺的一个开源的博客建站程序。很有很多等您去发现。 简便快捷&#xff1a;在性能上易于操作、易于浏览&#xff1b; 用途广&#xff1a;可以建博客&#xf…

ExtJs学习网站

为什么80%的码农都做不了架构师&#xff1f;>>> ExtJs 入门教程: http://www.cnblogs.com/iamlilinfeng/archive/2012/12/31/2840663.html Sencha Docs 脚本娃娃 (Ext4.1.0 Doc中文版 V1.0.0 Beta) http://extjs-doc-cn.github.io/ext4api/#!/api/Ext ExtJs云盘下载…

网站运维——Chrome 神奇的21秒

2019独角兽企业重金招聘Python工程师标准>>> 1、报障 ①、用户使用chrome进行访问&#xff08;下载&#xff09;&#xff0c;需要等待一段时间&#xff0c;才会提示下载框&#xff0c;debug发现时间都花在Stalled&#xff0c;状态显示pending&#xff0c;无论是跳转…

.net网站常见问题及解决方案

1、解决方法&#xff1a;三个文件放到项目Bin文件夹2、解决方法 &#xff1a; requestValidationMode"2.0" 加到 3、 你在浏览器输入网址报这样的错误 然后打开你的internet信息服务&#xff08;IIS&#xff09;管理器 点击“应用程序池” 在右边找到你的网站名字&a…

检测到目标url存在客户端(javascript)cookie引用_利用Zabbix监控系统自动检测网站运行状态...

我们要检测一个网站是否正常运行&#xff0c;最好的方式是啥呢&#xff1f;我想最直接的办法就是打开浏览器输入要访问的网址&#xff0c;能打开网页说明网站是正常运行的&#xff0c;不能打开了则说明网站存在问题。通过上一篇文章《HTTP协议及其工作原理介绍》&#xff0c;我…

linux搭建cdn教程_云计算视频教程:Linux大型网站高并发架构及自动化运维

随着互联网技术的不断进步和发展&#xff0c;对运维人员提出了更高的要求和挑战&#xff0c;如何才能将运维工作自动化&#xff0c;提升工作的效率&#xff1f;让大家学完后可以具备企业真正的大型网站搭建能力以及自动化运维的实战能力。在企业中运用zabbix监控企业数据&#…

springboot做网站_面试中必须掌握的15道《Spring Boot 高频面试题》

做 Java 开发&#xff0c;没有人敢小觑 Spring Boot 的重要性&#xff0c;现在出去面试&#xff0c;无论多小的公司 or 项目&#xff0c;都要跟你扯一扯 Spring Boot&#xff0c;扯一扯微服务&#xff0c;不会&#xff1f;没用过&#xff1f; Sorry &#xff0c;我们不合适&…