跳至主要内容

博文

MBE lab01A Ansower Script

http://bit.ly/2Ro0Y7K the serial computational algorithm in the blow IDA photo,based on the Username where you input. and the very easy python script is here username="admin2" #input username here and makesure username length >5 #username.__len__( ) >5 username_len = username.__len__() char1 = username[3] value1= ord(char1) ^ 0x1337 value2 = value1 + 0x5EEDED counter =0 for i in range(100): if counter < username_len: char_tem = username[counter] if ord(char_tem) < 0x1F: return_value = 1 break tem_value3 = ord(char_tem)^ value2 tem_value4 = ((tem_value3 * 0x88233B2B)& 0xffffffff00000000)>>(2*2*8) tem_value5 = tem_value3 - tem_value4 tem_value5 = tem_value5 >> 1 tem_value6 = tem_value4 + tem_value5 tem_value6 = tem_value6 >> 0xa tem_value7 = tem_value6 * 0x539 tem_value8 = tem_value3 - tem_value7 value2=tem_value8+value...
最新博文

LLVM学习基础之编译原理学习(一):语言

https://ift.tt/2pWfSHe 程序设计语言 语言的转换 编译的转换过程 编译程序概述 自然语言的翻译 编译程序的工作 词法分析 语法分析 语法举例:等号赋值语句的语法规则 语法分析的方法 推导 语义分析和中间代码生成 中间代码 优化 目标代码生成 END &补充 表格管理 出错处理 程序设计语言 现在除了底层人员,一般的开发人员所说的程序语言都是高级语言了,但是对于安全人员,底层开发人员来说远不止这些,主要有下面 高级语言 就是现在所通用的类人类语言的编程语言,比如c,c++,python,ruby这种。书写代码通俗易懂 汇编语言 对于逆向人员这个真是再熟悉不过了,就不多说了。汇编语言是针对CPU架构来说的 机器语言 这个也很好理解,就是字节码,汇编语言其实是对字节码的封装再解释 语言的转换 翻译 把某种语言的源从程序,在 不改变语意 的条件下,转换成另外一种语言程序: 目标语言程序 编译 专门由计算机的高级语言转为低级语言,就是把整个程序都翻译过来 解释 接受某高级语言的一个语句输入,进行解释并控制计算机执行,马上得到这句的执行结果,然后再接受下一句 编译的转换过程 两阶段转换 编译 ---> 运行 这种转换的时候,通过编译器直接把源程序转换为机器语言,目标程序可直接执行 三阶段转换 编译 ---> 汇编 ---> 运行 当进行这种转换的时候,编译器编译的时候回首先产生汇编文件,然后通过汇编文件的编译器再生成目标文件 编译时: 源程序——>编译程序->汇编语言 汇编时: 汇编程序-> 目标代码 运行时: 初始数据->运行子程序目标代码->计算结果 编译程序概述 自然语言的翻译 先识别句子中的一个个单词 分析句子的语法结构 根据句子的含义进行初步翻译 写出最后的译文 其实编译器的原理跟自然语言的原理一模一样,什么事情只要找一件我们能够理解的事情最对比,就迎刃而解了 编译程序的工作 通过对自然语言的翻译,我们可以总结归纳出把高级语言转换为低级语言的整套历程,下面就对其每个步骤进行一个大概的介绍 词法分析 ...

python 中文OCR识别Tesseract

