非root Android 设备用gdbserver进行native 调试的方法
没有root的设备,要使用gdbserver 调试app 会遇到权限问题。(emulator 没有问题) 1231|shell@mako:/data/local/tmp $ ./gdbserver :1234 --attach 16907Cannot attach to lwp 16907: Operation not permitted (1)Exiting Android 系统提供了一个run-as 命令来暂时切换用户,但是这个命令有限制,必须是app 打开了debuggable才行,否则会报 Package xx is not debuggable 的错误。从 http://android.googlesource.com/platform/system/core.git/+/master/run-as/run-as.c 的注释来看,主要的作用有两个: 可以查看自己开发的应用的数据 可以使用gdb_server 进行native 的debug 我们的需求是第2个,我们希望可以使用gdb_server 来调试 app 123456shell@mako:/ $ run-a...
通过延迟执行的方法来逃逸杀软
pony 2.01234567891011121314151617181920212223242526272829303132333435363738; KAV heuristic fuckerKAVHeurKiller proc uses esi LOCAL counter: DWORD AntiDisasmTrick push eax mov ecx, ecx pop eax mov ecx, ecx push eax sub esi, esi pop eax mov ecx, ecx push 19131011 mov ecx, ecx pop counter mov edx, eax .WHILE counter mov edx, eax mov ecx, ecx add eax, esi mov edx, eax mov ecx, ecx push eax ...
DZSM apk 样本分析
概况 MD5: 14792786094250715197540fd3b58439 SHA256: 456caeaaa8346c7a9e2198af5a0ca49d87e616a2603884580df22728a49893d7 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152Certificate: Data: Version: 3 (0x2) Serial Number: 1208868505 (0x480dde99) Signature Algorithm: sha256WithRSAEncryption Issuer: C=CN, ST=sc, L=sc, O=maizi, OU=maizi, CN=pktool Validity Not Before: Sep 9 09:11:13 2015 GMT Not After...
Dyre 简单分析
0. 概述123sha256 : 523b9e8057ef0905e2c7d51b742d4be9374cf2eee5a810f05d987604847c549dmd5 : c2d73485095efdbd7ab625e469affb11filename : Invoice_00739287.scr 脱壳后的程序中可以看到 C:\CPP_PROJECTS_GIT\DYRE\x64\Release\dyrecontroller.pdb 因此大多数杀软将样本命名为dyre。Dyre的主要目标为在线银行。样本看上去是一个PDF文件,其实则是使用scr后缀的可执行文件,引诱受害者点击文件。 Dyre的一些其他样本 MD5: 999bc5e16312db6abff5f6c9e54c546f b44634d90a9ff2ed8a9d0304c11bf612 dd207384b31d118745ebc83203a4b04a 1. 感染与传播从网上的公开资料来看,样本主要传播途径为钓鱼邮件。 2. 工作流程 复制自身 (C:\Documents and Settings\u...
Android boot.img 格式分析
首先需要搞到boot.img,网络上流传的方法是通过/proc/mtd 在获取需要的信息 1234567891011121314> ./adb shell> su> cat /proc/mtddev: size erasesize namemtd0: 00700000 00020000 "boot"mtd1: 07c20000 00020000 "cache"mtd2: 00700000 00020000 "recovery"mtd3: 00140000 00020000 "splash"mtd4: 00700000 00020000 "FOTA_STO"mtd5: 09e80000 00020000 "system"mtd6: 0a4e0000 00020000 "userdata"mtd7: 00080000 00020000 "misc"mtd8: 00180000 ...
在Ubuntu 14.04 上安装 oclHashcat 的方法 (cuda)
首先需要下载正确的驱动和软件,下载的软件版本一定要正确。下面的两个链接地址是我实验成功的版本。 N卡驱动 :http://us.download.nvidia.com/XFree86/Linux-x86_64/346.47/NVIDIA-Linux-x86_64-346.47.runoclHashcat: https://hashcat.net/files/cudaHashcat-1.35.7z 关键是需要ForceWare 346.x或者更新的版本,ForceWare驱动是nVIDIA 系列显卡最新官方版本名称, 估计和AMD的催化剂类似。如果安装驱动的版本不对运行oclhashcat的时候会报 ERROR: cuModuleLoad() 209 错误,排查了较长时间发现是驱动版本不对,340.x的驱动无法正常工作,一定需要 346.x 的驱动。 基本要求http://us.download.nvidia.com/XFree86/Linux-x86_64/346.47/README/index.html 12345678binutils 2.9...
root Android emulator
一个的简单的脚本就可以实现自动化root,以下代码在 Android 4.4.2 的 emulator上实验成功。 123456sudo ./adb start-server./adb shell mount -o rw,remount -t yaffs2 /dev/block/mtdblock0 /system./adb push su /system/xbin/su./adb install Superuser.apk./adb shell chmod 06755 /system/xbin/su./adb shell /system/xbin/su -d 其中涉及的二进制文件都可以从 [2] 下载,最关键的步骤是执行su -d,不执行的话SuperSu会报找不到su的二进制文件。 关于android 的emulator有个特性,/system 下的所有更改在下次重启时会丢失。解决这个问题的方法有很多种,最简单的方法是从tmp目录下拷贝emulator-xxx 文件到avd目录。avd目录默认在 ~/.android/avd /tmp...
Fedora 安装pptp vpn
使用NetWorkManger图形界面,可以简单地配置pptp vpn,但是有几个地方不是特别满意 操作繁琐,需要多次点击鼠标 拨号后全局生效,要设置路由 可以配置的参数不是特别多 不是通用的方法,在终端中使用不方便 还是比较习惯命令行操作 基于上面几个原因折腾了一下pppd,用了一段时间非常不错,很稳定,在这里记录配置的方法。使用pppd的方法应该可以在其他Linux的发行版上正常使用,配置文件的路径或许有稍许差别。 pppd是Point-to-Point Protocol Daemon的缩写,pppd 的源代码托管在GitHub上 https://github.com/paulusmack/ppp 可以访问 pppd 的官方网站获取更多信息 https://ppp.samba.org/pppd.html 安装所需要的软件首先需要看看哪个包提供了pppd,执行下面的命令 1# yum whatprovides pppd 123456789ppp-2.4.5-33.fc20.x86_64 : The Point-to-Point Protocol daemon源 ...
vim 使用的几个小技巧
0. 将tab 替换为空格1:ret 1. 全文格式化normal模式下,gg=G 2. 跳转到上次编辑处normal模式下,'. 3. 替换行尾多余的空格1:%s= *$== 4. Source your vimrc.1:so $MYVIMRC 5. 在文件中跳转normal 模式下,ctrl-o 6. 内置文件浏览器1:Exp 7. 一眼看出tab和空格的区别在.vimrc 中添加下面行, 1set list listchars=tab:>-,trail:.,extends:> 8. 解决 vim 编译时权限不够问题1:w !sudo tee %
vim中的python
1. 判断vim支持python要判断你的vim是否支持python,可以执行下面命令: 1$ vim --version | grep python 如果显示的结果中有 +python 的话,你的vim已经支持python,如果没有的话,你需要重新编译vim,在windows中可以使用下面的命令行, 1nmake -f Make_mvc.mak FEATURES=huge PYTHON=D:\Python27 PYTHON_VER=27 GUI=yes IME=yes 2. 为什么需要编译支持python的vim主要的理由有两个, 可以使用python写的vim插件。 vim 7.4 以后对python的支持进行了增强。 有很多不错的vim 插件,这里给大家推荐一个python-mode, 非常不错。https://github.com/klen/python-mode vim 7.4 以后对python的支持进行了增强,这个是广大vim注册用户(捐钱的用户)呼声最高的需求,原话为, add integration with Python instead of in...