No Picture

支付宝任性集福

2016年2月9日 shaohua 0

个觉得,支付宝集福,加好有不应该只得3张福卡,应该按照加好友的多少来, 比如,10人三张,20人4张,50人得5张,100人直接送上敬业福,这才算敬业。而且效果会更好。可以一步到位。应该说年轻一代每个人说手机上,微信上都有上百个的人。 最先达到4个福的人,应该都是用同一个人注册的小号完成的,这种加好友的方式不鼓励用户注册小号吗,这种小号关系能叫关系?有点自欺欺人味道。 既然是全民大联欢,集齐福的人不足100万,支付宝用户零头都够不上,怎么能叫好。 玩会期间才应该是加好友送祝福的关键时期,结果支付宝上似乎在晚会期间关闭了加好友领福卡的通道。是什么逻辑? 个人觉得,支付宝这盘应该有钱任性了一把,不把钱当钱了,营销策略有点烂。不过哥还是一如既往支持支付宝。

No Picture

c++函数的返回值存在哪?反汇编代码分析

2016年1月17日 shaohua 0

这几天一直在给同学讲数据结构和算法的题,讲题的过程中突然想到这函数的返回值究竟是存放在哪的,为什么可以通过函数的调用来直接给变量赋值。仔细想想这么多年居然没有深究过这个问题,太不应该,于是今天花了些时间来好好研究了一下这个问题。也跟了一些thread,某些前辈的观点是“不应该动不动就提到寄存器,栈,堆这些较底层的概念。完全可以这样理解:返回值保存在一段临时区域,到下一条语句时,返回值被销毁,所以,如果要继续使用返回值,必须将返回值赋予其他变量。”这确实不假,但是我觉得这位前辈应该是在透彻理解了内在的机理之后才这么说的,我觉得作为学习过程还是应该深究一下。 另有一位前辈说“不大于32位的(返回值)在eax中,64位的在edx + eax中。再大就传指针了。” 那么就拿反汇编代码开刀,验证一下。 (一)  基础知识 在看反汇编代码之前,应该有几点要明确一下: 1.每个进程对应一个Call Stack(调用栈),而CallStack 又由许多Stack Frame(栈帧)组成,对应每个未完成的函数调用,由系统分配。(VC调试中默认是会显示调用栈窗口的,越往栈顶的就是越最近调用的函数,黑色显示 [点击详细……]

No Picture

中轉inline hook,不需要恢複首字節的hook

2016年1月17日 shaohua 0

注:我實驗的環境:win7 x64 經驗證XP會有稍微區別,主要是我本次實驗HOOK的API, 從XP到WIN7微軟有了些許改變。 —————————————————————————————————————————————- 最近在看驅動教程時,從前人的HOOK得到啓發,才有了本篇文章,在此甚是感激。 文章估計有些長,當是我的學習筆記了,適合有一定HOOK基礎的盆友, 我寫這篇文章的目的就是爲了提高HOOK的效率。 本次我以HOOK GetProcAddr [点击详细……]

No Picture

Troubleshooting common VPN related errors

2016年1月17日 shaohua 0

Hello Customers, If you are seeing errors while establishing VPN connection using Windows in-built VPN client,  you have reached the right place. This article will help you to easily troubleshoot some of the common VPN related errors. 1) Error Code: 800 Error Description: The remote connection was not made because the attempted VPN tunnels failed. The VPN server might be unreachable. If this connection is attempting to use an L2TP/IPsec tunnel, the security parameters required for IPsec negotiat [点击详细……]

No Picture

图解:如何在Windows Azure上搭建SSTP VPN(你们懂的)

2016年1月17日 shaohua 0

原文地址: http://edi.wang/Post/2014/3/9/setup-sstp-windows-azure 需要注意的是: 证书的创建要用azure 域名中的名字, 在客户端导入证书到信任的根证书中。       在国内,VPN是用来干嘛的大家都懂的。很久之前我尝试用Azure的Virtual Network搞VPN结果惨败了。最近微博上有基友写了篇文章亲测可行,原文在这里。可惜是英文的。所以我的这篇文章仅仅是用原作者的步骤进行翻译和补充。 注意,本文的方法不适用于国内世纪互联运营的Windows Azure! 一、服务器设置 首先,从0开始,你需要创建一个新的VM。我选择Windows Server 2012 R2,所有步骤和创建普通VM都一样,但最后在防火墙设置里一定要打开TCP 443端口: 创建完成后,远程桌面进去,在自动弹出的“Server Management”里面点击“Add roles and features”,一路Next到“Server Roles”,然后勾选Remote Access。 再一路Next到“Role Se [点击详细……]

No Picture

利用反汇编手段解析C语言函数

2016年1月15日 shaohua 0

1、问题的提出 函数是 C语言中的重要概念。利用好函数能够充分利用系统库的功能写出模块独立、易于维护和修改的程序。函数并不是 C 语言独有的概念,其他语言中的方法、过程等本质上都是函数。可见函数在教学中的重要意义。在教学中一般采用画简单的堆栈图的方式描述函数调用,但由于学生对堆栈没有直观认识,难以深入理解,因此教学效果往往并不理想,从而限制了对模块化程序设计思想的理解和应用。 2、解决方法 在《微机原理》 课程介绍了堆栈、汇编语言等必要的相关知识之后,通过在高级语言开发环境下反汇编C 语言程序代码,使得学生通过分析汇编代码来理解函数调用中的堆栈变化,可以在实践中理解高级语言和低级语言的底层映射关系,理解函数调用的实质。本文通过在 Visual C++6.0 下反汇编一个 32 位 C语言程序的部分代码来解析解释函数调用的具体过程。 3、函数调用过程 函数调用过程主要由参数传递、地址跳转、局部变量分配和赋初值、执行函数体,结果返回等几个步骤组成[1]。 3.1、参数传递及函数跳转 参数由实参传递给形参。在底层实现上,即是实参按照函数调用规定压入堆栈。参数传递完成后就通过CALL指令由当前 [点击详细……]

1 2