当前位置: 首页 > news >正文

做pc端网站咨询做像百姓网这样网站多少钱

做pc端网站咨询,做像百姓网这样网站多少钱,宁国网络推广,按钮特效网站目录 一、什么是跨站脚本攻击#xff08;XSS#xff09; 二、通常有哪些解决方案 三、常见的XSS攻击例子有哪些 3.1 存储型XSS攻击#xff08;黑产恶意截流#xff0c;跳转不法网站#xff09; 3.2反射型XSS攻击#xff1a; 四、什么是跨站请求伪造#xff1f; 五…目录 一、什么是跨站脚本攻击XSS 二、通常有哪些解决方案 三、常见的XSS攻击例子有哪些 3.1 存储型XSS攻击黑产恶意截流跳转不法网站 3.2反射型XSS攻击 四、什么是跨站请求伪造 五、常用跨站请求伪造解决方案有哪些 六、Springboot3.x整合Antisamy解决存储型XSS攻击 6.0 需求描述 6.1 Antisamy和Jsoup选型 6.2 Antisamy整合Springboot3.x详细步骤 第一步:引入pom.xml 第二步根据源码中的xml文件自定义自己需要的 第三步:将xml文件加载进Spring容器中 第四步:因Antisamy处理过文本后会默认在标签最后加入\n 所以加入这步骤去除\n 第五步:方法调用 第六步:方法调用中的后处理 一、什么是跨站脚本攻击XSS XSS攻击是指攻击者将恶意脚本注入到Web页面中当用户访问被注入的页面时 恶意脚本会在用户浏览器中执行从而窃取用户的敏感信息或进行其他恶意操作。 二、通常有哪些解决方案 对用户输入进行有效的过滤和验证特别是在展示用户输入内容时。 使用安全的编码机制如HTML编码和URL编码。 对Cookie设置HttpOnly属性限制脚本访问敏感信息。 阻止不受信任的域名或URL的内容插入到页面中 三、常见的XSS攻击例子有哪些 3.1 存储型XSS攻击黑产恶意截流跳转不法网站 攻击者将恶意脚本存储在目标网站的数据库中当其他用户访问包含该恶意脚本的页面时脚本会被执行 这种攻击利用了网站对用户输入的不当处理比如某个商品的评论列表用户进入这个页面则自动跳去其他页面 script   var maliciousCode alert(你的账户信息已被攻击请输入密码并发送给攻击者);   // 假设这里是漏洞存在的页面用户的输入没有进行过滤或转义   var userInput Hello, maliciousCode;   document.getElementById(content).innerHTML userInput; // 恶意脚本被存储并执行 /script 3.2反射型XSS攻击 攻击者通过诱使受害者点击包含恶意脚本的特制链接将恶意脚本作为参数传递给目标网站 网站在返回响应时会将恶意脚本包含在其中并被浏览器执行 !-- 假设这里是漏洞存在的搜索页面用户的输入没有进行过滤或转义 -- form action/search methodGET   input typetext namequery value   button typesubmit搜索/button /form !-- 攻击者构造的恶意链接 -- a href/search?queryscriptalert(你的账户信息已被攻击请输入密码并发送给攻击者)/script点击此处获取免费礼品/a 四、什么是跨站请求伪造 跨站请求伪造Cross-Site Request ForgeryCSRF是一种利用受信任的用户身份执行未经授权的操作的攻击方式。 攻击者通过伪造请求利用用户在目标网站中的登录状态来执行恶意操作或窃取用户的敏感信息 五、常用跨站请求伪造解决方案有哪些 引入CSRF令牌token并将其包含到表单或请求中,校验Referer头部确保请求来自合法的来源。 String csrfToken UUID.randomUUID().toString(); response.addCookie(CookieUtil.generateCookie(_csrf_, csrfToken)); 使用验证码、双因素身份验证、HTTPS等也是增加安全性的有效措施以确保用户与目标网站的交互是安全和可信的 启用SameSite属性限制Cookie的发送防止未经用户许可的跨站请求。 六、Springboot3.x整合Antisamy解决存储型XSS攻击 6.0 需求描述 支持对输入的文本内容支持自定义标签属性拦截(比如 输入的内容中不可以包含BUTTON、INPUT) 支持对输入内容进行正则过滤(比如 img标签中 文件地址只可以是jpg后缀结尾的) 6.1 Antisamy和Jsoup选型 Antisamy是什么 AntiSamy是一个开源的Java库主要用于防止跨站脚本攻击XSS和CSS注入攻击。它通过对用户输入的HTML和CSS进行验证和清理确保其中不包含恶意代码 Jsoup是什么  Jsoup是一个用于处理HTML的Java库它提供了非常方便的API允许用户解析、修改和清理HTML文档。Jsoup专注于HTML的解析和操作而不直接涉及安全性验证。 单纯从标签的转义拦截上2者都是可以的当前需求中包含正则过滤等要求使用Jsoup实现比较麻烦需要二次代码覆盖开发固调研后采用Antisamy。  6.2 Antisamy整合Springboot3.x详细步骤 Antisamy源码地址:https://github.com/nahsra/antisamy/tree/v1.7.5 第一步:引入pom.xml dependencygroupIdorg.owasp.antisamy/groupIdartifactIdantisamy/artifactIdversion1.7.5/version/dependency 第二步根据源码中的xml文件自定义自己需要的 本博文中的xml是最基础的仅作参考样例使用需要了解配置详情的可以去其它博文或者官网查看本文重点在整合SpringBoot3.x ?xml version1.0 encodingISO-8859-1?!-- W3C rules retrieved from: http://www.w3.org/TR/html401/struct/global.html --!-- Slashdot allowed tags taken from Reply page: b i p br a ol ul li dl dt dd em strong tt blockquote divecode quote --anti-samy-rules xmlns:xsihttp://www.w3.org/2001/XMLSchema-instance xsi:noNamespaceSchemaLocationantisamy.xsddirectivesdirective nameomitXmlDeclaration valuetrue /directive nameomitDoctypeDeclaration valuetrue /directive namemaxInputSize value5000 /directive nameformatOutput valuetrue /directive nameembedStyleSheets valuefalse //directivescommon-regexpsregexp nameimgTypesvalue^.*\.(gif|jpg|jpeg|png)$ /regexp nameanything value.* //common-regexpscommon-attributesattribute nameabbrregexp-listregexp nameanything //regexp-list/attribute//除了abbr属性之外其余都会被转义删除/common-attributesglobal-tag-attributesattribute nameabbr //global-tag-attributestags-to-encode/tags-to-encode !-- tag-rules The configured label is allowed to pass--tag-rulestag namea actionvalidate ///除这里面配置的标签之外其余都会被转义删除tag nameimg actionvalidate //img标签的src中 文件后缀只能是gif|jpg|jpeg|png配置之一attribute namesrcregexp-listregexp nameimgTypes //regexp-list/attribute/tag/tag-rulescss-rules/css-rules!-- allowed-empty-tags Allow the tag to be empty, allow the tag inside the attribute does not belong to the tag, this case will not be escaped and deleted--allowed-empty-tagsliteral-listliteral valuea //literal-list/allowed-empty-tags/anti-samy-rules第三步:将xml文件加载进Spring容器中 Configuration public class AntiSamyConfig {Beanpublic AntiSamyContent antiSamyBean() throws Exception{try (InputStream inputStream getClass().getResourceAsStream(/antisamy175/antisamy_custom.xml)) {Policy policy Policy.getInstance(inputStream);return new AntiSamyContent (policy);}} } 注意文件存放路径,resources目录下建个 antisamy175 文件夹。再将xml放进去 第四步:因Antisamy处理过文本后会默认在标签最后加入\n 所以加入这步骤去除\n public class AntiSamyOutputFormatter extends AntiSamySAXScanner {public AntiSamyOutputFormatter (Policy policy) {super(policy);}Overrideprotected OutputFormat getOutputFormat() {OutputFormat format super.getOutputFormat();format.setLineSeparator();//这是为了去除antisamy处理后在每行结尾自动匹配的\nreturn format;}}public class AntiSamyContent extends AntiSamy {private Policy policy null;public AntiSamyContent (Policy policy) {super(policy);this.policy policy;}public CleanResults scanMeetingAgenda(String taintedHTML) throws ScanException {return (new AntiSamyOutputFormatter (this.policy)).scan(taintedHTML);} } 第五步:方法调用 htmlSanitizerService.sanitizeHtml(str); 第六步:方法调用中的后处理 antisamy处理结果在实际页面展示时会存在换行 回车等问题注重回显的需要对这块做额外的处理。 Service public class HtmlSanitizerService {private AntiSamyContent antiSamy;Autowiredpublic HtmlSanitizerService(AntiSamyContent antiSamy) {this.antiSamy antiSamy;}public String sanitizeHtml(String sourceStr) {String cleanStr sourceStr;try{CleanResults cr antiSamy.scanMeetingAgenda(sourceStr);cleanStr cr.getCleanHTML();}catch (ScanException e){}return cleanStr;} } 至此本次分享已结束。提及的文本过滤方式其最大的亮点在于其直观性和灵活性。我们无需编写冗长的Java代码逻辑而是可以直接通过修改XML配置文件来实现文本内容的过滤。更值得一提的是XML内部支持正则表达式的使用这使得过滤规则的设置变得更加简洁高效。相较于传统的文本处理库如jsoup这种方式不仅减少了代码量还提高了开发和维护的效率。 希望本次分享的内容能够为您在文本处理方面提供一些新的思路和方法。感谢您的阅读期待与您共同探讨更多有趣的技术话题
http://www.hkea.cn/news/14310205/

