跨站点请求伪造 跨站点脚本编制 通过框架钓鱼漏洞

AppScan Standard扫描漏洞处理方法 系统漏洞处理方法 应XX要求,要对系统的安全漏洞进行处理解决。扫描工具为IBM Security AppScan Standard,本次主要要解决工具扫描出来的高危和中危级别的漏洞。          未解决时扫描系统的结果如下图所示: 处理后扫描结果如下: 大致满足了客户提出的要求,下面给出处理的方法   解决方式:           1、对于 阅读详情

1、跨站点请求伪造 跨站点脚本编制 通过框架钓鱼漏洞

主要是通过在url或参数中添加脚本如:

1、URL中添加<script>alert(1)</script>

2、参数value=<a href="http://demo.com"></a>。

添加一个过滤器对特殊字符进行拦截

package com.xxx.sys.filter;

import java.io.IOException;
import java.util.Enumeration;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.log4j.Logger;

/**
 * 非法字符过滤器
 * 1.所有非法字符配置在web.xml中,如需添加新字符,请自行配置
 * 2.请注意请求与相应时的编码格式设置,否则遇到中文时,会出现乱码(GBK与其子集应该没问题)
 * @author lee
 *
 */
public class CharFilter implements Filter {
	private Logger log = Logger.getLogger(CharFilter.class);
	private String encoding;
	private String[] legalNames;
	private String[] illegalChars;
	
	public void init(FilterConfig filterConfig) throws ServletException {
		encoding = filterConfig.getInitParameter("encoding");
		legalNames = filterConfig.getInitParameter("legalNames").split(",");
		illegalChars = filterConfig.getInitParameter("illegalChars").split(",");
	}
	
	public void destroy() {
		encoding = null;
		legalNames = null;
		illegalChars = null;
	}
	

	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain filterChain) throws IOException, ServletException {
		
		HttpServletRequest req = (HttpServletRequest)request;
		HttpServletResponse res = (HttpServletResponse) response;
		
		//必须手动指定编码格式
		req.setCharacterEncoding(encoding);
		String tempURL = req.getRequestURI(); 
		log.info(tempURL);
		Enumeration params = req.getParameterNames();
		
		//是否执行过滤  true:执行过滤  false:不执行过滤
		boolean executable = true;
		
		//非法状态  true:非法  false;不非法
		boolean illegalStatus = false;
		String illegalChar = "";
		//对参数名与参数进行判断
		w:while(params.hasMoreElements()){
			
			String paramName = (String) params.nextElement();
			
			executable = true;
			
			//密码不过滤
			if(paramName.toLowerCase().contains("password")){
				executable = false;
			}else{
				//检查提交参数的名字,是否合法,即不过滤其提交的值
				f:for(int i=0;i<legalNames.length;i++){
					if(legalNames[i].equals(paramName)){
						executable = false;
						break f;
					}
				}
			}
			
			if(executable){
				String[] paramValues = req.getParameterValues(paramName);
				
				f1:for(int i=0;i<paramValues.length;i++){
					
					String paramValue = paramValues[i];
					
					f2:for(int j=0;j<illegalChars.length;j++){
						
						illegalChar = illegalChars[j];
						
						if(paramValue.indexOf(illegalChar) != -1){
							illegalStatus = true;//非法状态
							break f2;
						}
					}
					
					if(illegalStatus){
						break f1;
					}
					
				}
			}
			
			if(illegalStatus){
				break w;
			}
		}
		//对URL进行判断
		for(int j=0;j<illegalChars.length;j++){
			
			illegalChar = illegalChars[j];
			
			if(tempURL.indexOf(illegalChar) != -1){
				illegalStatus = true;//非法状态
				break;
			}
		}
		if(illegalStatus){
			//必须手动指定编码格式
			res.setContentType("text/html;charset="+encoding);
			res.setCharacterEncoding(encoding);
			res.getWriter().print("<script>window.alert('当前链接中存在非法字符');window.history.go(-1);</script>");
		}else{
			filterChain.doFilter(request, response);
		}
	}

}


web.xml code

<filter>
		<filter-name>charFilter</filter-name>
		<filter-class>com.xxx.sys.filter.CharFilter</filter-class>
		<init-param>
			<param-name>encoding</param-name>
			<param-value>UTF-8</param-value>
		</init-param>
		<init-param>
			<param-name>legalNames</param-name>
			<param-value>content1,ver,historyURL,listURL</param-value>
		</init-param>
		<init-param>
			<param-name>illegalChars</param-name>
			<param-value>|,$,@,',",\',\",<,>,(,),+,CR,LF,\",",\,http</param-value>
		</init-param>
	</filter>
