Linux 从源码编译安装 Vim

为什么自己编译 系统包管理器安装的 Vim 通常没有开启 Python、Lua 等脚本支持,导致一些插件(如 YouCompleteMe、Neocomplete)无法使用。 编译步骤 1. 安装依赖 # Debian/Ubuntu sudo apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev \ libgtk2.0-dev libatk1.0-dev libbonoboui2-dev libcairo2-dev \ libx11-dev libxpm-dev libxt-dev python-dev ruby-dev lua5.2 \ liblua5.2-dev libperl-dev git 2. 配置 ./configure --with-features=huge \ --enable-rubyinterp \ --enable-luainterp=dynamic \ --enable-pythoninterp \ --with-python-config-dir=/usr/lib/python2.7/config \ --enable-perlinterp \ --enable-cscope \ --enable-tclinterp \ --enable-multibyte \ --enable-clipboard \ --prefix=/usr 各选项说明: 选项 作用 --with-features=huge 开启几乎所有功能 --enable-rubyinterp Ruby 脚本支持 --enable-luainterp=dynamic Lua 动态加载 --enable-pythoninterp Python 2 支持(YCM 需要) --enable-perlinterp Perl 脚本支持 --enable-cscope Cscope 代码浏览 --enable-multibyte 多字节字符(中文支持) ⚠️ 不要同时开启 Python 2 和 Python 3,会导致 YouCompleteMe 无法正常工作。 ...

2013年11月2日 · 1 分钟 · Jid

Debian 开启 bash_completion 自动补全

问题 Debian 默认的 bash 自动补全功能不完整——按 Tab 只能补全文件名和命令名,无法补全 apt-get 的子命令、systemctl 的服务名等。 原因 bash_completion 包其实已经预装了,只是默认被注释掉了。 解决方法 方法一:全局生效(需要 root) 编辑 /etc/bash.bashrc,找到被注释掉的这段代码: # if ! shopt -oq posix; then # if [ -f /usr/share/bash-completion/bash_completion ]; then # . /usr/share/bash-completion/bash_completion # elif [ -f /etc/bash_completion ]; then # . /etc/bash_completion # fi # fi 去掉每行前面的 #,保存,重新登录即可。 方法二:仅当前用户 把上面取消注释后的代码段追加到 ~/.bashrc 末尾,然后执行: source ~/.bashrc 验证 输入 apt-get in 然后按 Tab,应该能自动补全为 apt-get install。

2013年10月15日 · 1 分钟 · Jid

Git 记住密码:避免每次 pull/push 都输入凭据

问题 每次 git pull 或 git push 都要输入用户名和密码,非常繁琐。 解决方法 Linux / macOS(凭据缓存) # 缓存密码 1 小时(3600 秒) git config --global credential.helper 'cache --timeout=3600' # 或缓存 8 小时 git config --global credential.helper 'cache --timeout=28800' 要求 Git 版本 ≥ 1.7.10。 Windows(凭据管理器) 安装 Git Credential Manager for Windows,安装后 Git 会自动使用 Windows 凭据管理器存储密码。 新版 Git for Windows 已内置此功能,无需额外安装。 永久存储(所有平台) # 明文存储在 ~/.git-credentials(不推荐在共享电脑上使用) git config --global credential.helper store 安全提示 cache 模式:密码仅存在内存中,超时后自动清除,相对安全 store 模式:密码以明文保存在磁盘上,方便但不安全 推荐使用 SSH key 或个人访问令牌(PAT)替代密码认证

2013年10月15日 · 1 分钟 · Jid

修改sublime_text主题(Solarized)