相关文章:

  • 什么是小手机型网站如何申请商业服务器
  • 太原网站推广怎么做福建省幕墙建设网站要报备吗
  • 佛山建设网站wordpress图形验证码
  • 怎样用dw做网站导航条昆山做网站公司
  • asp网站图片不显示网站服务器好
  • 用wordpress建站学什么新会住房建设局网站
  • 创意网站 模板广州网站建设团队
  • 青岛广新信建设咨询公司网站wordpress 分类目录 子目录
  • 做网站实训目的和意义网站建设的整体流程有哪些
  • 网站页面优化关键词网站查询
  • 提高自己网站个人网站设计构思
  • 深圳工程建设信息网站一个新的网站怎么做SEO优化
  • 衡阳建设企业网站西安网站建设个人
  • 域名备案和网站备案的区别注册域名的常见问题
  • 网站代运营合同做网站的那个语言好
  • 淘宝客怎么自建网站做推广wordpress 博客登陆
  • 网站右侧返回顶部如何做线上销售和推广
  • 如何注册一个空壳公司seo推广岗位职责
  • code网站免费网站 建设 申请报告
  • 海宏集团网站建设wordpress小说连载插件
  • 做网站常用的软件网站建设流程详细
  • 彩票网站怎么做系统简单5步 制作wordpress留言板
  • 静态购物网站模版注册城乡规划师哪个网校好
  • 做网站建设销售工资怎么破解网站后台密码
  • 怎么样的网站合适做城市代理个人外贸网站
  • 佛山精品网站建设免建网站
  • 建设一个网站的所有代码嘉兴官网
  • 公司做网站找谁做网站的公司外国人学做中国菜的网站
  • 怎么确定电商网站建设的目标广州公司注册代理公司注册服务
  • 网页上做ppt的网站工业设计网站有那些