最近在修复系统漏洞时,使用新版AppScan扫描IIS站点(WebForm)出现一个严重漏洞“已解密的登陆请求”。
  扫描工具修复的建议为在登陆界面不使用含“password”类型的控件或加密录入参数。 按其所给的建议,我做了如下修改:将password控件修改为textbox控件。使用js替换输入的内容。并将录入的结果录入到隐藏控件中提交时去隐藏控件的值。
  修改后部署更新站点重新扫描并不能解决问题。
  通过百度、bing等搜索工具找了一下两个解决方案:
  1.站点登陆采用ssl方式
  2.对登陆请求的数据进行加密
  因站点要求,并不能使用ssl方式,所以只能采用加密的方式来解决问题。
  我使用了可逆加密方式des加密。在前端加密后再提交数据至服务端进行解密。按此种方式修改后,更新站点再进行扫描得到的结果是依然不能解决这个漏洞的问题。于是我认真查看了AppScan提交数据请求的记录。发现我提交请求的数据,并没有按我要求进行加密。而是在配置AppScan登陆的数据。这说明AppScan请求登陆只会根据你的配置信息来进行登陆,并不去管你的登陆是否做了其它处理。这是否存在一个问题?你配置appscan的时候你需要配置站点登陆信息,但是他解密时提交的数据本来就是你配置好的。本就是配置的数据,为什么还说你解密的?这里我对appscan的扫描存在质疑(appscan在坑人,你必须得用ssl方式访问站点登陆!!)。
  因站点的不能使用ssl方式,所以我找同事讨论。得到另一个解决方案:登陆提交数据使用隐藏控件(包含登陆用户与密码),在提交之前对原来登陆用户、密码录入框内的内容进行清空。后台判断若录入框内存在内容则提示“登陆操作错误!”。这样配置后重新扫描,问题得到了解决,但是存在一个问题AppScan再也登陆不了系统了(扫描是会提示不能正常登陆系统,请确定登陆配置是否正确)。
  DES加密及解密(js与C#配套)可参考:http://www.cnblogs.com/luowanli/archive/2013/03/08/DES-Base64%E5%8A%A0%E5%AF%86%E8%A7%A3%E5%AF%86.html
  此方法能规避“已解密的登陆请求”的漏洞,但是不能完全解决。在实际站点中AppScan还是能扫描出此漏洞,但在扫描出的报文提交的数据中并不能查看到明文的账号密码信息。

AppScan漏洞“已解密的登陆请求”修复解决方案的更多相关文章

  1. Appscan漏洞之已解密的登录请求

    本次针对 Appscan漏洞 已解密的登录请求 进行总结,如下: 1.1.攻击原理 未加密的敏感信息(如登录凭证,用户名.密码.电子邮件地址.社会安全号等)发送到服务器时,任何以明文传给服务器的信息都 ...

  2. 使用https协议解决掉顽固不化的已解密的登录请求

    1.1 已解密的登录请求概述 在应用程序测试过程中,检测到将未加密的登录请求发送到服务器.由于登录过程所用的部分输入字段(例如:用户名.密码.电子邮件地址.社会保险号码,等等)是个人敏感信息,建议通过 ...

  3. IBM AppScan安全測试一例——已解密的登录请求

    问题严重级别:高 此类问题在做政府项目(第三方软件评測中心)验收的时,须要马上整改.例如以下图:

  4. Appscan漏洞之跨站点请求伪造(CSRF)

    公司前段时间使用了Fortify扫描项目代码,在修复完这些Fortify漏洞后,最近又启用了Appscan对项目代码进行漏洞扫描,同样也是安排了本人对这些漏洞进行修复.现在,针对修复过的Appscan ...

  5. Appscan漏洞之会话标识未更新

    本次针对 Appscan漏洞 会话标识未更新 进行总结,如下: 1. 会话标识未更新 1.1.攻击原理 在认证用户或者以其他方式建立新用户会话时,如果不使任何现有会话标识失效,攻击者就有机会窃取已认证 ...

  6. Appscan漏洞之Authentication Bypass Using HTTP Verb Tampering

    本次针对 Appscan漏洞 Authentication Bypass Using HTTP Verb Tampering(HTTP动词篡改导致的认证旁路)进行总结,如下: 1. Authentic ...

  7. Fiddler插件 --- 解密Elong Mapi请求参数及响应内容

    当前问题: 在我们日常的Web/App测试过程中, Fiddler是一大辅助利器:在我们团队,也经常使用Fiddler进行App抓包测试. 艺龙 App使用的REST(内部称为Mapi)接口,在使用过 ...

  8. SQL SERVER错误:已超过了锁请求超时时段。 (Microsoft SQL Server,错误: 1222)

    在SSMS(Microsoft SQL Server Management Studio)里面,查看数据库对应的表的时候,会遇到"Lock Request time out period e ...

  9. ArcGIS Server API for JavaScript调用错误:已阻止跨源请求:同源策略禁止读取位于......

    已阻止跨源请求:同源策略禁止读取位于 http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapSe ...

随机推荐

  1. MSSQL 查询表空间

    1. exec sp_spaceused '表名'            (SQL统计数据,大量事务操作后可能不准) 2. exec sp_spaceused '表名', true       (更新 ...

  2. Oracle资源管理器介绍(一)

        数据库资源管理器通过控制数据库内部的执行调度来控制资源在各个会话之间的分布.通过控制所要运行的会话以及会话运行的时间长度,数据库资源管理器可以确保资源分布与计划指令相匹配,因此也符合业务目标. ...

  3. 计算机系列:CUDA 深入研究

    Copyright © 1900-2016, NORYES, All Rights Reserved. http://www.cnblogs.com/noryes/ 欢迎转载,请保留此版权声明. -- ...

  4. linux协议栈skb操作函数

  5. flexBox布局 -- 兼容性

    //中间留空,两侧靠边,多行显示,每行3个,一个li的宽度是30%,最后一行,如果是两个的时候会出现异常布局,可以对最后一行的最后一个li进行right:35%,android4.4以上才支持, 所以 ...

  6. 【NOI2016】优秀的拆分 题解(95分)

    题目大意: 求一个字符串中形如AABB的子串个数. 思路: 用哈希做到O(1)判断字符串是否相同,O($n^2$)预处理,ans[i]为开头位置为i的形如AA的子串个数.再用O($n^2$)枚举出AA ...

  7. java单例模式的几种写法比较

    概念: Java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例.饿汉式单例.登记式单例. 单例模式有以下特点: 1.单例类只能有一个实例. 2.单例类必须自己创建 ...

  8. 对于amqplib的使用心得

    最近在nodejs使用了amqplib--rabbitmq的nodejs客户端.封装在了express中,先来代码. var amqp = require('amqplib/callback_api' ...

  9. GregorianCalendar类

    Calendar类实现了公历日历,GregorianCalendar是Calendar类的一个具体实现. Calendar 的getInstance()方法返回一个默认用当前的语言环境和时区初始化的G ...

  10. Liunx下的有关于tomcat的相关操作 && Liunx 常用指令

    先记录以下liunx下的有关于tomcat的相关操作 查看tomcat进程: ps-ef|grep java (回车) 停止tomcat进程: kill -9 PID (进程号如77447) (回车) ...