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

做外贸网站注册什么邮箱能够做渗透的网站

做外贸网站注册什么邮箱,能够做渗透的网站,深圳北站网站建设,wordpress 文字环绕图片先自我介绍一下#xff0c;小编浙江大学毕业#xff0c;去过华为、字节跳动等大厂#xff0c;目前阿里P7 深知大多数程序员#xff0c;想要提升技能#xff0c;往往是自己摸索成长#xff0c;但自己不成体系的自学效果低效又漫长#xff0c;而且极易碰到天花板技术停滞…先自我介绍一下小编浙江大学毕业去过华为、字节跳动等大厂目前阿里P7 深知大多数程序员想要提升技能往往是自己摸索成长但自己不成体系的自学效果低效又漫长而且极易碰到天花板技术停滞不前 因此收集整理了一份《2024年最新网络安全全套学习资料》初衷也很简单就是希望能够帮助到想自学提升又不知道该从何学起的朋友。 既有适合小白学习的零基础资料也有适合3年以上经验的小伙伴深入学习提升的进阶课程涵盖了95%以上网络安全知识点真正体系化 由于文件比较多这里只是将部分目录截图出来全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频并且后续会持续更新 如果你需要这些资料可以添加V获取vip204888 备注网络安全 正文 转换后 public class HelloVMP2 { static {System.loadLibrary(hello_vmp2); }public native int compute(int a, int b);} extern “C” JNIEXPORT jint JNICALL Java_com_vmp_mylibrary_HelloVMP2_compute(JNIEnv* env, jobject obj, jint a, jint b) { jint c a a; jint d a * b; jint e a - b; jint f a / b; jint result c d e f; return result; } 这种方式下仅将 java 转 cpp 编译成动态链接库但是so代码依然可以被破解在此基础上其实还是可以继续提高代码保护的安全性那就是 DEX-VMP 技术。### **3.5 DEX-VMP****DEX-VMP** 原理理解起来比较容易其针对的保护单位也是函数。将方法的 dalvik 指令转换成等价的自定义指令函数原指令替换成自定义 VM 的调用入口指令再将函数参数通过 VMP 入口传入到自定义 VM 中执行自定义 VM 解释执行自定义指令。![图片](https://img-blog.csdnimg.cn/img_convert/b17155fa5238fa3904a9d4de72d8a265.png)如图当 Dalvik VM 执行到 DEX-VMP 保护的函数时执行的是 VMP native 入口函数开始进入 VMP 的执行流程VMP 首先会初始化 dex 文件信息接着获取该保护方法的一些信息比如寄存器数量待执行指令的内存位置等然后初始化寄存器存储结构最后进入到解释器中解释执行每一条指令。在解释执行的过程如果执行到外部函数就会使用 JNI CallMethod 的形式调用让其切换回 Dalvik VM让 Dalvik 去执行真正的函数。加固过程原函数的代码逻辑替换为 native 方法同时对 **Custom VM** 进行初始化原函数 native 方法负责将参数传入到 **Custom VM** 中**Custom VM** 解释执行原代码的等价指令。实现 DEX-VMP 总体来说需要两步1、对原 dex 处理找到要保护的方法将原指令翻译成等价指令加密存储并将原指令替换为 VMP 入口指令2、实现 VM解释执行存储的等价指令### **3.6 加固方案对比**可以看到加固技术是不断攻防升级的过程下面我们将以上加固技术分为五代进行对比![图片](https://img-blog.csdnimg.cn/img_convert/ecaada7eddcca7da1327f1369209b380.png)由以上对比我们可以看出在加固技术演进过程中VMP方案是发展到目前加固安全度最高的方式本着安全性角度出发我们选择VMP方案重点介绍与分析以下是对于项目中VMP加固的分析过程。## **04 DEX-VMP加固落地实现**以下是我们要保护的一段示例代码 package com.vmp.mylibrary; public class HelleVMP3 { public int compute(int a, int b) { int c a a; int d a * b; int e a - b; int f a / b; int result c d e f; return result; } } ### **4.1 dex 文件预处理**dex 预处理主要做两方面工作:1、保护方法的原指令拷贝出来并存储2、保护方法的原指令替换成 VMP 入口方法将要保护的 java 代码编译成 dex 文件放入 010editor 中可以查看 compute 方法对应的指令数据![图片](https://img-blog.csdnimg.cn/img_convert/7e5c8512f948832edb620f321677ed6e.png)可以看到蓝色区域包含的方法所需要的寄存器数内部参数外部参数及指令长度。这些都是 VM 需要的关键信息需要存储起来。然后将指令替换为 DEX-VMP 的 native 入口指令。有一些工具可以帮我们实现以上操作比如 dexlib2使用该工具可以对指定方法构造 dalvik 指令或获取方法的指令数据。该工具的具体使用方法大家可以自定搜索。### **4.2 寄存器结构设计**通过dexdump 命令查看原方法二进制结构内容如下 Virtual methods - #0 : (in Lcom/vmp/mylibrary/HelloVMP3;) name : ‘compute’ registers : 6 ins : 3 outs : 0 insns size : 11 16-bit code units 28e588: |[28e588] com.vmp.mylibrary.HelloVMP3.compute:(II)I 28e598: 9000 0404 |0000: add-int v0, v4, v4 28e59c: 9201 0405 |0002: mul-int v1, v4, v5 28e5a0: 9102 0405 |0004: sub-int v2, v4, v5 28e5a4: b354 |0006: div-int/2addr v4, v5 28e5a6: b010 |0007: add-int/2addr v0, v1 28e5a8: b020 |0008: add-int/2addr v0, v2 28e5aa: b040 |0009: add-int/2addr v0, v4 28e5ac: 0f00 |000a: return v0 从示例 compute 方法的一些 hex 数据中可以得到一些关键信息compute 方法在执行过程中需要使用到 6 个寄存器传入参数 3 个 没有使用 try 结构指令数据为 16 个字。Dalvik 寄存器最大长度为 32bit我们可以直接申请一段内存来表示寄存器 regptr_t regs[6]; regs[0] 0; regs[1] 0; regs[2] 0; regs[3] 0; regs[4] 0; regs[5] 0; regs[3] (regptr_t) thiz; regs[4] p1; regs[5] p2; u1 reg_flags[6]; reg_flags[0] 0; reg_flags[1] 0; reg_flags[2] 0; reg_flags[3] 0; reg_flags[4] 0; reg_flags[5] 0; reg_flags[3] 1; regs 表示寄存器4 个寄存器分别为 regs [0], regs [1], regs [2], regs [3]。regs\_bits\_obj 表示对应寄存器是否是 Object比如 regs [3] 是 Object则 regs\_bits\_obj [3] 1非 object 的情况均为 0每一个保护方法在进入 VM 后我们就像示例这样创建好这样的寄存器单元供 VM 在解释执行阶段使用执行完毕销毁即可。注意这个过程的专业的加固工具会在 dex 预处理过程中识别二进制结构内容进行执行无需每保护一个方法单独开发。**4.3** **虚拟机实现**我们就以示例 compute 方法中的 add-int, mul-int, sub-int, div-int 这几条指令来实现一个简易的解释器介绍一下这几条指令的作用add-int、mul-int、sub-int、div-int 对两个源寄存器执行已确定的二元运算并将结果存储到目标寄存器中。首先定义自定义虚拟机需要执行的vmCode结构 typedef struct { const u2 *insns; // 指令 const u4 insnsSize; // 指令大小 regptr_t *regs; // 寄存器 u1 *reg_flags; // 寄存器数据类型标记,主要标记是否为对象 const u1 *triesHandlers; // 异常表 } vmCode; 自定义Opcode enum Opcode { OP_ADD_INT 0x3a, OP_MUL_INT 0xe4, OP_SUB_INT 0x77, OP_DIV_INT_2ADDR 0x6c, OP_ADD_INT_2ADDR 0xcf, OP_RETURN 0xde, }; 目标方法转化的 native 方法 static jint Java_com_vmp_mylibrary_HelloVMP3_compute__II_I(JNIEnv *env, jobject thiz , jint p1, jint p2) { regptr_t regs[6]; regs[0] 0; regs[1] 0; regs[2] 0; regs[3] 0; regs[4] 0; regs[5] 0; regs[3] (regptr_t) thiz; regs[4] p1; regs[5] p2; u1 reg_flags[6]; reg_flags[0] 0; reg_flags[1] 0; reg_flags[2] 0; reg_flags[3] 0; reg_flags[4] 0; reg_flags[5] 0; reg_flags[3] 1;static const u2 insns[] {0x00b3, 0x0404, 0x0120, 0x0504, 0x02ee, 0x0504, 0x546c, 0x10a9, 0x20a9, 0x40a9, 0x00ad, }; const u1 *tries NULL; const vmCode code {.insnsinsns,.insnsSize11,.regsregs,.reg_flagsreg_flags,.triesHandlerstries };jvalue value vmInterpret(env,code,dvmResolver); return value.i;} 执行指令处理逻辑 #define OP_END #define INST_AA(_inst) ((_inst) 8) #define FETCH(_offset) (pc[(_offset)]) #define SET_REGISTER(_idx, _val) DELETE_LOCAL_REF(_idx); (fp[(_idx)] (u4) (_val)); SET_REGISTER_FLAGS(_idx, 0) #define HANDLE_OP_X_INT(_opcode, _opname, _op, _chkdiv) HANDLE_OPCODE(_opcode /vAA, vBB, vCC/) { u2 srcRegs; vdst INST_AA(inst); srcRegs FETCH(1); vsrc1 srcRegs 0xff; vsrc2 srcRegs 8; ILOGV(“|%s-int v%d,v%d”, (_opname), vdst, vsrc1); … } FINISH(2); #define HANDLE_OP_X_INT(_opcode, _opname, _op, _chkdiv) HANDLE_OPCODE(_opcode /vAA, vBB, vCC/) { u2 srcRegs; vdst INST_AA(inst); srcRegs FETCH(1); vsrc1 srcRegs 0xff; vsrc2 srcRegs 8; ILOGV(“|%s-int v%d,v%d”, (_opname), vdst, vsrc1); if (_chkdiv ! 0) { s4 firstVal, secondVal, result; firstVal GET_REGISTER(vsrc1); secondVal GET_REGISTER(vsrc2); if (secondVal 0) { dvmThrowArithmeticException(env,“divide by zero”); GOTO_exceptionThrown(); } if ((u4)firstVal 0x80000000 secondVal -1) { if (_chkdiv 1) result firstVal; /* division / else result 0; / remainder / } else { result firstVal _op secondVal; } SET_REGISTER(vdst, result); } else { / non-div/rem case */ SET_REGISTER(vdst, (s4) GET_REGISTER(vsrc1) _op (s4) GET_REGISTER(vsrc2)); } } FINISH(2); attribute((visibility(“default”))) jvalue vmInterpret(JNIEnv *env, const vmCode *code, const vmResolver *dvmResolver) { jvalue args_tmp[5]; // 方法调用时参数传递(参数数量小于等于5) jvalue retval; regptr_t *fp code-regs; // 寄存器 u1 *fp_flags code-reg_flags; // 寄存器类型标识 const u2 pc code-insns; … / File: c/OP_ADD_INT.cpp / HANDLE_OP_X_INT(OP_ADD_INT, “add”, , 0) OP_END / File: c/OP_SUB_INT.cpp / HANDLE_OP_X_INT(OP_SUB_INT, “sub”, -, 0) OP_END / File: c/OP_MUL_INT.cpp */ HANDLE_OP_X_INT(OP_MUL_INT, “mul”, *, 0) OP_END 还有兄弟不知道网络安全面试可以提前刷题吗费时一周整理的160网络安全面试题金九银十做网络安全面试里的显眼包 王岚嵚工程师面试题附答案只能帮兄弟们到这儿了如果你能答对70%找一个安全工作问题不大。 对于有1-3年工作经验想要跳槽的朋友来说也是很好的温习资料 【完整版领取方式在文末】 93道网络安全面试题 内容实在太多不一一截图了 黑客学习资源推荐 最后给大家分享一份全套的网络安全学习资料给那些想学习 网络安全的小伙伴们一点帮助 对于从来没有接触过网络安全的同学我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线大家跟着这个大的方向学习准没问题。 朋友们如果有需要的话可以联系领取~ 1️⃣零基础入门 ① 学习路线 对于从来没有接触过网络安全的同学我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线大家跟着这个大的方向学习准没问题。 ② 路线对应学习视频 同时每个成长路线对应的板块都有配套的视频提供 2️⃣视频配套工具国内外网安书籍、文档 ① 工具 ② 视频 ③ 书籍 资源较为敏感未展示全面需要的最下面获取 ② 简历模板 因篇幅有限资料较为敏感仅展示部分资料添加上方即可获取 网上学习资料一大堆但如果学到的知识不成体系遇到问题时只是浅尝辄止不再深入研究那么很难做到真正的技术提升。 需要这份系统化的资料的朋友可以添加V获取vip204888 备注网络安全 一个人可以走的很快但一群人才能走的更远不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人都欢迎加入我们的的圈子技术交流、学习资源、职场吐槽、大厂内推、面试辅导让我们一起学习成长 https://i-blog.csdnimg.cn/blog_migrate/f29cda892905b0d3d222aeaf1a326383.png) ② 简历模板 因篇幅有限资料较为敏感仅展示部分资料添加上方即可获取 网上学习资料一大堆但如果学到的知识不成体系遇到问题时只是浅尝辄止不再深入研究那么很难做到真正的技术提升。 需要这份系统化的资料的朋友可以添加V获取vip204888 备注网络安全 [外链图片转存中…(img-YgOH4SMH-1713114317650)] 一个人可以走的很快但一群人才能走的更远不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人都欢迎加入我们的的圈子技术交流、学习资源、职场吐槽、大厂内推、面试辅导让我们一起学习成长
http://www.w-s-a.com/news/258797/