Web漏洞之CSRF(跨站请求伪造漏洞)详解 跨站请求伪造,冒用Cookie中的信息,发起请求攻击。CSRF(Cross-site request forgery)跨站请求伪造:攻击者诱导受害者进入第三方网站,在第三方网站中,向被攻击网站发送跨站请求。利用受害者在被攻击网站已经获取的注册凭证,绕过后台的用户验证,达到冒充用户对被攻击的网站执行某项操作的目的。 阅读详情

相关推荐

【钓鱼攻防】手把手带你使用GoPhish钓鱼框架

这个世界并不是掌握在那些嘲笑者的手中,而恰恰掌握在能够经受得住嘲笑与批评仍不断往前走的人手中。

4041

经典Web安全缺陷(框架钓鱼风险)

1、概述:Web安全应用程序的安全始终是一个重要的议题,因为网站是恶意工作者的第一目标。黑客利用网络传播其恶意软件、蠕虫、垃圾及其他等等。QWASP(是一个符合501(c)3)全球不以营利为目的的慈善组织专注于提高软件的安全性)概括了Web应用程序中最为危险的安全漏洞,但是在不断积极的发现可能出现的新的弱点以及新的Web攻击手段。黑客总是不断的在寻找新的方法欺骗用户,因此从渗透的角度看,我们需要看到

Liuhaiyan6的博客 8950

临床预测模型R语言全流程实战:从建模到Bootstrap验证的完整代码

临床预测模型是利用患者特征预测疾病结局发生概率的重要统计工具,其核心在于通过Logistic回归或Cox比例风险模型建立风险函数,并借助ROC曲线、校准曲线等指标评估模型的区分度与校准度。Bootstrap内部验证和DCA决策曲线分析则是当前审稿人关注的焦点,前者用于校正过拟合带来的乐观估计,后者用以判断模型在临床决策中的实际净获益。在肿瘤预后、慢病风险评估等场景中,基于R语言的模型构建与列线图可视化已成为论文发表的关键环节。本文以survival包自带肺癌数据为例,系统展示从数据预处理、变量筛选到多因素建

weixin_33483304的博客 241

IBM Security Appscan漏洞--通过框架钓鱼

通过框架钓鱼

YouXu 6754

Silvaco二极管、三极管、CMOS的制备

Silvaco二极管和三极管的制备

yytu231的博客 5749

手把手教你用LTspice仿真TVS二极管:从选型验证到波形分析全流程

本文详细介绍了如何使用LTspice仿真TVS二极管,从选型验证到波形分析的全流程。通过搭建仿真环境、核心参数验证和系统级防护策略,帮助工程师低成本评估TVS性能,优化电路设计。特别适用于电源设计和接口防护领域,提升工作效率和设计准确性。

weixin_29234239的博客 644

Iframe框架钓鱼攻击

Iframe框架钓鱼网站是指那些假扮成合法网站的虚假网站,旨在诱骗用户提供个人信息、账号密码、财务信息等敏感信息。这些网站通常会模仿知名的银行、电子支付平台、电子邮件服务提供商等机构的网站,以迷惑用户并诱使他们输入敏感信息。原理是,使用正则表达式来判断前端传过来的值是否正常,如不正常则不允以应答,如正常则向前端返回前端Iframe标签中的值。当前端传过来的值为InN时,执行doYInframe方法,可防护Iframe框架钓鱼的后端代码。在访问银行、支付平台等网站时,确保网址正确,使用书签或手动输入网址。

m0_62425768的博客 1233

实战|2026美团&大众点评餐饮数据抓取:Playwright/Selenium反爬全攻略

核心结论:2026年美团&大众点评的反爬核心是“多维度风控”,需组合使用“住宅IP+设备指纹伪装+真人行为模拟+动态验证处理”,Playwright是最优工具,Selenium仅作为补充。效率优化:单机爬取速度建议控制在“每小时500-800条”,避免高频请求触发风控;分布式爬取需确保每个节点使用独立住宅IP,且行为轨迹不一致。扩展方向集成WASM解密工具,破解2026年美团的Token加密;用AI识别动态点选验证,提升验证通过率;对接大数据平台,对抓取的餐饮数据进行可视化分析。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 2461