最近发现Solarized主题很耐看,尤其是Dark主题喜欢得不行。所以把常用的工具的主题都设置成了*Solarized(Dark)*样式。 但是,sublime_text自带的Solarized(Dark)有一点让人不满意: 选中文本的颜色太浅,几乎分辨不出来。 故而决定修改sublime_text的Solarized(Dark)主题。 2026-04-13 修正错误 修改方法: 在sublime_text程序所在目录下的Packages目录下找到Color Scheme-Default.sublime-package。(注:.sublime-package文件其实是一个文件包,类似于.zip文件) 打开Color Scheme-Default.sublime-package(打开方式就是打开zip文件的方法),在里面找到文件Solarized (Dark).tmTheme,打开该文件。 修改Solarized (Dark).tmTheme 把第23行的**#0A2933** 改为 #EEE8D5,保存退出,重新打开sublime_text,看一下效果。 OVER! 补充:关于sublime_text的Packages 目前的sublime_text的工具及插件流行使用.sublime-package后缀的压缩文件,而不是像原来sublime_text2的时候把程序存放在文件夹中。这是sublime_text3很大的不同点。 以上的修改方法完全适用于sublime_text2/sublime_text3。

2013年7月13日 · 1 分钟 · Jid

黑客组织称将击溃朝鲜网络 朝全境断网应对

