前文介绍了导入表hook,现在来说下导出表的hook。导出表的hook的流程如下。1、获取动态库基值 2、计算program header table实际地址 通过ELF文件头获取到程序表头的偏移地址及表头的个数 3、遍历program header table,ptype等于2即为dynameic ...
分类:
移动开发 时间:
2018-07-15 13:48:17
阅读次数:
342
无废话,还是先上git地址:https://gitee.com/jimmyTown_admin_admin/DapperInCoreDemo.git 结构如下: 1. 在framework时代,Dapper就因其小、轻但易用,高效而被很多程序员大量用与实际开发中。相对EF的宠大,我也更喜欢使用Dap ...
分类:
移动开发 时间:
2018-07-15 14:52:39
阅读次数:
5318
右值引用 右值定义: 通俗来讲,赋值号左边的就是左值,赋值号右边的就是右值。可以取地址是左值,不可以取地址的是右值。C++11,之前没有明确提出右值的概念,所以 C++11 以前这些说活都是正确的。 C++11 中的左值,仍然等同于 C++98 左值。C++11 中的右值,除了 C++98 中的右值 ...
分类:
移动开发 时间:
2018-07-15 14:53:40
阅读次数:
214
沃兹尼亚是个天才,无论是对苹果还是对整个互联网社会,他都起了不可磨灭的贡献,但是直到今天,他还是不为众人所知,实在是有点可惜。 我是读『乔布斯传』的时候才知道苹果的这位联合创始人的。现在读『沃兹传』,发现这个程序员不仅伟大,设计了 APPLE I, APPLE II 这样伟大的个人电脑,还是个非常有 ...
分类:
移动开发 时间:
2018-07-15 14:57:18
阅读次数:
229
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1017 A Mathematical Curiosity Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/ ...
分类:
移动开发 时间:
2018-07-15 14:57:26
阅读次数:
214
一.介绍 Android三种事件类型:ACTION_DOWN,ACTOIN_MOVE,ACTION_UP。 事件传递的三个阶段: 分发(Dispatch) 方法:public boolean dispatchTouchEvent(MotionEvent ev) 拦截(Intercept) 方法:pu ...
分类:
移动开发 时间:
2018-07-15 15:00:45
阅读次数:
233
前言 在本系列上一篇文章Android包管理机制(一)PackageInstaller的初始化中我们学习了PackageInstaller是如何初始化的,这一篇文章我们接着学习PackageInstaller是如何安装APK的。本系列文章的源码基于Android8.0。 1.PackageInsta ...
分类:
移动开发 时间:
2018-07-15 15:01:34
阅读次数:
852
用作命令的二进制文件位于/system/bin/与/system/xbin/下 应用数据位于/data/data/, 原始安装文件位于/data/app/(Play商店中非免费应用位于/data/app private/) 权限相关的文件位于/system/etc/permissions/, 其中权 ...
分类:
移动开发 时间:
2018-07-15 16:07:38
阅读次数:
167
比较简单的有下面这两种 调试端口检测, 23946(0x5D8A) Demo: Android设备中调试器进程名检测, android_server, gdbserver, gdb 等 Demo: ...
分类:
移动开发 时间:
2018-07-15 16:17:13
阅读次数:
184
大体来看与Windows逆向类似, 不过涉及到的东西更多也更杂, 总体的思路是类似的. Smali语言是Davlik的寄存器语言, 语法类似于汇编, 直接修改Smali文件是可以的, 不需要像X86_64汇编那样还需要注意指令长度, Android Killer中修改后需要手动保存, 否则回编译后将 ...
分类:
移动开发 时间:
2018-07-15 16:20:24
阅读次数:
241
代码如下: 之后即可通过 Process 对象获取输入输出 这样获得的shell具有的是与应用相同的 UID, 所以无法做到一些越权访问的命令, 比如 `ls al /data/misc` ...
分类:
移动开发 时间:
2018-07-15 16:22:10
阅读次数:
203
1、在src/main/resources/目录下新建mybatis文件夹,将xxx.xml文件放入该文件夹内 2、在application.yml文件中配置: mybatis: configuration: mapUnderscoreToCamelCase: true mapperLocation ...
分类:
移动开发 时间:
2018-07-15 19:26:04
阅读次数:
4960
如果默认的SpringApplication不符合你的口味,你可以创建一个本地的实例并自定义它。例如,关闭banner你可以这样写: public static void main(String[] args){ SpringApplication app = new SpringApplicati ...
分类:
移动开发 时间:
2018-07-15 19:28:44
阅读次数:
199
1> iOS 真机测试包路径: 点击->前往->前往文件夹 : /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 2> 超级头文件Pch 配置:Build Settings ->p ...
分类:
移动开发 时间:
2018-07-15 19:30:39
阅读次数:
229
项目里的: build.gradle 依赖 的gradle 版本 在每个项目里 gradle/wrapper/properties/gradle-wrapper.properties 配置文件里 用户天朝的墙,到这个网站下载 http://services.gradle.org/distributi... ...
分类:
移动开发 时间:
2018-07-15 19:46:16
阅读次数:
260
很多Spring Boot开发者总是使用@Configuration , @EnableAutoConfiguration 和 @ComponentScan 注解他们的main类。 由于这些注解被如此频繁地一块使用(特别是你遵循以上最佳实践时),Spring Boot提供一个方便的@SpringBo ...
分类:
移动开发 时间:
2018-07-15 19:49:52
阅读次数:
216
1、目标是实现div跟随鼠标而移动,分三种情况进行实现 a)首先获取div,进行绑定鼠标移动事件,给div开启定位功能 第一种实现方式,假如body的大小跟页面大小一样,则可以用这个方法。 1)获取鼠标的坐标,进行给div坐标赋值,实现如下: 第二种方式,假如body的高度大于可见高度,则会出现滚动 ...
分类:
移动开发 时间:
2018-07-15 21:10:32
阅读次数:
185
SharedPreferences的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data/<包名>/shared_prefs目录下。 这里只讲有关SharedPreferences的基本增删改查操作,模拟一个登陆记住账号密码的功能。 ...
分类:
移动开发 时间:
2018-07-15 21:12:17
阅读次数:
234
概述 自安卓5.0后,谷歌加入了对安卓手机作为低功耗蓝牙外围设备,即服务端的支持。使得手机可以通过低功耗蓝牙进行相互通信。 开发步骤 实现这一功能其实只需要分为设置广播和设置服务器两个部分完成即可 设置服务器 这一步骤主要操作的是BluetoothGattServer。 1. 定义一个Bluetoo ...
分类:
移动开发 时间:
2018-07-15 21:14:32
阅读次数:
197
NHibernate 基于 ClassMapping 的 ManyToMany(多对多配置) 实体类 ClassMapping 映射类 ...
分类:
移动开发 时间:
2018-07-15 21:20:54
阅读次数:
244