WEB安全漏洞深入分析及其安全编码

Java安全编码:防范常见的安全漏洞和攻击 为防范会话管理漏洞,开发人员应使用安全的会话管理机制,如使用HTTPS协议传输敏感信息、设置合理的会话超时时间和使用强大的会话标识符等。在用户身份认证和授权方面,开发人员应使用安全的机制,如使用哈希算法存储用户密码、使用加盐技术增加密码的安全性,以及使用RBAC(Role-Based Access Control)模型进行权限管理等。开发人员应使用安全的会话管理机制,如使用HTTPS协议传输敏感信息,设置合理的会话超时时间,并使用强大的会话标识符。对于用户上传的文件,开发人员应进行严格的检查和过滤。 阅读详情

一、Web安全基础

1.1 常见的Web安全漏洞
1.2 安全编码原则

一切输入都是有害的!!!输出也不安全!

输入:传参,cookie、session、http header、数据库……

输出:异常信息、敏感信息、xss

没有绝对的安全……

1.3 数据验证
1.4 身份认证&会话管理
1.5 授权管理
1.6 存储安全

二、跨站脚本攻击及其安全编码

2.1 定义

XSS(Cross Site Script)漏洞,从本质上来说就是将数据注入到了静态脚本代码中(HTML或者Javascript等),当浏览器渲染整个HTML文档的过程中触发了注入的脚本,导致了XSS攻击的发生。

2.2 XSS攻击模式
2.3 XSS的利用

某生活网站存在反射型、存储型跨站脚本攻击

在wap页面的网友中心发表提问页面中,应用程序对用户的输入过滤不严格,导致存在存储型跨站脚本攻击,攻击者在标题处构造跨站脚本”<img src=@ onerror=alert(19)>”

提交问题后回到“我的帖子”页面,可以看到跨站脚本被执行,弹出“19”窗口,

2.4 XSS的分类

详细介绍: juejin.cn/post/689012…

三、跨站请求伪造及其安全编码

3.1 定义

Cross-site Request Forgery

–在某个恶意站点的页面上,促使访问者请求被攻击网站的某个 URL,从而达到改变服务器端数据的目的

攻击者盗用了你的身份,以你的名义发送恶意请求

–诞生于2000年,火于2007/2008年

–90%的网站存在此类漏洞

–特征为目标站点无token或者referer限制

–利用方式分GET与POST两种

CSRF 与 XSS的区别?

Csrf的破坏力取决于受害者的权限,与浏览器机制有关。

  • CSRF,跨站请求伪造(Cross Site Request Forgery)
  • 在用户会话下对某个请求发出GET/POST请求,而请求并非用户自愿发出
  • 网站通过cookie识别用户,当用户在某网站成功进行身份验证后,浏览器会得到一个标识其身份的cookie。只要不关闭浏览器或退出登录,以后访问这个网站都会带上这个cookie
  • 如果这期间被人诱骗请求了这个网站的url,则相当于发出了身份认证后的请求,可能会执行一些用户不想做的敏感操作

详细介绍: juejin.cn/post/689012…

四、文件上传及其安全编码

4.1、非法文件上传

非法文件上传产生的主要原因就是在服务器端没有对用户上传的文件类型做校验或者校验不完整,导致用户可以上传恶意脚本到服务器。

4.2、文件上传防护

1、白名单检查文件扩展名,不属于白名单内的,不允许上传。

2、上传文件的保存目录不可解析jsp、php等脚本语言

3、文件名随机命名。如UUID、GUID,不允许用户自定义。

4、如果允许,对上传的图片文件进行渲染

5、记录日志

五、越权漏洞及其安全编码

5.1 定义
5.1.1、垂直越权漏洞

垂直越权漏洞,也称为权限提升,是一种“基于URL的访问控制”设计缺陷引起的漏洞。由于Web应用程序没有做权限控制或者仅在菜单上做了权限控制,导致恶意用户只要猜测其他管理页面的URL,就可以访问或控制其他角色拥有的数据或页面,达到权限提升的目的。

5.1.2、水平越权漏洞

水平越权漏洞,是一种“基于数据的访问控制”设计缺陷引起的漏洞。由于服务器端在接收到请求数据进行操作时没有判断数据的所属人而导致的越权数据访问漏洞。如服务器端从客户端提交的request参数(用户能够控制的数据)中获取用户id,恶意攻击者通过变换请求ID的值,查看或修改不属于本人的数据。