中广网北京6月25日消息(记者朱敏)据中国之声《新闻纵横》报道,63年前的今天,朝鲜战争爆发,而63年后的同一个日子,朝鲜将迎来一场虚拟世界的战争。知名的国际"黑客"团体"匿名者"宣称,今天要对朝鲜网络发起攻击,击溃朝鲜的内部网络。朝鲜因此提前一周关闭了国内所有互联网,拦截"匿名者"的强势来袭。 而这并不是"匿名者"第一次攻击朝鲜网络,在今年4月15日,也就是朝鲜太阳节这一天,朝鲜部分网站已经遭到"匿名者"攻击,只是这一次,它的野心更大,要向内部网站进攻。“匿名者"此次进攻是炫耀技术还是有政治目的?朝鲜将如何应对? 4月15日正是朝鲜过太阳节的喜庆日子,然而,这一天朝鲜有5家网站突然被一个带有《V字仇杀队》面具和英文"北朝鲜"字样的红色旗子覆盖,全面瘫痪。这是黑客在这一天送给朝鲜所谓的"礼物”,而这些"不速之客"出自著名的国际黑客团体"匿名者",他们宣称是故意破坏朝鲜庆祝节日的气氛。更可怕的是,今天,“匿名者"又要来了,这一次,来势更猛,新华社驻平壤记者杜白羽: 杜白羽:“匿名者"宣称,将于6月25日也就是朝鲜战争爆发的日子,对朝鲜发动名为"渗透朝鲜内部"的网络攻击,可借机动摇朝鲜体制。 韩国《中央日报》今年5月曾援引这一"黑客"团体成员的话说,“2013年6月25日将成为朝鲜悲剧的日子”。报道提及,“匿名者"将攻击朝鲜全国内部网络"光明网"以及"我们民族之间”、“民族通信”、“黎明”、“朝鲜新报"等网站。对于这一威胁,朝鲜一方面说,“匿名者"并不了解朝鲜内部网站,“光明网"在朝鲜根本不存在,另一方面,朝鲜却为应对这次黑客攻击切断了国内网络。在平壤的新华社记者杜白羽也无法上网。 杜白羽:朝鲜从上周二也就是18日起,已经无法通过电脑连接国际互联网,据我了解,现在在朝鲜的外国人除了用卫星应急上网之外,应该都无法正常连线国际互联网,同时3G手机上网服务也已暂停。朝鲜的互联网主管部门在断网的前一天,也就是17日,向驻朝使团发来照会称,由于遭到日益猖獗和露骨的网络袭击决定将国际互联网暂停一段时间,但朝方没有对互联网可能恢复的日期做出回应,因此,具体何时能恢复网络仍是未知,现在在朝外国人的工作和生活也因此变得与世隔绝。 断网给像杜白羽这样的新闻从业者带来工作上的诸多不便,但是杜白羽说,朝鲜的普通民众却没有觉得断网的日子和平时有什么不一样。 杜白羽:朝鲜国内的普通民众一般无法连接国际互联网,只有少数人有由于工作原因可能接触到互联网。因而,普通民众对于网络攻击一事并没有概念。至于3G手机业务,朝鲜民众只能使用某些特定3G服务,例如短信、彩信和视频电话,但不能连接全球互联网,也不能拨打国际长途电话或与在朝外国人通话。 那么,“匿名者"究竟是一个什么样的"黑客组织”,以至于让朝鲜关掉所有网络来应对?来看看它的"光辉"历史。 这个闻名于世的"黑客"团体"匿名者"曾经入侵过宗教组织山达基教会,攻击过与维基解密断绝往来的公司,比如,万事达、Visa等等,今年4月还入侵朝鲜官方新闻网站、5月入侵菲律宾网站等等。 它连续在全球的高调出击,引发了人们越来越多的关注。也因此被冠以 “维基解密"的继承者、“对世界网络威胁最大的组织"等各种名号,而它却称自己只是为了维护互联网自由,经得起道德考验。 那么,“匿名者"这次针对朝鲜的攻击是个人性质还是有组织的呢?朝鲜只能靠关闭网络来应对吗?北京邮电大学经济管理学院姜奇平说,像这种实力的国际"黑客"团体攻击朝鲜网络是很容易的。 姜奇平:对于这些黑客来说,他们要攻陷朝鲜的网站应该是比较容易的,这个对他们来说达不到真正的炫耀的目的,只不过是在表达自己的一种好恶。实际上,黑客攻击行为有很强的个人性,当然也有有组织发动的,但两者之间有明显的区别。国家支持的往往是深入到硬件的攻击手法,而个人的黑客攻击经常是即兴的,它的攻击主要是软件攻击,这种黑客攻击和其他攻击有所不同,它学起来很容易,经常一个教程就可以使一个没有什么基础的小青年能够攻克很重要的网站,这些属于传统黑客以逞能为主,就是通过攻陷一些网站来显示自己技术高超。 那么,针对朝鲜的攻击是个人性质还是有组织的呢?就"匿名者"这一团体本身而言,是非政府性质的。然而,由于被攻击对象是朝鲜而使得这场攻击的背后策划者引人质疑。朝中社就指责,美国和韩国在幕后"与这一‘黑客’团体勾结”。对此,姜奇平认为: 姜奇平:像这种攻击朝鲜的,显然,至少它在价值观上是不太认同朝鲜的情况,和那种纯的技术黑客还是有所不同的。 面对来势汹汹的黑客攻击,朝鲜关闭了所有国际互联网。这就是朝鲜的应对措施吗?如果黑客没有提前通知,朝鲜网站难道只能坐等被袭吗?姜奇平说,朝鲜目前的网络防御能力便是如此,而这与其不开放的网络机制有关。 姜奇平:一般来说呢,黑客攻防一般它的技术水平都是在激烈的开放条件下,矛和盾此消彼长,这样水平容易提高,如果说采取技术封闭措施的话,防守技术也很难提高,我认为它好像不是技术类型的问题,而是管理体制的问题,它有点像一个大的局域网,这样的话从技术角度讲不利于防守技术的提高。 转自:中国广播网

2013年6月25日 · 1 分钟 · Jid

关于'eh vector constructor/destructor iterator'的讨论及类的内存分布模型

