切记一定要防止恶意用户直接访问Ajax请求地址
多年前的一个web项目, 有一个地方是用ajax发送短信验证码, 当时没考虑好, 没判断来路, 这几天被人恶意滥用发送了很多垃圾短信, 投诉到公司来了。 今天一看代码吓出一身冷汗!
以后一定要记得判断来路, 禁止直接请求Ajax地址。
方式1, 判断来路, 不能为空且必须同是HostUrl
if(Request.UrlReferrer!=null && Request.UrlReferrer.Host==Request.Url.Host)
{
//do..
}
方式2, 判断httpHeaders是否ajax请求
public static bool AjaxRequest()
{
string sheader = Request.Headers["X-Requested-With"];
bool isAjaxRequest = (sheader != null && sheader == "XMLHttpRequest") ? true : false;
if (isAjaxRequest)
return true;
else
return false;
}
切记一定要防止恶意用户直接访问Ajax请求地址的更多相关文章
- 防止用户重发发生ajax请求
1.前端限制 点击提交后,将该元素禁用,等待请求结束后再次释放(解除禁用). 可以使用ajax中的 success 请求成功后的回调函数进行按钮释放. 2.防抖动 暴力连续点击按钮,可以通过闭包里的 ...
- 在controller的action内, 得到用户发过来的请求地址和参数url
class PController extends Controller{ public function Log() { echo $_SERVER["HTTP_HOST"] . ...
- 访问ajax请求后的结果
let getJPM = (function() { let result; let url ="xxx"; $.ajax({ type: "post", ur ...
- 显示当前用户所拥有的表&当前用户可以访问的所有表&数据库中的所有表&当前用户信息&当前用户所能管理的用户&数据库中所拥有的用户
1)显示当前用户名称:show user或者show user; 2)显示当前用户信息(包括用户名之外还有其他信息):select * from user_users; 3)显示数据库中所含有的所有用 ...
- 关于IIS部署成功后,局域网其他用户无法访问的问题解决方法
关于win7部署iis后,局域网的其他用户不能访问的问题. 在win7系统中,部署好iis后,自己本地可以发布和预览.但在局域网中的其他用户不可以访问.下面说一下这个原因. 这是因为win7自带的 ...
- 在linux中限制用户ftp访问权限
1.环境:redhat linux企业版4.ftp为vsftp.被限制用户名为aaa.被限制路径为/bbb.2.建用户:在root用户下,相继进行如下操作 adduser aaa ...
- IIS发布网站后局域网其他用户不能访问问题(转)
如果本机能正常访问,而局域网其他用户不能访问,那么判断的结果很可能是防火墙问题. 解决方法: 既然问题出在Windows7或Windows Server 2008 R2的防火墙上,那么我们可以有以下两 ...
- C# 带用户密码访问网络共享
原文:C# 带用户密码访问网络共享 调用WNetUseConnection API 函数详细参数参考:https://msdn.microsoft.com/en-us/library/windows/ ...
- Cookie实现--用户上次访问时间
用户上次访问时间
随机推荐
- POJ 1961 2406 (KMP,最小循环节,循环周期)
关于KMP的最短循环节.循环周期,请戳: http://www.cnblogs.com/chenxiwenruo/p/3546457.html (KMP模板,最小循环节) POJ 2406 Powe ...
- POJ 1459
#include<iostream> #define MAXN 105 #include"queue" #define big_num 100000000 using ...
- c# string.Format用法总结
文章出处:http://www.cnblogs.com/7788/archive/2009/05/13/1455920.html 先举几个简单的应用案例: 1.格式化货币(跟系统的环境有关,中文系统默 ...
- 卷积相关公式的matlab代码
取半径=3 用matlab代码实现上式公式: length=3;for Ki = 1:length for Kj = 1:length for Kk = 1:length Ksigma(Ki,Kj,K ...
- Android 图片异步加载的体会,SoftReference已经不再适用
在网络上搜索Android图片异步加载的相关文章,目前大部分提到的解决方案,都是采用Map<String, SoftReference<Drawable>> 这样软引用的 ...
- 内存分析_.Net垃圾回收介绍
垃圾回收 1. .Net垃圾回收中涉及的名称 1.1.什么是代? 垃圾回收器为了提升性能使用了代的机制,共分为三代(Gen0.Gen1.Gen2).GC工作机制基于以下假设, 1) 对象 ...
- React组件生命周期-初始化阶段的函数执行顺序
<!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="UTF-8& ...
- android-exploitme(四):参数篡改
今天我们来测试请求中参数的篡改,这个在web安全测试中是常用的,拦截请求包,修改参数,提交 1. 首先我们需要启动模拟器,并使用本机的代理(加上参数-partition-size的目的是为了可以往a ...
- fastdfs-client-java工具类封装
FastDFS是通过StorageClient来执行上传操作的 通过看源码我们知道,FastDFS有两个StorageClient工具类.
- Java:字符串类String的功能介绍
在java中,字符串是一个比较常用的类,因为代码中基本上处理的很多数据都是字符串类型的,因此,掌握字符串类的具体用法显得很重要了. 它的主要功能有如下几种:获取.判断.转换.替换.切割.字串的获取.大 ...