logmein逆向

IDA打开整体先看看。
学个函数:
strcpy:即字符串复制
v8=这么一大串字符串
我们让程序调到sub_4007F0(),就OK。
我们使用python来写,
主要迷惑的还是下面都是情深深雨蒙蒙的存在:
(char)(*((_BYTE *)&v7 + i % v6) 和chr(ord(a[i%v6]) 
v6=7是因为右击decimal看小数


(char)(*((_BYTE *)&v7 + i % v6) ^ v8[i])
chr(ord(a[i%v6]) ^ ord(b[i]))
网上也搜了:
&除了是一个位运算符,也是取地址符。
_BYTE *强制转换为BYTE类型的指针值。
chr
ord却是返回值是对应的十进制整数。
算了这个一时半刻还理不清楚。后待补充吧.....
运行后

解释:伪指令db、dw、dd、dq都可以定义字符串,但最多的是用db来定义字符串,第一个原因是dw、dd定义的字符串到了内存中排序是相反的

替换:

这个样子就出来了~

logmein逆向的更多相关文章
- 逆向-攻防世界-logmein
		
iDA载入程序,shift+F12查看关键字符串,找到双击来到所在地址,进入函数 然后进入主函数, 经过分析,可以得出:输入的字符要等于 经过处理的v7和v8的异或.v8很明显,但是v7是怎么回事呢 ...
 - 攻防世界(XCTF)逆向部分write up(一)
		
晚上做几个简单的ctf逆向睡的更好 logmein elf文件 ida看看main函数伪代码 void __fastcall __noreturn main(__int64 a1, char **a2 ...
 - 【腾讯Bugly干货分享】移动App入侵与逆向破解技术-iOS篇
		
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/577e0acc896e9ebb6865f321 如果您有耐心看完这篇文章,您将懂 ...
 - [.NET逆向] 破解NET的四大神器
		
原本这篇文章可以更早一星期写出来与大家分享,由于某方面的原因耽搁到现在,心里竟有那么一点好像对不住大家的感觉.这当然与神器有关,因为我发现利用这四大神器我似乎觉得几乎所有的NET程序破解都不在话下了 ...
 - iOS-Block总结 && 全面解析逆向传值
		
1.block的特点: block是C语言: block是一种数据类型.可以当做参数,也可以用做返回值:--总之,对比int的用法用即可(当然,定义的时候,最好跟函数对比): ...
 - Reverse Core 第一部分 代码逆向技术基础
		
@date: 2016/10/14 <逆向工程核心原理>笔记 记录书中较重要的知识,方便回顾 ps. 因有一些逆向基础,所以我本来就比较熟悉的知识并未详细记录 第一章 关于逆向工程 目标, ...
 - 【DWR系列02】-DWR逆向Ajax即服务器推送
		
.literal { background-color: #f2f2f2; border: 1px solid #cccccc; padding: 1px 3px 0; white-space: no ...
 - php正则逆向引用与子模式分析
		
先看一个例子: <?php $string = 'April 15, 2003'; $pattern = '/(\w+) (\d+), (\d+)/i'; $replacement = '${1 ...
 - 【逆向篇】分析一段简单的ShellCode——从TEB到函数地址获取
		
其实分在逆向篇不太合适,因为并没有逆向什么程序. 在http://www.exploit-db.com/exploits/28996/上看到这么一段最简单的ShellCode,其中的技术也是比较常见的 ...
 
随机推荐
- makedown语法小记
			
1.标题,支持六级 # 这是一级标题 ## 这是二级标题 ### 这是三级标题 2.斜体 *这是斜体* 3.加粗 **这是加粗** 4.斜体加粗 ***这是斜体加粗*** 5.删除线 ~~这是删除线~ ...
 - YAOI Round #7 题解
			
前言 比赛链接: Div.1 : http://47.110.12.131:9016/contest/16 Div.2 : http://47.110.12.131:9016/contest/15 D ...
 - Linux下面向TCP连接的C++ Socket编程实例
			
Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口.即Socket提供了操作上述特殊文件的接口,使用这些接口可以实现网络编程. Socket通信流程图 TCP(Transmis ...
 - Quick BI的复杂系统为例:那些年,我们一起做过的性能优化
			
背景 一直以来,性能都是技术层面不可避开的话题,尤其在中大型复杂项目中.犹如汽车整车性能,追求极速的同时,还要保障舒适性和实用性,而在汽车制造的每个环节.零件整合情况.发动机调校等等,都会最终影响用户 ...
 - 【学习笔记】pytorch中squeeze()和unsqueeze()函数介绍
			
squeeze用来减少维度, unsqueeze用来增加维度 具体可见下方博客. pytorch中squeeze和unsqueeze
 - 使用mvn命令将pom和jar上传至nexus私服
			
要将自定义的jar或者pom上传至nexus私服,需要配置maven的settings文件! 上传至nexus私服配置 1. settings配置 <!-- maven设置私服对应的信息:id. ...
 - javascript学习(二)--函数
			
一.在JavaScript中,定义函数的方式如下: 1.第一种方式: function abs(x) { if (x >= 0) { return x; } else { return -x; ...
 - Springboot中mybatis执行逻辑源码分析
			
Springboot中mybatis执行逻辑源码分析 在上一篇springboot整合mybatis源码分析已经讲了我们的Mapper接口,userMapper是通过MapperProxy实现的一个动 ...
 - Web实时更新客户端数据
			
1 轮询方式实现客户端数据及时更新 在基于Web的即时通信.股票行情这样的系统中,需要客户端能够及时更新内容.由于B/S架构的特性(Http连接是无状态连接, 即服务器处理完客户的请求, ...
 - raven靶机
			
仅供个人娱乐 靶机信息 Raven 下载地址:https://www.vulnhub.com/entry/raven-1,256/ 一.主机探测 端口信息 目录扫描 80端口 根据页面开始搜寻有用的信 ...