5.2、越权漏洞防护
5.2.1、垂直越权漏洞

垂直越权漏洞:在调用功能之前,验证当前用户身份是否有权限调用相关功能(推荐使用过滤器,进行统一权限验证)

5.2.2、水平越权漏洞

水平越权漏洞:在用户进行操作时,从session中获取用户id,将传入的参数与用户的身份做绑定校验。

六、业务安全

在电子银行系统中,除了常规的如SQL,XSS,CSRF、XXE等web漏洞外,更重要的是其业务上的安全。银行业务直接关系到用户的经济利益,因而保证其业务上的安全及其重要。

6.1、账户信息安全

账户是一个系统的入口,关系到用户最直接的利益,因而账户的安全在业务安全中占及其重要的地位。账户体系分多个层次,每个环节的漏洞,都将给用户带来极大的损失。

分类

  • 信息查询
  • 撞库风险
  • 弱密码
  • 密码找回
  • 密码找回凭证太弱,容易被爆破

密码找回凭证可以从客户端、URL、网页源代码中直接获取

最后提交新密码时修改用户ID为其他ID

跳过验证步骤、找回方式,直接到设置新密码页面

用户登录时依据cookie中的某字段来区分账户

6.2、业务数据安全

金额数据篡改

抓包修改金额等字段,例如在支付页面抓取请求中商品的金额字段,修改成任意数额的金额并提交,查看能否以修改后的金额数据完成业务流程。

商品数量篡改

抓包修改商品数量等字段,将请求中的商品数量修改成任意数额,如负数并提交,查看能否以修改后的数量完成业务流程。

更多安全问题请查看链接: blog.nsfocus.net/web-vulnera…

C语言安全编码实践:98条标准规则详解 常量是用来存储不会改变的值的一种变量类型,在多数编程语言中,常量通常是用特定的关键字来定义的。定义常量的主要目的是为了提高代码的可读性和维护性。在使用常量时,有以下几种场景:配置信息:系统配置参数通常不会在程序运行时改变,例如一个API的端口号或者超时时间。c// API的端口号// 超时时间数学常数:如π值、自然对数的底数e等。c用户界面元素:比如按钮ID、菜单项等。c业务规则相关的值:例如折扣比例、税率等。c// 20%的折扣。 阅读详情

相关推荐

安全编码的基本准则,安全编码开发规范。

安全编码的基本准则,安全开发规范。

Web常用编码以及攻击绕过笔记

一、URL编码 形式:“%”加上ASCII码(先将字符转换为两位ASCII码,再转为16进制),其中加号“+”在URL编码中和“%20”表示一样,均为空格。 当遇到非ASCII码表示的字符时,如中文,浏览器或通过编写URLEncode,根据UTF-8、GBK等编码16进制形式,进行转换。如“春”的UTF-8编码为E6 98 A5,因此其在支持UTF-8的情况下,URL编码为%E6%98%A5。

gc_msc的博客 5722

安全代码规则编写指南

什么是安全编码规则? • 什么是Secure Coding Rulepacks? • 什么是自定义规则? • 什么是漏洞类别? • 什么是规则类型

常见21种漏洞编码安全规范及解决方案

常见21种漏洞编码安全规范

weixin_44185213的博客 7706

LangFlow开源神器:拖拽构建AI Agent与MCP协议集成实战

LangFlow 15万星开源神器:拖拽搭建 AI Agent,一键部署 API / MCP / JSON 在AI应用开发领域,传统编码方式往往需要处理复杂的API调用、数据处理和流程编排,这让很多开发者望而却步。LangFlow作为GitHub上获得15万星的开源项目,通过可视化拖拽的方式彻底改变了AI Agent的开发体验。本文将完整介绍如何使用LangFlow快速构建功能强大的AI Agent,并实现API、MCP协议和JSON配置的一键部署。 1. LangFlow与AI Agent核心概念解析 1

weixin_33717117的博客 934

esp32移植canopen协议栈(二)

本文续接上一篇文章,之前我们已经搭建好了esp32的开发环境,以及初始工程。接下来我们开始实现can驱动相关,以及使用c++封装can接口。本文使用esp32实现c++实现can驱动层的封装。下一步移植canopen!!!嘻嘻。

qq_50267418的博客 1905

前端安全编码规范