https://ift.tt/2ypbNzZ 介绍 Mac下的安装 添加训练集 实例代码 介绍 中文识别的实现方式很多,找了个几种 1. 百度ocr api,中文识别率最高,白纸黑字几乎无错,但是收费,价格不高,就是充钱坑人,账户余额得大于100 这里有一个介绍比较好的中文文档 2. 阿里ocr api,没用过,看了一下挺贵的 3. pytesser 已经过时了,新的就是tesseract 4. calamari 没用过,文档有点复杂 最后选择了Tesseract,先说下结果:Tesseract OCR 免费开源,但是识别率不如百度,需要训练集,就因为这个服务端部署的时候麻烦,中文识别率出奇的垃圾 Mac下的安装 环境 MacOSX python 3.6 brew 安装tesseract brew install tesseract 安装python对应的包:pytesseract pip install pytesseract 添加训练集 如果要识别中文,需要下载中文的训练集,下载网址: https://github.com/tesseract-ocr/tessdata  下面以识别中文为例:首先找到官方提供的中文训练集 下载红框圈起来的数据,然后放到指定的路径下,一般mac是这个地址下: 直接丢进去就行了 实例代码 简单的几行代码就可以进行识别 #!/usr/bin/env python3 # -*- coding: utf-8 -*- import pytesseract from PIL import Image # open image image = Image.open('test.png') code = pytesseract.image_to_string(image, lang='chi_sim') print(code) 事实发现识别率还是很差的,可能还需要自己去对数据进行训练,这里我用过一个对osd进行识别的帖子,当时自己做完了之后识别数字几乎到了100%的识别率 https://blog.csdn.net/zmnqiangwei/article/details/44198355 The post py...

双路黑苹果!12核24线程

https://ift.tt/2QEDMCD 终于装好黑苹果了,爽死了,包括2k的显示器,一共花了1984元。真香~ 装好机器之后,电源室讯景的80银牌550w电源,但是因为不是全模组的,走线有点麻烦 先装上windows10之后看看,因为显示器还没有到,就用了家里的一台32寸的1080p的显示器。主板是intel的,总比华南的好多了,华南的说不定还是h61改的,再说我买的是1356不是2011,被注水的可能性太小了。不买2011是因为cpu最近太贵了,1356相比1366 升级了sata3 和pcie3,已经性价比算高 数框框 装好黑苹果!用了4天! 本来闲置2个500g的硬盘,想组软raid,发现黑苹果不行啊,暂时还不知道怎么办,先放着吧。 然后使用TimeMachine,直接继承之前电脑的备份,多个Mac使用一份数据,爽! 内存有点小, 资金有限,等着下个月上96g或者128g内存 2k的显示器 在mac上数框框!!!12核心,24线程!但是mac上的睿频没有搞好,目前只能跑默频。在win10下满负载也能全核2.5G,有点可惜,但是这个主板真是太难搞了,先用着吧,我的另一台MacBookPro 的i7也是锁频在2.3GHz的 The post 双路黑苹果!12核24线程 appeared first on cole . https://ift.tt/2OeSzHr WHATEVER, Hackintosh, 黑苹果 October 07, 2018 at 11:02PM

使用WIFI进行ADB调试

https://ift.tt/2zqlZcx 需求 步骤 Android Studio 安装插件 手机安装apk 建立设备与 Android Studio 之间的连接 需求 有的时候逆向的时候老是需要插入usb线,有点烦。 有的时候需要给电视盒子装一些应用,老是插usb也很麻烦。 步骤 Android Studio 安装插件 Android Studio 安装WIFI ADB 插件 首先打开 Android Studio 的首选项,找到插件选项,输入ADB WIFI。 发现下方没有东西,点一下 Search in repositories 。 点击安装,装好了之后,也显示要重启Android stuido ,那么就重启一下吧。 手机安装apk 我在网上比较了几个ADB WIFI apk软件,发现还是酷安上的apk比较新, ADB WIFI 下载并在手机上安装。 建立设备与 Android Studio 之间的连接 安卓打开app 打开 Android Studio ---> Tools --> Android --> ADB WIFI --> ADB Use to WIFI 这样就可以开发了 如果不是开发呢?像我主要是逆向 那也很简单 adb connect ip:port The post 使用WIFI进行ADB调试 appeared first on cole . https://ift.tt/2OLIyh0 Android Reverse Engineering, reverse engineering, adb, android, android reverse, jeb September 24, 2018 at 10:51AM

CVE-2010-3333 Microsoft RTF栈溢出漏洞

