本人独立博客http://xcroot.com/
摘要: 今天偶得一文,发现了一套反调试机制,发现反调试就强行快速关机。而且其中有检测虚拟机的技巧,发现不错,就摘录一下。首先是强行关机,据说是使用的ZwShutdownSystem(2)实现的,看着这API够牛掰的--#include const unsigned int SE_SHUTDOWN_PRIVILEGE = 0x13;int main(){HMODULE hDll = ::LoadLibrary("ntdll.dll");typedef int (* type_RtlAdjustPrivilege)(int, bool, bool, int*);typedef int 阅读全文
posted @ 2013-11-03 11:58 CRoot 阅读(1849) 评论(0) 推荐(0) 编辑
摘要: 第一个方法是使用MFC里面的 CString GetHttpFileData(CString strUrl){ CInternetSession Session("Internet Explorer", 0); CHttpFile *pHttpFile = NULL; CString strData; CString strClip; pHttpFile = (CHttpFile*)Session.OpenURL(strUrl); while ( pHttpFile->ReadString(strClip) ) { strData... 阅读全文
posted @ 2013-10-27 17:02 CRoot 阅读(1062) 评论(0) 推荐(0) 编辑
摘要: 大家都应该知道APK文件其实就是一个MIME为ZIP的压缩包,我们修改ZIP后缀名方式可以看到内部的文件结构,例如修改后缀后用RAR打开鳄鱼小顽皮APK能看到的是(Google Play下载的完整版版本):Where's My Water.zip\asset\ lib\ |---armeabi\ |---|---armeabi-v7a\META-INF\ res\ |---drawable\ |---|---layout\ |---|---...AndroidManifest.xml classes.dex ... 阅读全文
posted @ 2013-10-27 13:12 CRoot 阅读(3904) 评论(0) 推荐(0) 编辑
摘要: dalvik字节码有两种类型,原始类型和引用类型。对象和数组是引用类型,其它都是原始类型。Vvoid,只能用于返回值类型ZbooleanBbyteSshortCcharIintJlong(64位)FfloatDdouble(64位)对象以Lpackage/name/ObjectName;的形式表示。前面的L表示这是一个对象类型,package/name/是该对象所在的包,ObjectName是对象的名字,“;”表示对象名称的结束。相当于java中的package.name.ObjectName。例如:Ljava/lang/String;相当于java.lang.String数组的表示形式[I 阅读全文
posted @ 2013-10-27 13:10 CRoot 阅读(682) 评论(0) 推荐(0) 编辑
摘要: 近期在w3cschool学习JavaScript和php--学完后,开始帮一哥们友情写网站。但是在使用ajax和Jquery的时候发现,我自己写的脚本不能运行。捣鼓了半天,没有发现任何语句错误。调试器检测,发现输出正常--但是脚本内容不能使用。最终群里回答了我这个问题。要拆开才行。当时使用的JQuery是这样写的:里面的alert()愣是不能运行。正确写法应该分开写,一旦引用外部js,这个 阅读全文
posted @ 2013-10-01 21:26 CRoot 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 上次做数学题,解方程解的难受,于是乎,在参考别人源码的过程中,写出了自己的计算器 1 2 3 4 在线一元二次方程式计算器 5 6 7 8 解二次方程式计算 9 10 11 12 13 14 x2+ x + = 0 15 一元二次方程的解法 16 17 18 19 ... 阅读全文
posted @ 2013-07-29 15:39 CRoot 阅读(726) 评论(0) 推荐(0) 编辑
摘要: 近日,一朋友开设了地方性质的论坛,让我帮他处理下Login.php(所谓的用户的登陆页面),但是登陆的时候,出现空字符或敏感字符,需要提交到服务端的Script处理,大大降低了效率,于是乎,就有了此代码之旅。首先在网页的部分写入js功能函数。我们暂且命名为recheck。function recheck { if(document.getElementById(user).value==""||document.getElementById(user).value==null) //user为该text框ID { alert("不能为空"); //警告弹 阅读全文
posted @ 2013-07-17 06:28 CRoot 阅读(636) 评论(0) 推荐(0) 编辑
摘要: 在cap631平台上移植android4.0,发现内核驱动没有任何问题,能够读写,当总不能挂载。后来发现是因为自动挂载需要vold的支持。vold程序负责检查内核的 sysfs 文件系统,发现有SD卡插入后,自动挂载。 在文件系统目录 /system/etc/ 下有一个vold.fstab 文件,该文件是系统与用户硬件平台的交互接口,用户根据自己的平台来配置这个文件,里面内容比较简单,只需要你指定sys下vold程序需要查询的文件夹路径,当SD卡插入设备后,这个路径下会产生相应的文件,vold能检查到。 在system/core/rootdir/etc/目录下有一个文件叫做vold.fstab 阅读全文
posted @ 2013-06-30 12:41 CRoot 阅读(941) 评论(0) 推荐(0) 编辑
摘要: 汇编中addr和offset的异同点!!!一、相同点1、addr和offset操作符都是获得操作数的偏移地址;2、addr和offset的处理都是先检查处理的是全局还是局部变量,若是全局变量则把其地址放到目标文件中。二、不同点1、addr伪操作符,只能用在invoke伪指令语句中;2、offset伪操作符可以用在任何可能涉及偏移地址的指令(当然包括invoke伪指令)并想获取操作数偏移地址的场合中;3、addr不能处理向前引用(即addr引用的操作数必须在使用addr前就得定义或声明),而offset则能(不管引用的操作数是其前或其后定义或声明);所谓向前引用是指:标号的定义是在invoke语 阅读全文
posted @ 2013-06-07 18:36 CRoot 阅读(1164) 评论(0) 推荐(0) 编辑
摘要: 33 : Serial device not configured解释 :33 号错误表示串口还没有配置。这一般发生在你执行 terminal serial 的时候34 : No spare sectors on the disk解释 :磁盘自由空间不足。可能发生在把 stage 1.5 嵌入到 MBR 之后的空间的时候。但这部分空间可能已经被分区表使用了下面该讲下修复Windows引导了,不少朋友删除了Linux,无法进入Win7等系统--但是我们可以用Win7光盘自带的bootsect.exe没有的朋友不用担心,可以去网上下载修复命令是bootsect /nt60 SYS /mbr //W 阅读全文
posted @ 2013-06-05 17:01 CRoot 阅读(1004) 评论(0) 推荐(0) 编辑
摘要: 刚刚午睡起来,神清气爽。腰不疼了,腿不算了,打字也有精神了——于是写篇博文--也算是写篇经验总结--刚刚一位群里的哥们装CentOS没成功。引导全坏掉了。恩,首先老样子--讲下Grub是干嘛的--GNU GRUB(简称“GRUB”)是一个来自GNU项目的多操作系统启动程序。GRUB是多启动规范的实现,它允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望运行的操作系统。GRUB可用于选择操作系统分区上的不同内核,也可用于向这些内核传递启动参数先普及下Grub是怎么识别硬盘的IDE硬盘用hd开始,SCSI硬盘用sd开头。软盘用fd开头。命名和linux不大一样。是从0算起。(hd 阅读全文
posted @ 2013-06-05 16:46 CRoot 阅读(22147) 评论(0) 推荐(0) 编辑
摘要: 近日在看雪坛子上闲逛,注意到了一篇帖子,提到了关于Android的密码破解。可能有些人没有看到,我就重复的说一下了。首先Android图形解锁有三个要求:1、至少四个点2、最多九个点3、无重复点恩,是这样,然后图形转换成数字,然后通过SHA1加密,最后存储。好了,明白了这些,再看下点的规律。从左上角起编号为00,至右下角止编号为08。最终密文文件会保存到/DATA/SYSTEM/GESTURE.KEY知道地址了,我们可以先加锁,然后在找到文件试试看。在这我就不做演示,相信你都会的。然后破解,至于破解思路,引用一下原作者的话:从密码明文的编码来看,各单数位数字为零,双数位数字不重复地排列,并将这 阅读全文
posted @ 2013-05-18 23:04 CRoot 阅读(520) 评论(0) 推荐(0) 编辑
摘要: 一,如何判断自己的手机是山寨机?如何判断山寨机的芯片型号和平台?如何进行系统后台调试? 这个问题似乎有些弱智,难道自己买来一个手机还不知道这手机是山寨机?呵呵,首先解释一下,本文讨论的手机主要是指基于台湾联发科公司MTK芯片平台的各种手机。其实国内很多大品牌的手机虽然有自己的LOGO和售后,因为它们和山寨机同样内部主板是采用MTK平台,所以我们可以把这种机器划归同一类。正因为如此,山寨机和那些品牌机同样功能却只有其一半甚至三分之一售价,山寨机能不火爆? 其实想要判断自己的手机是不是MTK平台很容易,在手机键盘上输入*#66*#六个字符,如果是MTK平台的手机,就会进入手机的“VER... 阅读全文
posted @ 2013-05-18 22:22 CRoot 阅读(2442) 评论(0) 推荐(0) 编辑
摘要: 组装机主板品牌笔记本品牌台式机主板品牌启动按键笔记本品牌启动按键台式机品牌启动按键华硕主板F8联想笔记本F12联想台式机F12技嘉主板F12宏基笔记本F12惠普台式机F12微星主板F11华硕笔记本ESC宏基台式机F12映泰主板F9惠普笔记本F9戴尔台式机ESC梅捷主板ESC或F12联想ThinkpadF12神舟台式机F12七彩虹主板ESC或F11戴尔笔记本F12华硕台式机F8华擎主板F11神舟笔记本F12方正台式机F12斯巴达卡主板ESC东芝笔记本F12清华同方台式机F12昂达主板F11三星笔记本F12海尔台式机F12双敏主板ESCIBM笔记本F12明基台式机F8翔升主板F10富士通笔记本F1 阅读全文
posted @ 2013-05-18 22:21 CRoot 阅读(580) 评论(0) 推荐(0) 编辑
摘要: LPSTR :一个32位指向字符串指针,相当于char *;LPCSTR:一个32位指向字符常量指针,相当于const char *;LPESTR:一个32为指向unicode字符串指针,相当于wchar_t *;LPCWSTR:一个32位指向unicode字符串常量指针,相当于const wchar_t *;LPSTR-----------------------> char *LPBYTE-------------------->unsigned char *LPBYTE 与 LPSTR 的转换就是 unsigned char* 与 char* 的转换。BYTE:一个8位无符号 阅读全文
posted @ 2013-05-18 22:19 CRoot 阅读(154) 评论(0) 推荐(0) 编辑