欢迎访问Sunbet,Sunbet是欧博Allbet的官方网站!

首页Sunbet_安全防护正文

反-反汇编patch进修(一)

admin2020-06-0712

从零开始java代码审计系列(三)

这篇文章将会学习java中的OGNL表达式注入,并分析实例s2-045,并且所有环境都会打包放到附件中,提供给有需要的,本文如果有理解错误的地方,麻烦师傅们斧正。 什么是OGNL 从语言角度来说:它是一个功能强大的表达式语言,用来获取和设置 java

近来在进修反-反汇编技能,以此纪录,patch的实例顺序在附件中

仅仅是新手的进修纪录,大佬轻喷

编写一个测试顺序

这个顺序没有什么意义,在IDA中把puts函数patch成nop用于增加我们本身的指令

一定有更好的要领,然则这里只是为了演习

visual studio 2019 preview x64 release编译

#include<stdio.h>#include<stdlib.h>#include<string.h>int main(int argc, char** argv) {char a;system("pause");a = getchar();puts("nop me");puts("nop me");puts("nop me");puts("nop me");puts("nop me");puts("nop me");puts("nop me");putchar(a);system("pause");return 0;}

 

patch历程

增加nop

IDA翻开,依据字符串找到我们本身的逻辑

反-反汇编patch进修(一)  第1张

把一部分puts("nop me") patch成nop,相似如许,在这些nop中最先演出

反-反汇编patch进修(一)  第2张

增加迥殊的汇编指令

这里如今一堆nop中增加以下的两条指令,来剖析一下

反-反汇编patch进修(一)  第3张

call $+5也就是跳转到pop rax,看起来和直接跳到下一条指令没什么区分

但实际上,call会把下一条要实行的指令地点压栈,这里也就是把0x140001035压栈

pop rax,这时候rax就是0x140001035

反-反汇编patch进修(一)  第4张

调解rax的地位,加上8今后jmp rax,预备跳到底本的指令中

这里rax==0x140001035+8==0x14000103C

-------------------------------------

申博网络安全巴士站

申博-网络安全巴士站是一个专注于网络安全、系统安全、互联网安全、信息安全,全新视界的互联网安全新媒体。

-------------------------------------

patch到这里,生存一下,即附件中的patched1

在IDA中从新翻开,调试发明,jmp rax行将跳转到jmp指令的以后的某条指令上

反-反汇编patch进修(一)  第5张

增加渣滓指令

为了让反汇编引擎"失足",我们能够在中心行将跳过的nop中,增加特别的渣滓指令

好比方才动态调试发明会跳转到...03D的地位上,那我们就让03D的指令是jmp到接下来的原顺序流程

这里也就是跳转到puts("nop me")

反-反汇编patch进修(一)  第6张

生存一下,作为patched2

能够看到照样能够一般运转的

虽然IDA的反汇编引擎辨认的不错,然则F5的效果就有点差了

反-反汇编patch进修(一)  第7张

反-反汇编patch进修(一)  第8张

我们改成0xEB,生存为patched3,从新翻开,能够看到IDA的反汇编已把许多指令辨认为数据了

反-反汇编patch进修(一)  第9张

F5后也看不到底本的几个puts("nop me")

让IDA准确剖析

本顺序中,能够经由过程动态调试发明jmp rax的目的地,然后从call $+5最先,把这些指令都nop掉,直接jmp 到该去的地点,资助IDA准确剖析

资助IDA相识哪些是数据、哪些是代码指令,能够用U D C这三个快捷键,应该是undefine,data,code的意义


Web运用代码自动化审计浅谈

0. 序 代码审计是找到应用缺陷的过程。自动化审计通常有白盒、黑盒、灰盒等多种方式。白盒指通过对源代码的分析找到应用缺陷;黑盒通常不涉及到源代码,多使用模糊测试等方式来找到漏洞;而灰盒则是黑白结合的方式,利用黑盒特性来减少白

网友评论

1条评论
  • 2020-06-07 00:00:11

    Allbetwww.cqpazxm.com欢迎进入欧博开户平台(Allbet Gaming),欧博开户平台开放欧博(Allbet)开户、欧博(Allbet)代理开户、欧博(Allbet)电脑客户端、欧博(Allbet)APP下载等业务每天晚上必看