https://ift.tt/2QHInV6 分析环境 MSF生成样本 分析样本 分析环境 测试系统 windows xp 2003 动态调试器 windbg 6.1 测试用例生成主机 kali 2018.1 分析软件 office 2003 sp3 MSF生成样本 查找漏洞利用程序 选择 目标机器和生成的rtf文件的名称 生成 分析样本 打开word,windbg附加到word上,然后通过word打开rtf文件 报错信息如上,在进行movs指令的时候发生了崩溃,并且崩溃单在mso.dll中 查看一下edi 的状态 发现edi是一个只读的内存区域 去看了以下汇编代码发现,rep movs就相当于memcpy,而memcpy的次数是由ecx决定的,之类没有控制ecx的大小,因此复制过多,到了0x130000这个只读内存区域30ed442c。上面是猜测ecx的来源,还不能确定,现在要去找调用函数。 通过kb命令查看,发现此时栈用已经变得乱套了,记住这个地址,我们重新打开word,下断点,然后查看栈中的调用情况,回溯调用的函数。 通过windbg的call stacks,发现调用函数是0x30f0b5c2. 也可以使用ub 命令来查看调用关系,+0x16b0是出现问题的函数,+0x2581是调用者堆栈的返回地址,可以网上回溯. 找到调用函数之后,重启windbg,在这个调用函数下断点. 单步按p或者f10跟踪,发现在0x30f0b5f8发生了崩溃. 可以发现,这里调用的是[eax+1ch],是函数0x30ed4406,按t或者f8跟进. 通过返汇编窗口就发现了造成崩溃的点. 通过跟踪分析发现ecx的复制. 这个漏洞是office在Open Xml文件格式转换器在处理RTF中的'pFragments'属性的时候发生了异常,存在栈溢出。 通过分析下图: 可以得知add ecx,0xffff其实就是清理前4位保留后四位,那么原本的ecx=0004c8ac中,有用的值也就是c8ac,转成正常序就是acc8 ,使用010editor 打开被问题文档 发现异常数据有两处,这里我们也不知道到底是哪了,而且都是pFrqments的段,这里重新改一...

CVE-2010-2883 漏洞分析

https://ift.tt/2NPO3ho 分析环境 环境搭建注意事项 静态分析漏洞成因 攻击样本生成 使用msf生成攻击样本 使用MSF监听肉鸡 目标靶机运行样本 样本exploit 提取 动态调试 shellcode 分析环境 漏洞软件 adobe reader 9.3.4 运行环境 windows xp sp3 静态分析工具 IDA 7.0 MacVersion 动态调试器 OD1.1 模拟攻击主机 kali 2018.1 pdf object提取器 PDF Stream Dumpe 环境搭建注意事项 adobe reader 下载地址 adobe reader 9.x adober reader 在虚拟机下的安装 因为虚拟机通常都是一个盘,这个默认安装需要有一个d盘(问题跟本用不着D盘),因此以一直报错 在终端输入 subst D: %temp% 临时创建一个d盘 静态分析漏洞成因 在CoolTy.dll 中,发现解析SING表的时候,没有验证uniqueName的长度,使用strcat进行拼接字符串的时候,没有对长度进行验证,导致栈溢出。 具体原因见下图: 攻击样本生成 使用msf生成攻击样本 search adobe_cooltype_sing 通过这个图可以看到,第一个是browser的,第二个是文件格式的,肯定选第二个 use exploit/windows/fileformat/adobe_cooltype_sing 使用 info 查看exploit信息 调用meterpreter载荷,反向连接到靶机机 set payload windows/meterpreter/reverse_tcp  使用 show options 显示需要设置的选项 对参数进行设置,并输入 exploit 命令生成样本 使用MSF监听肉鸡 使用handler监听模块  use exploit/multi/handle 回弹一个tcp连接 设置基本信息后,使用 exploit 开启监听 目标靶机运行样本 adobe reader 打开pdf文件 已经连接到kali,并获得权限 样本expl...