通达OA是国内OA行业的翘楚,在办公自动化方面扮演着十分重要的角色。在国内的IT业界一直有一个潜规则:名气大,功能出色的商业软件一定就是模仿与抄袭的对象。通达OA自然也免不了被许多开发者或者软件公司拿来当练手的样本。它是由php语言开发的。目前php的逆向解密已经不是什么非常困难的工程。很多所谓自主创新的OA软件都是照抄通达的。如果懂逆向的朋友,一定知道,解密出来的代码,很多是错误的,甚至是把某些代码丢失了,如何让逆向出来的代码可以正常运行。这需要逆向开发的人员具备相当的编程能力。懂得排查错误与修补缺失的代码。自古是道高一尺,魔高一丈。zend4.x以后在php里面加入了函数混淆的功能,这让逆向出来的代码变得更加难以修复。当然了,唯一的死办法就是逆向人员自己动手制作超级字典。说穿了就是制作一张乱码特征的对照翻译表。我们在尝试修复通达某个平台版本的过程中,也遇到过很多混淆的函数。刚开始束手无策。后来偶然的机会,得到一套通达早期版本的源代码文件(尽管这套代码也是错误百出),通过对比分析,发现高版本中很多混淆的函数字段,其实可以从低版本的某些地方得到印证。经过一番引用替换测试,收获还真不小。终于完成该版本源代码得100%逆向还原。
我在这里只不过是告诉大家一个解决问题得途径,平时多注意积累。函数混淆不是一道不可逾越的鸿沟!
本文分享了如何通过对比分析低版本源代码来解决通达OA平台版本逆向还原的问题,强调了积累和实践的重要性。同时指出,尽管zend4.x引入了函数混淆功能增加了逆向难度,但并非无法逾越。
768

被折叠的 条评论
为什么被折叠?