[原理分析] 在用IDA反汇编C++程序的时候,经常会看到这样的语句:“call eh vector constructor iterator”或“eh vector destructor iterator”。 第一反应:这是在调用某个std::vector对象的构造函数或析构函数。但进一步的阅读发现跟std::vector的实现对不上号,就是说程序中并没有声明std::vector对象。 其实,这是调用new或delete导致的,即 T * tt = new T[100]; delete [] tt; 其中,T是自定义类,并且自定义了构造函数或析构函数。 说到这里估计有人就会恍然大悟了。道理就是这么简单! “eh vector constructor/destructor iterator”按字面上理解,就是:数组-构造-迭代器或数组-析构-迭代器。 它发生在创建一个自定义类的数组时,C++在分配内存后自动迭代调用类的构造函数以初始化每一个数组元素,或析构。 但,这里有一个问题:new的时候知道数组的大小,但是delete的时候没有指定数组个数,那么C++是怎么知道对多少个对象调用析构函数,并且释放多大内存呢? C++程序员大概都有这样的疑问。 答案就是C++在创建数组的时候,在分配内存的头四个字节保存数组大小,从第4个字节开始才是数组内容,返回的时候也是返回的第4个字节之后的内存,所以导致大家感觉不到数组长度。 下面以一个简单的程序示范一下数组的创建过程、销毁过程、类的构造和析构、对象的内存分布模型,编译器是VC6.0,相信很多人都是在windows上搞反汇编的。 [示范程序] class demo_B { public: demo_B(); ~demo_B(); void set_value(int a, float b); private: int a_; float f_; }; demo_B::demo_B() { a_ = 1; f_ = -1.0; } demo_B::~demo_B() { a_ = -1; f_ = 0.0; } void demo_B::set_value(int a, float b) { a_ = a; f_ = b; } void test_foo(int n) { demo_B * buffer = new demo_B[n]; delete [] buffer; } int main(int argc, char const *argv[]) { test_foo(10); return 0; } 关键函数void test_foo(int n);用IDA反汇编如下: ...

2013年5月22日 · 3 分钟 · Jid

Source Insight 3.5.x 序列号算法分析

⚠️ 本文仅用于逆向工程学习和算法分析交流,请勿用于商业用途。 算法概述 Source Insight 3.5.x 的序列号格式为 SI3US-XXXXXX-XXXXX,由两部分组成: 中间数(6 位):随机生成,但排除一些特定值(mask 表中的 32 个值、全相同数字等) 校验码(5 位):由中间数通过固定算法计算得出 核心算法 /* * Source Insight 3.5.x 序列号算法 * 可用 VC/GCC 编译 */ #include <stdio.h> #include <stdlib.h> #include <math.h> #include <string.h> #include <time.h> /* 提取数字 v 的第 i 位 */ unsigned int digit(unsigned int v, unsigned int i) { v = v % (int)pow(10, i); return v / (int)pow(10, i - 1); } /* 生成大范围随机数 */ long lrand() { if (RAND_MAX == 0x7FFF) return (long)((rand() << 16) | rand()); else return rand(); } int main() { /* 被排除的中间数值 */ const unsigned int mask[32] = { 0x3039, 0x1E240, 0x5464E, 0x6F855, 0x8AA52, 0xA5BF5, 0x980D0, 0xBADD0, 0x980D0, 0x30448, 0x30379, 0x8AF93, 0x30379, 0x7B9, 0xF2F90, 0x9FF66, 0x8AA52, 0xF3A0, 0x30379, 0x8AA52, 0x62AF, 0x2AD, 0x71FDC, 0x5A124, 0xFFB2, 0xB96D8, 0x2B18E, 0x4CDE4, 0x71FDC, 0x1068C, 0x765C3A63, 0x745C3533 }; /* 校验码计算的变换表 */ const int i_dat[10] = {0x96, 0x95, 0x10, 0x23, 7, 0x15, 8, 3, 16, 17}; srand((unsigned int)time(NULL)); while (1) { unsigned int d = 0; unsigned int mid_number = 0; char resp[128]; /* 生成合法的 6 位中间数 */ while (1) { d = lrand() % 1000000; if (d < 100000 || d % 111111 == 0) continue; /* 排除 mask 表中的值 */ int i; for (i = 0; i < 32; ++i) { if (mask[i] == d) break; } if (i == 32) break; } mid_number = d; /* 计算校验码 */ int i; for (i = 0; i < 6; ++i) { d = (i_dat[i] ^ (digit(mid_number, 6 - i) + 48)) + 4 * d; } d = d % 100000; if (d < 10000) continue; printf("Serial number: SI3US-%d-%d\n", mid_number, d); printf("Generate another? (y/n): "); memset(resp, 0, 128); scanf("%s", resp); if (resp[0] != 'y' && resp[0] != 'Y') { printf("Good Bye!\n"); break; } } return 0; } 算法要点 中间数必须是 6 位(100000-999999),且不能全相同 32 个 mask 值是被排除的特定数字 校验码通过中间数的每一位与 i_dat 表异或运算后累加得出 校验码必须 ≥ 10000(即 5 位数)