相关文章:

  • 购物网站 怎么做织梦网站会员功能
  • 北京市网站开发公司郑州联通网站备案
  • 温岭专业营销型网站建设地址wordpress小程序怎么不用认证审核
  • 网站建设主体设计要求微信公众号缴费
  • 网站建设的税率WordPress多用户建站
  • 专业门户网站的规划与建设网络培训
  • 东莞汽车总站停止营业crm管理系统在线使用
  • 深圳网站建设公司哪个网络优化是做什么的
  • 大连地区做网站自己怎么做电影网站
  • 成都APP,微网站开发手机要访问国外网站如何做
  • 网站app建设用discuz做的手机网站
  • vs 2008网站做安装包公众号登录超时
  • 银川做网站推广wordpress dux会员中心
  • 双辽做网站wordpress怎么写html代码
  • 建站公司哪家好 知道万维科技西安都有哪些公司
  • 设计网站官网入口佛山 品牌设计
  • 专用网站建设wordpress mega
  • 网站建设与优化推广方案内容网站整站下载带数据库后台的方法
  • 做网站PAAS系统外链是什么意思
  • 网页设计专业设计课程googleseo排名公司
  • 网站百度百科那些免费网站可以做国外贸易
  • 做视频的网站有哪些南京计算机培训机构哪个最好
  • ppt做视频 模板下载网站商业街网站建设方案
  • 佛山网站定制开发星光影视园网站建设案例
  • wordpress子站点商务网页设计与制作微课版答案
  • 山东省住房城乡和建设厅网站软件开发主要几个步骤
  • 可以接项目做的网站网站源码php
  • 杭州广众建设工程有限公司网站网页游戏人气排行榜
  • 上海网站开发建设最简单的网站代码
  • 东莞做网站建设免费网站建设案例