常见漏洞类型汇总

SQL注入攻击(SQL Injection),简称注入攻击、SQL注入,被广泛用于非法获取网站控制权,是发生在应用程序的数据库层上的安全漏洞。在设计程序,忽略了对输入字符串中夹带的SQL指令的检查,被数据库误认为是正常的SQL指令而运行,从而使数据库受到攻击,可能导致数据被窃取、更改、删除,以及进一步导致网站被嵌入恶意代码、被植入后门程序等危害。(1)表单提交,主要是POST请求,也包括GET请求;(2)URL参数提交,主要为GET请求参数;(3)Cookie参数提交;

A_991128a的博客 1446

总结目前开源的视频生成/视频编辑大模型

随着Sora的爆火,视频生成和视频编辑受到了越来越多的关注。这篇博客总结一下目前开源的视频生成和视频编辑的大模型,并分析他们各自的优缺点,以及在自己进行科研任务或者工作中应该如何选用对应的开源模型,希望能给从事这一领域研究和使用的小伙伴们帮助。

沉迷单车的追风少年 3542

Unreal5从入门到精通之如何实现移动端触屏滑动手势

随着移动设备的普及,越来越多的游戏和应用选择在移动平台上发布。Unreal Engine 5(UE5)作为一款强大的游戏引擎,提供了丰富的工具和功能,帮助开发者打造出色的移动体验。UE5不仅提升了图形质量,还大幅简化了开发流程,使得开发者能够更专注于游戏设计和用户体验。在移动游戏中,触屏滑动手势是用户与应用互动的主要方式之一。然而,许多开发者在实现这些功能时常常遇到困难。为了填补这一知识空白,本篇文章将详细介绍如何在UE5中实现移动端触屏滑动手势,帮助你从入门到精通,提升你的开发技能。

TxNet 1135

java跨站点脚本编制_跨站点请求伪造 跨站点脚本编制 通过框架钓鱼漏洞 | 学步园...

1、跨站点请求伪造 跨站点脚本编制 通过框架钓鱼漏洞主要是通过在url或参数中添加脚本如:1、URL中添加alert(1)2、参数value=。添加一个过滤器对特殊字符进行拦截package com.xxx.sys.filter;import java.io.IOException;import java.util.Enumeration;import javax.servlet.Filter;i...

weixin_33324435的博客 334

【WRFDA教程第四期】雷达数据同化(Radar Data Assimilation)

雷达数据同化(Radar Data Assimilation)

WW、forever的博客 1758

javaWeb安全漏洞修复总结

1 Web安全介绍1 2 SQL注入、盲注1 2.1 SQL注入、盲注概述 1 2.2 安全风险及原因 2 2.3 AppScan扫描建议 2 2.4 应用程序解决方案 4 3 会话标识未更新7 3.1 会话标识未更新概述 7 3.2 安全风险及原因分析 7 3.3 AppScan扫描建议 8 3.4 应用程序解决方案 8 4 已解密登录请求8 4.1 已解密...

dechen6073的博客 1692

30. 如何使用 SEGW 的 redefine 功能对 SAP 标准 OData 服务进行扩展

SAP 发布了很多标准的 Fiori 应用,可以通过笔者的文章里提到的进行浏览。比如 My Opportunities 就是 SAP CRM 领域的一个 Fiori 应用:下图是 Opportunity 明细页面的 Info 标签页:假设我们想在这些标准字段的末尾增添一个新字段 Created By,用来维护当前 Opportunity 的创建者。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1169

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

跨站请求伪造漏洞(CSRF)

CSRF(Cross-Site Request Forgery),也被称为 one-click attack 或者 session riding,即跨站请求伪造攻击。

qq_44484541的博客 1715

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

跨站请求伪造漏洞(CSRF)详解

摘要:本文探讨了Web安全中的同源策略和跨站请求伪造(CSRF)攻击。同源策略要求协议、域名和端口相同才能访问资源,是Web安全的基础机制。CSRF攻击则利用用户已登录状态,诱导其访问恶意页面伪造请求执行非授权操作。文章详细对比了XSS与CSRF的本质差异:XSS是注入恶意脚本窃取数据,CSRF是冒充用户执行操作。通过DVWA靶场示例,演示了GET和POST型CSRF的攻击原理及防御措施,包括Referer检查、Token验证等。最后指出CSRF攻击的三要素:明确操作目标、基于Cookie认证和可预测参数。