2013年5月21日 · 2 分钟 · Jid

[转]威海银滩海景房泡沫调查

威海银滩,一个美丽的“谎言”吹起的旅游地产泡沫,正暴露在阳光下。 ##空城银滩 银滩位于山东威海下属的乳山市,海岸线东西长21.3公里,南北宽3公里,气候适宜,年平均气温12.3℃,空气质量良好,沙滩细软,是中国AAAA 级旅游度假区。据官方提供的数据,银滩每年的旅游人数为412.5万人次。这也是当地政府大手笔开发海景房的原因之一。 但看似热闹的银滩,实际上却是一座人烟稀少的空城。 “银滩是一座‘鬼城’,冬天甚至整个海滩上一盏灯也不亮,即便是在旅游最旺的七八月份,大量房屋还是空置的。”威海市一家房产中介老板龙大兴(化名)告诉第一财经日报《财商》。 5月上旬,胶东半岛渐渐进入旅游人气旺季。宽阔的海边耸立着密密麻麻的住宅,但本报记者发现,不少一线海景房整栋楼甚至无一户入住。当地最具代表性的银滩大酒店的酒店主楼甚至暂停营业,只留了少量房间供客人入住。 在银滩从事了五年海景房销售的Mike告诉记者:“哪怕是在人最多的七八月,银滩海景房的入住率也不超过10%。” 较低的入住率直接导致了银滩海景房的出租价格也不高。一般而言,一套60平方米左右的海景房,月租金在400元左右。这在各地的海景房出租价格中也处于较低水平,据途家网CEO罗军统计,三亚的海景房的年租金收入在10万左右,海口的海景房年租金回报在2万到~3万。 无人气的背后,是2000年以来庞大的海景房建设。目前银滩已经密密麻麻修建了200多个商品房住宅小区。由于当地房管局并不公布相关信息,很难查证银滩海景房的确切开发量。 这些房子中的绝大部分都卖给了外地人,其中以北京、上海、东北等地人较多。 不过,到银滩的交通并不便利。以上海为例,只能乘坐飞机或者火车到威海,再从威海乘坐大巴到银滩,约100公里,需要花费1.5个小时。 沿着银滩沿海岸线的公路,一路上极少有车通过。由于人烟稀少,路上几乎没有出租车,若需要出行,只能乘坐当地的摩托车。 在海岸线沿线零星地分布着一些小型饭店,不过5月由于银滩人流很小,大多数小饭店并未开始营业。 银滩甚至没有固定的菜市场,每月分期在周边几个地段设有集市。例如农历初一、初六在常家庄和小陶家,初三、初九在宫家集,初五、初十在焉家。 “银滩的房子很难升值,因为没有发展趋势,没有配套设施无法生活。”龙大兴告诉记者。 在冬天,银滩更是人迹罕至,由于住户很少,冬天大多数银滩小区甚至没有供暖。“住的人少,电厂供热会赔钱,所以不供。”龙大兴告诉记者。 目前银滩200多个楼盘中,供暖的只有两个,分别是离海较远的松花江路上的山水人家和维利亚,靠西的碧海名居此前供暖,但现在已停止。 对于老人而言,住在银滩最大的困扰可能是没有配套的医院。一旦患病,老人们需要到银滩最西的医院。 目前银滩最邻近海岸线的地域已经几乎全部开发成海景房,但是历经多年开发之后,销售还在继续。 ##房价滞涨+巨量二手房抛盘 “银滩有两个客户群:养老休闲和纯投资人群。不过由于医保没有全国联网,真正意义上的养老地产很难实现;而投资人群又会加大当地的房价波动。” 上海乘星行行销服务机构总经理李骁告诉记者。 表面上看,近年来银滩房价涨幅明显。刘女士2000年左右的购买单价是1900元/平方米。曹先生在2009年底购买的一处房屋单价为4900元/平方米。而2013年5月销售的楼盘价格在7000~8000元/平方米。 同时,银滩的地价从前些年的一亩地5万元上涨到目前80万~100万。 但实际上,不少购房者正在亏本抛房。 “现在银滩二手房的价格在单价3000元/平方米左右,很多人是2008年5000元买的,现在3000元亏本出手。” Mike告诉记者,一手房的价格并不能看出银滩房屋的真实供求关系,而二手房交易价格更加客观。 本报记者走访多家中介发现,银滩二手房均价在3000元左右,甚至一些一线海景房二手房售价也在3000元到4000元/平方米。 甚至有一些极端的情况,Mike告诉记者:“我遇到的最便宜的情况是80平方米的房子,由于主人急着用钱,总价12万就出手了。” 目前,银滩囤积了大量待出售的二手房,并且价格低廉。 “现在银滩有200家中介,平均每家中介手里有200把钥匙,你算算银滩的二手房有多大的量。由于抛盘大,二手房都卖不上价。”Mike告诉记者。 “其实用同样的钱,可以在威海市内较为中心的地带购买海景房,并且房屋建造品质大大优于银滩。”龙大兴告诉记者。 目前,银滩一线海景房价格在70008000元/平方米,代表当地高端地产的香港平远城的价格在13000元/平方米(一线花园洋房)。而威海市内由于三面环海,在三大浴场附近有大量的海景房,以孙家疃附近为例,一线海景房价格在70008000元/平方米。华润地产开发的华润湾九里和宝利地产开发的凯旋公馆是当地高端房产的代表,价格在1万元/平方米以上。刚修建不久的国际海景公寓目前价格在2万元/平方米。 房价滞涨,大量的待售二手房,对于投资而言显然不是一个好的信号。 ##烂尾楼盘:过期4年仍不见交付 除了投资回报上可能没有想象的那么高,一些楼盘还存在烂尾的风险。 五月初的银滩还有些微冷,一片杂草丛生的荒地边上屹立着蓝色玻璃结构的台湾城售楼处,门口依稀可见从施工场地吹过来的黄土。 在售楼处内,记者看到了海基会会长江丙坤在此处考察的照片。这曾经是银滩最大手笔开发的楼盘,由一家台湾开发商开发。建设初期,开发商花费3亿~4亿元修建了银滩一处大型人造景观——潮汐湖。这也是当地政府重要的工程景观。 售楼处一名留守的销售人员告诉记者,台湾城已经超过半年没有发工资了。 杨先生夫妇专程从上海赶到银滩,准备看他们过了交房期4年未交房的海景房。此前的4年,每年开发商都会寄送给杨氏夫妇一封信,信的内容是房屋交付要延期。 杨先生夫妇购买的住宅在台湾城的18号楼,根据合同是精装修。记者来到18号楼,房子是盖起来了,但是里面没有装修,周围一人多高的荒草丛生。 此前接待杨先生夫妇的销售人员早已不在台湾城售楼处,而此人电话也早已停止使用。 售楼处的销售人员告诉记者,现在只需要几千万就能把剩余工程全部完工。“但是,老板在北京南三环还有一个项目也发生了烂尾,现在要等北京项目解决后才能顾及到银滩项目。” 记者到乳山房管局银滩办事处查证,工作人员告诉记者,此楼盘的总产证尚未办理。 Mike告诉记者,银滩出现的烂尾楼盘不止台湾城一个,长城文化苑、金鼎大厦、万豪庭海苑、银滩之心、龙韵花园也都出现过烂尾楼盘。 (实习记者 王丽纳 袁秋晗对本文亦有贡献) 转自:第一财经网