前端安全编码规范1.跨站脚本攻击(Cross Sites Script)1.1 反射型XSS1.2 存储型XSS1.3 DOM based XSS1.4 如何去检测是否存在XSS1.5 XSS的攻击方式1.5.1 Cookie劫持1.5.2 构造GET和POST请求1.5.3 XSS钓鱼1.5.4 获取用户真实的IP地址1.6 XSS的防御方式1.6.1 HttpOnly1.6.2 输入检查(XSS Filter)1.6.3 输出检查1.6.4 更严格的做法2.跨站点请求伪造(Cross Sites Req

qq_41945550的博客 927

北京途游游戏后端开发面经

北京途游游戏后端开发面经 我面试岗位是基于Python的后端开发工程师,主要是搞游戏的服务器开发。面试一共分了两轮,之后说是看看其他的候选人再定,感觉凉凉~~ 由于受到此次新型冠状病毒疫情的影响,本次面试采用视频面试的方式,下面是面试的时候面试官提的问题,python的基础知识还是问的比较多的。  一面:(32分钟微信视频)  简单做下自我介绍,   1.说一下你开发过的项目,挑一个说下你都做了...

weixin_45603043的博客 2124

网络安全——web中常见编码

编码(encode)和解码()是相当广泛的话题,设计计算机对信息处理的方式,常见于加解密中,当然学习WEB也要了解一些常见的编码,可在攻击中使用编码绕过。

m0_69582710的博客 602

Windows 10下用VS2022编译AFSIM 2.9.0的完整避坑指南

本文提供了在Windows 10系统下,使用Visual Studio 2022编译AFSIM 2.9.0仿真框架的详细指南。文章系统梳理了从环境准备、CMake配置、编译链接到安装打包的全流程,并重点针对编译过程中常见的文件编码、命名空间冲突等高频错误提供了具体解决方案,旨在帮助开发者高效避坑,顺利完成AFSIM在Windows平台上的构建。

weixin_28839549的博客 549

华大HC32F460 TCP Server实验

华大HC32F460 TCP Server实验

ZhuoWuKeJi的博客 1270

限制会话id服务端不共享_【干货分享】Web安全漏洞深入分析及其安全编码

阅读:13,003超全Web漏洞详解及其对应的安全编码规则,包括:SQL注入、XSS、CSRF、文件上传、路径遍历、越权、XML以及业务安全等,实例告诉你各个漏洞对应的编码规则。给你的代码加把安全锁!一、Web安全基础1.1常见的Web安全漏洞1.2安全编码原则一切输入都是有害的!!!输出也不安全!输入:传参,cookie、session、http header、数据库……输出:异常信息、敏感...

weixin_39930276的博客 548

(二)目标检测之 HOG+SVM 算法

文章目录一、概述二、方法概述三、积分图四、AdaBoost五、级联检测六、结果七、复现八、总结参考资料 一、概述   梯度直方图HOG(Histogram of Oriented Gradients)是法国人Dalal在2005年CVPR会议上提出的特征提取算法,并将其与 SVM 配合,用于行人检测。论文地址:Histograms of oriented gradients for human detection HOG有个优点,提取的边缘和梯度特征能很好的抓住局部形状的特点,且因是对图像做了Gamma

天青如水的博客 1万+

每个开发人员都应该知道的 10 大安全编码实践

所以你有它。这是每个开发人员都应该知道的十种安全编码实践。它们一起可以减少错误并保护你的系统免受恶意活动的侵害。通过遵循这些约定,你可以帮助确保代码安全、保护你的公司并减少被攻击者利用的机会。

努力是为了站在万人之中,成为别人的光 9732

基于FPGA的超声成像算法的硬件设计

顶层设计如下图: 1. Verilog的硬件设计型号是 ALTERA 2.数据的输入量已经给出,附上的四个矩阵输入都要实现。 3.波束形成部分要在FPGA上完成,最后的matlab的代码部分只是获取数据后的图像显示 4.不需要动态聚焦,只是完成固定的四个不同输入数据的显示即可 5.不需要实物,但要实现硬件的仿真,要有相应的模块图和结构图,类似如下 具体实现过程和最终结果如下: 定义aperture(孔径)大小————输入量,数据已给出,一共四个规格的ape...

FPGA/MATLAB学习教程/源码/项目合作开发 1万+

audio语音相关的基础知识-VAD,ASR,AEC,AGC,BF等

有音素之间的间隙,也有静音和语音本身的间隙,为了对数据从时间上进行相对的校准,语音端点检测技术就应运而生了,因此端点检测技术可以决定这种校准的相对精度,使得同一内容的特征更趋于相同,当然,一般情况下是不可能完全相同的。盲源分离的目的是求得源信号的最佳估计,盲辨识的目的是求得传输通道的。这个技术的主要任务是从带有噪声的语音中准确的定位出语音的开始和结束点,因为语音中含有很长的静音,也就是把静音和实际语音分离开来,因为是语音数据的原始处理,所以VAD是语音信号处理过程的关键技术之一。呈现出与会者清晰的声音。

u013250861的博客 1034

Web安全漏洞加固手册 V2.0 下载仓库

Web安全漏洞加固手册 V2.0 下载仓库 【下载地址】Web安全漏洞加固手册V2.0下载仓库 本仓库提供《Web安全漏洞加固手册 V2.0》的下载资源。该手册旨在帮助开发者和安全专家识别和修复常见的Web安全漏洞,提升Web应用的安全性 ...

gitblog_06659的博客 949

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Java安全编码规范之Web安全漏洞

当公司访问量增大,自然而然就会遇到网络攻击了,同时也会需要考虑如何规范代码编写来规避这些漏洞攻击。如果你在开发中还没有遇到过,或者说还没有思考过这些问题,可以通过这篇文章多了解下 现在的攻击是多么的厉害。同时我们在编码的时候就可以多注意一些了

echohuangshihuxue的博客 1296

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Web 应用程序中安全编码的最佳实践

采用安全编码实践不仅是技术上的必要性,也是构建有弹性且值得信赖的 Web 应用程序的基本步骤。

网络研究观 8804

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

【亲测免费】 提升Web应用安全性的利器:《Web安全漏洞加固手册 V2.0》

提升Web应用安全性的利器:《Web安全漏洞加固手册 V2.0》 【下载地址】Web安全漏洞加固手册V2.0下载仓库 本仓库提供《Web安全漏洞加固手册 V2.0》的下载资源。该手册旨在帮助开发者和安全专家识别和修复常见的Web安全漏洞,提升Web应用的安全性 ...

gitblog_06680的博客 999

Java语言的安全编码

随着互联网和信息技术的迅猛发展,软件安全问题愈发受到重视。特别是在Java语言的开发环境中,如何安全地进行编码,防止潜在的安全漏洞,已经成为了开发者必须直面的重要课题。本文将从Java语言的特点、常见的安全漏洞、编码规范、安全实践等多个方面探讨如何实现安全编码。

2501_91009330的博客 643

使用 Web 应用程序示例在 Java 中进行安全编码

基本了解 Web 的工作原理了解一种用于 Web 开发的编程语言。

duoshehuan6005的博客 758

Go语言安全编码实践指南:打造安全可靠的Web应用

Go语言安全编码实践指南:打造安全可靠的Web应用 项目介绍 Go Secure Coding Practices 是由 OWASP 发布的 Go Secure Coding Practice 的日文翻译版本。该项目旨在为使用 Go 语言进行 Web 应用开发的开发者提供一份详尽的安全编码实践指南。 本指南由 Checkmarx Security Research Team 与 OWASP 合作编...

gitblog_00252的博客 719

如何实施安全编码标准和代码审查流程,以减少应用程序中的安全漏洞?

本文针对安全和可靠性方面提供了几个关键性的建议:1. 遵守行业认可的安全编程标准和框架2. 结合实际业务需求,制定并实施适合自己的安全政策和技术规格说明.3. 在项目的全生命周期中加入定期的安全检查,确保持续改进和维护高质量的开发成果.最后但并非最不重要的是, 有效地沟通和协调不同部门和层级的成员以实现共同的利益和目标, 共同营造更安全高效的软件开发环境.

ZL_1618的博客 1134

安全编码规范及安全代码审计实用指南

在数字化时代,软件系统面临着层出不穷的安全威胁,从数据泄露到系统被恶意攻击,每一个漏洞都可能带来严重后果。而安全编码规范与代码审计,正是构筑软件安全防线的核心手段。掌握科学的编码规范,配合高效的代码审计流程,能从源头降低安全风险,确保系统稳健运行。​。

ruanjiananquan99的博客 1533
上一篇: 网络安全工程师的入门学习的路径
下一篇: 网络安全工程师需要具备的5个重要技能
程序员负总裁
博客等级 码龄4年 1万+粉丝 2065原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值