一只枷锁的博客 1723

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

appscan扫描 通过框架钓鱼、链接注入(便于跨站请求伪造)、跨站点脚本编制等问题

手上的一个项目最近用appscan扫描测试。遇到了几个中高问题: 通过框架钓鱼 链接注入(便于跨站请求伪造) 跨站点脚本编制 看了下测试报告给出的原因:未对用户输入正确执行危险字符清理。 修改建议是针对xss漏洞进行修复。 最开始处理的时候,参照预防XSS攻击,(参数/响应值)特殊字符过滤这篇博文做了过滤,再扫描还是有这几个问题。 后面又看了篇博文XSS攻击常识及常见的XSS攻击脚本汇总,了解...

Mervyn的博客 1801

CSRF跨站请求伪造

Cross-Site Request Forgery,跨站请求伪造,攻击者利用服务器对用户的信任,欺骗受害者去服务器上执行一些受害者不知情的一些请求。在CSRF的攻击场景中,攻击者一般会伪造一个请求(大概率是一个链接),然后欺骗用户去点击,用户一旦进行点击,整个的攻击过程就已经实现了,所以CSRF攻击也被称为"one click"攻击。

zj2084的博客 1040

网络安全防护:跨站点请求伪造(CSRF)

跨站点请求伪造(CSRF):攻击者用来通过用户浏览器冒充用户身份向服务器发送伪造请求并被目标服务器成功执行的漏洞

xike1024的博客 1643

跨站脚本攻击(XSS)与跨站请求伪造(CSRF)的介绍、区别和预防

攻击者通过在网页中注入恶意脚本(如 JavaScript),当用户访问该页面时,脚本会在用户浏览器中执行,从而窃取数据、劫持会话或控制用户行为。“我偷你的数据”(脚本注入,用户受害)。2011 年索尼 PSN 被黑事件,用户数据泄露,其中就涉及 XSS 漏洞。这个案例展示了 XSS 如何被用来窃取用户会话,进而访问敏感信息。示例。

chengoodflower的博客 1338

CSRF(跨站请求伪造)漏洞概述

5.浏览器在接收到这些攻击性代码后,根据网站 B 的请求,在用户不知情的情况下携带 Cookie 信息,向网站 A 发出请求。2.在用户信息通过验证后,网站 A 产生 Cookie 信息并返回给浏览器,此时用户登录网站 A 成功,可以正常发送请求到网站 A;xss:攻击者发现 XSS 漏洞——构造代码——发送给受害人——受害人打开——攻击者获取受害人的 cookie——完成攻击。csrf:攻击者发现 CSRF 漏洞——构造代码——发送给受害人——受害人打开——受害人执行代码——完成攻击。

2401_86835152的博客 874

跨站请求伪造——CSRF

csrf,不需要知道别人的cookies,伪装成别人 xss,要先知道别人的cookies,伪装成别人

这是笔者初学时所做的笔记,有错误的地方太多了,有些结论也只是笔者的一家之言。请自行判断 2482

跨站请求伪造(CSRF)漏洞简介及靶场演示

文章目录一、CSRF漏洞简介(一)什么是CSRF?(二)CSRF的原理(三)CSRF的危害二、CSRF漏洞如何挖掘?三、靶场实战(一)线上搭建环境测试(二)靶场实战四、小结 一、CSRF漏洞简介 (一)什么是CSRF? CSRF(Cross-site request forgery)跨站请求伪造,也被称为“One Click Attack”或者"Session Riding",通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。尽管听起来像跨站脚本(XSS),但它与XSS非常不同,XSS利用站点内的信

seek_2022的博客 6269

跨站请求伪造

摘要: CSRF(跨站请求伪造)是一种网络攻击,利用用户已登录的会话状态,诱导其浏览器向目标网站发送恶意请求。攻击需满足用户登录、访问恶意页面、网站无防护三个条件。防御方法包括:同源策略检查、CSRF Token(最有效)、双重Cookie验证及SameSite Cookie属性(严格限制第三方Cookie)。核心思想是增加攻击者无法伪造的凭证,推荐组合使用CSRF Token与SameSite Cookie以增强安全性。

2401_87259519的博客 776
上一篇: java 生成验证码
下一篇: 已解密的登陆请求
javaee_ssh
博客等级 码龄18年 42粉丝 42原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值