代码漏洞扫描

漏洞描述:Cross Site History Manipulation

简要描述:产品的行为差异或发送不同的反应,在某种程度上暴露了与安全性相关的产品状态,例如特定的操作
是否成功。
可能的漏洞消除办法:

区分你的系统"安全"的区域,这些区域可以明确地绘制信任边界。不允许敏感数据到信任边界的外面
,和安全区域外的空间交互时需要时刻小心。
为错误条件设置通用的响应。这个错误页面不应该透露有关成功或失败的敏感性操作的信息。例如,
登录页面不应该确认登录是正确的和密码是错误的。攻击者想通过尝试输入随机帐户名称来猜测正确
账户名其中的一些。确认帐户存在将使登录页面更容易受到强力攻击。

解决办法:

验证成功后,有页面跳转,这时给页面加一个随机数,如下:

Response.Redirect("dongcoder.aspx?rand=" + Common.getRandValue());

  

其中getRandValue方法如下,

public static string getRandValue()
{
string randValue = "";
using (RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider())
{
byte[] data = new byte[4];
rng.GetBytes(data);
Int32 value = BitConverter.ToInt32(data, 0);
if (value < 0) value = -value;
randValue = value.ToString();
}
return randValue;
}

  

需要添加引用

using System.Security.Cryptography;

  

这里用了另外生成随机数的方法,如果使用常用Random方法则还会继续爆出漏洞。

摘自:代码漏洞扫描描述Cross Site History Manipulation解决办法

代码漏洞扫描描述Cross Site History Manipulation解决办法[dongcoder.com]的更多相关文章

  1. JavaScript创建读取cookie代码示例【附:跨域cookie解决办法】

    使用JavaScript 原生存取cookie代码示例: var cookie = { set : function(name, value, expires, path, domain, secur ...

  2. Chrome谷歌浏览器中js代码Array.sort排序的bug乱序解决办法

    [现象] 代码如下: var list = [{ n: "a", v: 1 }, { n: "b", v: 1 }, { n: "c", v ...

  3. svn提交更新代码提示Please execute the 'Cleanup' command 的解决办法

    那可能是提交或更新代码的过程意外终止,第二次提交或更新会报这个错误 更新或上传的时候动作没有完成,导致本地存在锁定状态没有释放 或者有文件正在更新或上传,该文件夹被锁定. 解决办法: 将对应文件夹里的 ...

  4. VC2013 代码图,依赖项关系图,等出错解决办法.

    环境WIN10+VS2013+SQL2015 当VS2013代码图,依赖项关系图等出现 数据库连接错误时 去http://www.microsoft.com/zh-cn/download/detail ...

  5. eclipse代码提示javadoc背景为黑色框的解决办法

    我的eclipse是近期下载的oxygen版本.不知道怎么出现了一个这个问题,鼠标悬停指向代码时应该出现的代码提示解释框,全为黑色,看不到文字.如下图 经过验证,最终解决方法为window->G ...

  6. [King.yue]关于代码调试时的缓存问题的一个解决办法

    后台构造数据更改之后,页面数据一直不变,试过各种办法,清空浏览器缓存,停止端口重新运行,关掉程序重新打开,都不可以.最终全部重新生成之后,终于可以正常调试了. 另:调试ASP.NET网站程序的时候,为 ...

  7. git 提交项目代码到码云步骤 以及出现错误解决办法

    git initgit remote add origin 项目地址git add .git commit -m "注释"git push origin master 出现错误 $ ...

  8. 微信二维码扫描无法下载APK文件的解决办法

  9. 三、npm start报错:./node_modules/history/esm/history.js解决办法

    package.json中的roadhog换为:'^2.5.0-beta.4',删除node_modules文件夹,在执行npm install,npm start.

随机推荐

  1. input.nextLine()的注意事项

    若在input.nextInt()和input.nextDouble()后使用input.nextLine(),要先加一个input.nextLine()进行换行

  2. i love my girl

    for(int i=0;i<forever;i++) System.out.println("i love my girl!");

  3. DataGridView设置行高

    .Net中DataGridView控件如何设置行高 在DataGridView控件中,默认的行高很大,而标题头的行高却很小,感觉很不匀称. 标题头的行高比较好设置需要修改两个属性1修改ColumnHe ...

  4. IOS 生成静态库文件(.a文件)

    http://www.cnblogs.com/lyy-5518/p/5459643.html

  5. HyperLogLog算法

    项目在统计UV/PV时用到了Druid的Hyper hyperunique算法,书上介绍这种算法求出的UV/PV存在一定误差,因此需要了解下误差来自哪里. 实现去重功能,最简单的就是使用set记录集合 ...

  6. 通过for 来获取数组里面的电话

    //存放的是电话号码包含的数字 , , , , , }; //电话号码出现的下标 , , , , , , , , , , }; //方式1 ; i < index.length; i++) { ...

  7. docker-compose部署mongodb+redis遇到的问题

    Demo环境下需要用到Redis+mongodb两种DB配合使用,所以暂时直接使用docker的redids和mongodb镜像,用docker-compose进行联合部署 使用的版本如下: dock ...

  8. 新式类单例模式之 __new__()

    单例模式: 确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例. 类中有一个静态属性__instance,默认为none,重构__new__()方法,判断__instance是否为空,若为 ...

  9. python 编写登陆接口

    #!/usr/bin/env python#_*_ coding:utf-8 _*_dic={ 'yts':{'password':'123','count':0}, 'nick':{'passwor ...

  10. c——闰年

    PTA #include<stdio.h> int main() { int year,month,day,cnt,flag; flag = ; scanf("%4d/%2d/% ...