搜索结果
查询Tags标签: Unsafe,共有 43条记录-
Unsafe类park和unpark方法源码深入分析(mutex+cond)-转载
转载:https://blog.csdn.net/saintyyu/article/details/107426428 说明:本篇博客整理自文末的多篇参考博客(每篇博客各有侧重)。本文结合源码对Unsafe的park和unpark方法进行了完整全面的梳理,并对部分参考博客中存在的错误描述进行说明。 LockSupport类的park/unpar…
2022/8/4 14:25:15 人评论 次浏览 -
如何写出同事看不懂的Java代码?
原创:微信公众号 码农参上,欢迎分享,转载请保留出处。哈喽大家好啊,我是没更新就是在家忙着带娃的Hydra。 前几天,正巧赶上组里代码review,一下午下来,感觉整个人都血压拉满了。五花八门的代码让我不禁感叹,代码规范这条道路还是任重而道远… 那么今天就来给大家总…
2022/6/22 1:21:05 人评论 次浏览 -
Go圣经学习笔记——底层编程
Go底层编程 Go语言的语言特性, 隐藏许多细节:Go语言设计的一些安全机制将错误检查提前到了编译期,如类型检查错误。数组越界、空指针等错误在运行时检查,发现错误立即终止,通过Go的内存管理、gc可以消除大部分的野指针和内存泄漏。无法知道一个结构体真实的内存布局,也…
2022/4/29 11:12:45 人评论 次浏览 -
golang低级编程:一.unsafe包
go语言在设计上确保了一些安全的属性,限制了程序可能出错的途径。例如严格的类型转换规则。但也使得很多实现的细节无法通过go程序来访问,例如对于聚合类型(如结构体)的内存布局,或者一个函数对应的机器码。 这里我们将讨论unsafe包,它是由编译器实现的,实现了对语言…
2022/3/2 1:51:23 人评论 次浏览 -
Java中的Unsafe在安全领域的一些应用总结和复现
目录0 前言1 基本使用1.1 内存级别修改值1.2 创建对象1.3 创建VM Anonymous Class2 利用姿势2.1 修改值以关闭RASP等防御措施2.2 创建NativeLibrary对象实现webshell2.3 匿名的内存马2.4 shellcode和instrumentation对象构建3 总结参考: 0 前言 unsafe里面有很多好用的方…
2022/3/1 22:22:30 人评论 次浏览 -
Unsafe应用解析
1. 前言Unsafe是位于sun.misc包下的一个类,主要提供一些用于执行低级别、不安全操作的方法,如直接访问系统内存资源、自主管理内存资源等,这些方法在提升Java运行效率、增强Java语言底层资源操作能力方面起到了很大的作用。但由于Unsafe类使Java语言拥有了类似C语言指针…
2022/1/23 6:06:38 人评论 次浏览 -
NoAgent内存马检测
内存马是国内目前比较流行的web层权限维持方式,研究文章也特别多。本人阅读了rebeyond师傅的Java 内存攻击技术漫谈后,尝试利用其中的技术开发用于内存马检测的工具。 检测 首先,内存马分为两类,一类是利用web中间件组件或框架的特性在web执行流程中嵌入恶意代码来执行…
2022/1/19 7:07:49 人评论 次浏览 -
NoAgent内存马检测
内存马是国内目前比较流行的web层权限维持方式,研究文章也特别多。本人阅读了rebeyond师傅的Java 内存攻击技术漫谈后,尝试利用其中的技术开发用于内存马检测的工具。 检测 首先,内存马分为两类,一类是利用web中间件组件或框架的特性在web执行流程中嵌入恶意代码来执行…
2022/1/19 7:07:49 人评论 次浏览 -
GOLANG MAP源码解读
资料来源:https://github.com/WuPeiqi/go_course 源码 /src/runtime/mapGolang map源码详解_风神韵-CSDN博客_go map 源码map的基本结构图源[1]图源[3] 其中hmap的源码[2] // A header for a Go map. type hmap struct {// Note: the format of the hmap is also encoded…
2022/1/13 17:07:03 人评论 次浏览 -
GOLANG MAP源码解读
资料来源:https://github.com/WuPeiqi/go_course 源码 /src/runtime/mapGolang map源码详解_风神韵-CSDN博客_go map 源码map的基本结构图源[1]图源[3] 其中hmap的源码[2] // A header for a Go map. type hmap struct {// Note: the format of the hmap is also encoded…
2022/1/13 17:07:03 人评论 次浏览 -
解析struct的内存布局
解析struct的内存布局 在平时开发过程中,我们常用map[string]struct{}来实现一个Set,用struct{}的原因是struct{}不占用内存空间,为什么空struct会不占用内存空间?对于自定义的struct的内存空间的占用是什么样的? struct的大小 struct和java中的对象类似,在内存中都…
2022/1/9 7:03:31 人评论 次浏览 -
解析struct的内存布局
解析struct的内存布局 在平时开发过程中,我们常用map[string]struct{}来实现一个Set,用struct{}的原因是struct{}不占用内存空间,为什么空struct会不占用内存空间?对于自定义的struct的内存空间的占用是什么样的? struct的大小 struct和java中的对象类似,在内存中都…
2022/1/9 7:03:31 人评论 次浏览 -
Go语言结构体中的内存对齐
1 如何计算结构体占用的空间 在 Go 语言中,我们可以使用 unsafe.Sizeof 计算出一个数据类型实例需要占用的字节数。 package mainimport ("fmt""unsafe" )type Args struct {num1 intnum2 int }type Flag struct {num1 int16num2 int32 }func main()…
2022/1/8 7:04:30 人评论 次浏览 -
Go语言结构体中的内存对齐
1 如何计算结构体占用的空间 在 Go 语言中,我们可以使用 unsafe.Sizeof 计算出一个数据类型实例需要占用的字节数。 package mainimport ("fmt""unsafe" )type Args struct {num1 intnum2 int }type Flag struct {num1 int16num2 int32 }func main()…
2022/1/8 7:04:30 人评论 次浏览 -
Java:Unsafe类的使用
一、获取Unsafe类实例1 Field field = Unsafe.class.getDeclaredField("theUnsafe"); 2 field.setAccessible(true); 3 return (Unsafe) field.get(null); theUnsafe 是Unsafe内部的一个字段,Unsafe在静态代码块中实例化一个Unsafe类,并通过反…
2022/1/5 22:04:47 人评论 次浏览