2013年5月18日 · 1 分钟 · Jid

极速破解sublime text全部版本

摘要 本篇文章介绍一种非常直接、快速地破解Sublime Text编辑器的方法,并且这里的方式适用于Sublime Text2/3(以下为了方便简称为ST2,ST3)的所有版本和几乎所有平台(Win32,Win64,Linux32,Linux64,除了MacOS)。下面是破解后的效果图: ST2217-Windows ST3008-Windows ST3033-Linux 准备工具 十六进制编辑器,推荐WinHex,或其他可以进行十六进制搜索的任意编辑器,比如Vim,Sublime Text, UltraEditor等。 可以用正则表达式进行文本搜索的编辑器,比如Vim,Sublime Text等。 汇编器,windows下可以用OllyDBG或IDA,Linux下用objdump就可以。 破解过程 下面的方法是通用的,适用于Windows或Linux上的所有Sublime Text,在方法上仅仅是开始的时候有点区别。下面分别针对Windows系统和Linux系统做详细说明: <0> 下载并安装sublime_text 自己到官网上下载Sublime Text 2 或 Sublime Text 3, 然后安装。 安装后把可执行程序备份一遍。比如把sublime_text.exe复制一份为sublime_text.orig.exe。 <1.1> sublime_text for Windows 用OllyDBG把sublime_text.exe加载起来,然后把OllyDBG里面的文字全部复制出来,保持为st-crack.asm。(这是为了进行搜索) <1.2> sublime_text for Linux 先要知道你的ST的真正的可执行程序在哪里: $ which sublime_text | xargs ls -l >> ..... 上面的代码告诉你真正的ST在哪里。下面复制一份到Home下面 cp ... 用objdump分析上面找到的ST objdump -d ST_file > st-crack.asm <2> 汇总信息 上一步得到了反汇编文件 st-crack.asm,接下来统一分析。 <3> 分析st-crack.asm 用编辑器打开st-crack.asm,然后搜索这个正则表达式 (.*<je>.*\n.*<cmp>.*\n){8,} 上面这个正则其实是搜索一大片的 je.... cmp... je... cmp... je... cmp... je.... cmp... je... cmp... je... cmp... 因为找到的这段函数是验证序列号的最重要的函数(这个规律是我在调试的时候发现的,对ST2,ST3都适用。),这个函数用于判断注册码是否正确,返回值是一个布尔值,只要改了这个函数的返回值,ST就被完美爆破了。 ...

