小迪安全代码语言回溯

2024-06-11 20:04

本文主要是介绍小迪安全代码语言回溯,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

java安全

第一个就是文件上传,可以通过../上传到上一级目录,以及别的目录,避免本目录不可以执行

jw令牌窃取

令牌由三部分组成,以.号分割,在java的程序看到cookie是三个奇怪的字符串以.号分开,可以确定是jwt令牌,可以拿去专门的网站拿去解密

然后攻击方式,在对方支持空密钥的时候,直接空密钥攻击

不支持空密钥的时候就爆破密钥

如果运用到了其他的功能,比如在令牌解密后多了一些参数,找到对应参数的功能是什么,根据功能会造成漏洞,比如读取就会造成任意文件的读取,他也可能通过sql语句读取的内容,那就造成了sql注入

目前大概了讲了那么多专属的漏洞,其他的都是通用漏洞,java反序列化等有一个姐课专门讲

js安全

js源代码可以直接查看到,在js中也存在参数和函数。当存在可控的参数以函数时候,即可造成漏洞,他的区别就可以看到源代码。相当于白盒测试

案例一:

插件,看到js框架,就用到了js源码

网站搭建可能用到混杂,或者纯一个代码搭建,混杂就是多个代码这样

这种涉及到js的测试看看是不是前端代码编写

访问一个网站抓包,看名字app,还是js文件,点开看有网站前端的内容,判断是js代码编写的,还可以继续往下看,能不能逻辑严重,直接关键字搜索需要,比如验证绕过,搜验证码

那家抓包,拦截返回包,修改js参数的值来实现绕过

就做到了任意账号密码充值

也可以,实现任意账户密码重置,但是在这里点重置密码的时候显示流程错误

继续分析js代码,分析了一下还是检测cod值回显

直接秒

这个看弹幕应该是小迪翻车了,只绕过了前端认证,后端没有改,应该是修了,上一期成功了

案例一(菠菜):

点在线咨询,然后复制url,到浏览器访问一下,就发现了是前端开发

分析一波js逻辑

但是这一看验证的很安全,又不能直接禁用js插件,不然正常功能也受限制了 ,那就只禁用验证这一块

办法;直接右键另存为,把代码下载下来

然后没有下载下来,发现是外联的一个js

然后继续分js代码,发现视频没有验证

直接传视频的时候,上传php文件

上传成功了,但是没有地址,看看属性里面有没有显示地址,没有,那就抓包看看,也没有,直接开全抓包工具可以看到,

但是这个php不解析,但成功上传了

判断是js代码的方法

插件wappalyzer

源代码简短

引入多个js文件

一般有/static/js/app.js 等顺序的js文件

cookie中有connect.sid(因为node.js开发)

开发框架-Vulhub-Node.JS安全
漏洞分析

这个直接vluhub搭建环境就行

原因是 Node.js 8.5.0 对目录进行normalize操作时出现了逻辑错误,导致向上层跳跃的时候(如../../../../../../etc/passwd),在中间位置增加foo/../(如../../../foo/../../../../etc/passwd),即可使normalize返回/etc/passwd,但实际上正确结果应该是../../../../../../etc/passwd。

express这类web框架,通常会提供了静态文件服务器的功能,这些功能依赖于normalize函数。比如,express在判断path是否超出静态目录范围时,就用到了normalize函数,上述BUG导致normalize函数返回错误结果导致绕过了检查,造成任意文件读取漏洞。

当然,normalize的BUG可以影响的绝非仅有express,更有待深入挖掘。不过因为这个BUG是node 8.5.0 中引入的,在 8.6 中就进行了修复,所以影响范围有限。

代码分析

然后构造恶意pyload即可

让他去包含etc/passwd,就实现了目录穿越

等等在来学习

jian

kang

这篇关于小迪安全代码语言回溯的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1052158

相关文章

HTML5的input标签的`type`属性值详解和代码示例

《HTML5的input标签的`type`属性值详解和代码示例》HTML5的`input`标签提供了多种`type`属性值,用于创建不同类型的输入控件,满足用户输入的多样化需求,从文本输入、密码输入、... 目录一、引言二、文本类输入类型2.1 text2.2 password2.3 textarea(严格

input的accept属性让文件上传安全高效

《input的accept属性让文件上传安全高效》文章介绍了HTML的input文件上传`accept`属性在文件上传校验中的重要性和优势,通过使用`accept`属性,可以减少前端JavaScrip... 目录前言那个悄悄毁掉你上传体验的“常见写法”改变一切的 html 小特性:accept真正的魔法:让

JAVA项目swing转javafx语法规则以及示例代码

《JAVA项目swing转javafx语法规则以及示例代码》:本文主要介绍JAVA项目swing转javafx语法规则以及示例代码的相关资料,文中详细讲解了主类继承、窗口创建、布局管理、控件替换、... 目录最常用的“一行换一行”速查表(直接全局替换)实际转换示例(JFramejs → JavaFX)迁移建

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

MyBatis中的两种参数传递类型详解(示例代码)

《MyBatis中的两种参数传递类型详解(示例代码)》文章介绍了MyBatis中传递多个参数的两种方式,使用Map和使用@Param注解或封装POJO,Map方式适用于动态、不固定的参数,但可读性和安... 目录✅ android方式一:使用Map<String, Object>✅ 方式二:使用@Param

SpringBoot实现图形验证码的示例代码

《SpringBoot实现图形验证码的示例代码》验证码的实现方式有很多,可以由前端实现,也可以由后端进行实现,也有很多的插件和工具包可以使用,在这里,我们使用Hutool提供的小工具实现,本文介绍Sp... 目录项目创建前端代码实现约定前后端交互接口需求分析接口定义Hutool工具实现服务器端代码引入依赖获

C语言逗号运算符和逗号表达式的使用小结

《C语言逗号运算符和逗号表达式的使用小结》本文详细介绍了C语言中的逗号运算符和逗号表达式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习... 在C语言中逗号“,”也是一种运算符,称为逗号运算符。 其功能是把两个表达式连接其一般形式为:表达

Go语言实现桥接模式

《Go语言实现桥接模式》桥接模式是一种结构型设计模式,它将抽象部分与实现部分分离,使它们可以独立地变化,本文就来介绍一下了Go语言实现桥接模式,感兴趣的可以了解一下... 目录简介核心概念为什么使用桥接模式?应用场景案例分析步骤一:定义实现接口步骤二:创建具体实现类步骤三:定义抽象类步骤四:创建扩展抽象类步

GO语言实现串口简单通讯

《GO语言实现串口简单通讯》本文分享了使用Go语言进行串口通讯的实践过程,详细介绍了串口配置、数据发送与接收的代码实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 目录背景串口通讯代码代码块分解解析完整代码运行结果背景最近再学习 go 语言,在某宝用5块钱买了个

利用Python在万圣节实现比心弹窗告白代码

《利用Python在万圣节实现比心弹窗告白代码》:本文主要介绍关于利用Python在万圣节实现比心弹窗告白代码的相关资料,每个弹窗会显示一条温馨提示,程序通过参数方程绘制爱心形状,并使用多线程技术... 目录前言效果预览要点1. 爱心曲线方程2. 显示温馨弹窗函数(详细拆解)2.1 函数定义和延迟机制2.2