2013年5月17日 · 1 分钟 · Jid

ST3 Beta完美破解

昨天刚看到Sublime text释放出了ST3的Beta版,顿时蠢蠢欲动,可惜钱包干瘪, 目前的Beta只对注册用户试用。虽然试用版不久就会放出来,但我实在按捺不住试用的心情,所以就用OD动手了。 下面是实现破除注册界面的简单步骤(下面的地址只针对Beta3008版): 找个能用的16进制编辑器,比如Hex Workshop, WinHex, Vim等 跳到08CD10位置,把F7 FF 8B C3改为F7 FF 33 C0 . 其实只改了两个字节。 另存即可使用了。 以上的过程只针对Win32的版本做了尝试,其他版本还没有试。但是不同的版本用的函数应该是一样的,所以这里把相邻的几个字节都列了出来,以方便在其他的版本上尝试查找修改。 08CCF8: F7FF 8D4D C0E8 5437 08CD00: F7FF 8D4D A8E8 4C37 08CD08: F7FF 8D4D 90E8 4437 08CD10: F7FF 33C0 E8E9 D715 08CD18: 00C3 6A00 B8C1 5863 08CD20: 00E8 FAD7 1500 A1A4 08CD28: F071 00BF 98F0 7100

2013年1月31日 · 1 分钟 · Jid