一种源代码加固方法及装置

    公开(公告)号:CN108509773A

    公开(公告)日:2018-09-07

    申请号:CN201810147047.9

    申请日:2018-02-12

    Abstract: 本申请公开了一种源代码加固方法及装置,可以获取待加固的目标源代码;确定所述目标源代码中的函数的加固权重;根据所述加固权重从预设的加固算法集合中选取至少一种目标加固算法;采用选取的所述至少一种目标加固算法对所述目标源代码进行加固。由于该方法及装置可以依据待加固的源代码中的函数的加固权重,从预设的加固算法集合中自动选取合适的加固算法对所述源代码进行加固,因此,可以提高源代码的加固效率。

    基于执行顺序和单点逻辑的源代码加固方法及装置

    公开(公告)号:CN108509772A

    公开(公告)日:2018-09-07

    申请号:CN201810146606.4

    申请日:2018-02-12

    Abstract: 本申请公开了一种基于执行顺序和单点逻辑的源代码加固方法及装置,可以基于应用程序的原始源代码在编译或运行时的跳转逻辑,将原始源代码拆分成多个代码块;基于原始源代码在编译或运行时的跳转逻辑,建立表征所述多个代码块的执行顺序的跳转表,跳转表中保存有代码块标记与代码块的地址的对应关系;所述地址为加固后的第二源代码在编译或运行时、代码块在内存中的地址,代码块标记用于访问对应的代码块的地址;将原始源代码的代码块之间的跳转逻辑,通过所述跳转表中的代码块标记实现,以生成加固后的第一源代码;使用不透明谓词对第一源代码的函数中的条件变量进行模糊处理,得到所述加固后的第二源代码。该方法及装置可以提高防逆向分析能力。

    基于不透明谓词的源代码混淆方法及装置

    公开(公告)号:CN108446537A

    公开(公告)日:2018-08-24

    申请号:CN201810146564.4

    申请日:2018-02-12

    Abstract: 本申请实施例公开了一种基于不透明谓词的源代码混淆方法及装置,以提高源代码的防逆向分析能力。所述方法包括:定位源代码中位于分支跳转节点处的第一条件变量;在所述第一条件变量中添加至少一个不透明谓词,得到第二条件变量,所述不透明谓词的值恒定;利用所述第二条件变量替换所述第一条件变量。该技术方案能够达到模糊、混淆源代码中的条件变量的目的,从而增加源代码的反编译难度,使得攻击者难以通过静态分析等攻击方式获取到真实的分支跳转值,实现了对源代码的加固。

    基于代码执行顺序的源代码加固方法及装置

    公开(公告)号:CN108446535A

    公开(公告)日:2018-08-24

    申请号:CN201810146265.0

    申请日:2018-02-12

    Abstract: 本申请公开了一种基于代码执行顺序的源代码加固方法及装置,可以基于应用程序的原始源代码在编译或运行时的跳转逻辑,将原始源代码拆分成多个代码块;基于原始源代码在编译或运行时的跳转逻辑,建立表征代码块的执行顺序的跳转表,跳转表中保存有代码块标记与代码块的地址的对应关系;其中,所述地址为加固后的源代码在编译或运行时、代码块在内存中的地址,代码块标记用于访问对应的代码块的地址;将原始源代码的代码块之间的跳转逻辑,通过所述跳转表中的代码块标记实现,以生成加固后的源代码。由于通过跳转表中的代码块标记实现了原始源代码的代码块之间的跳转逻辑,因此可以隐藏原始源代码的执行顺序,进而可以提高源代码的防逆向分析能力。

    基于不透明谓词和有限状态机加固源代码的方法及装置

    公开(公告)号:CN108416191A

    公开(公告)日:2018-08-17

    申请号:CN201810146259.5

    申请日:2018-02-12

    Abstract: 本申请公开了一种基于不透明谓词和有限状态机加固源代码的方法及装置,该方法包括:定位应用程序的源代码中的第一条件变量;在第一条件变量中添加至少一个不透明谓词,得到第二条件变量;利用第二条件变量替换第一条件变量;基于原始源代码在编译或运行时的跳转逻辑,将原始源代码按照跳转逻辑的代码位置,拆分成多个代码块,并为每个代码块设置不同的状态;基于代码块的状态以及代码块中的跳转逻辑,确定代码块跳转状态机;将代码块中的跳转逻辑通过代码块跳转状态机实现,以生成应用程序加固后的源代码。该技术方案能够达到模糊、混淆源代码中的条件变量的目的,以及各个代码块中的跳转逻辑通过代码块跳转状态机实现,增加源代码的反编译难度。

    一种基于有限状态机加固源代码的方法及装置

    公开(公告)号:CN108415709A

    公开(公告)日:2018-08-17

    申请号:CN201810146276.9

    申请日:2018-02-12

    Abstract: 本申请公开了一种基于有限状态机加固源代码的方法及装置,该方法包括:基于应用程序的原始源代码在编译或运行时的跳转逻辑,将应用程序的原始源代码按照跳转逻辑的代码位置,拆分成多个代码块,并为每个代码块设置不同的状态;基于代码块的状态以及代码块中的跳转逻辑,确定代码块跳转状态机,代码块跳转状态机用于表征各个状态之间的跳转关系;将代码块中的跳转逻辑通过代码块跳转状态机实现,以生成应用程序加固后的源代码,使得各个代码块中的跳转逻辑通过代码块跳转状态机实现,从而实现了对各个代码块中的跳转逻辑进行隐藏,有效防止攻击者通过反编汇、反编译和动态调式等操作轻易的破解各个代码块中的跳转逻辑,提高了应用程序的安全性。

    模拟器检测方法及装置
    128.
    发明公开

    公开(公告)号:CN107729121A

    公开(公告)日:2018-02-23

    申请号:CN201710922754.6

    申请日:2017-09-30

    CPC classification number: G06F9/45558 G06F2009/45591

    Abstract: 本申请实施例公开了一种模拟器检测方法及装置,用以实现对设备是否为模拟器的鉴别。所述方法包括:获取待检测设备的相关参考信息;根据所述相关参考信息确定所述待检测设备是否为模拟器,其中,所述相关参考信息包括配置信息、操作系统相关信息、针对底层指令的反馈信息、硬件信息中的至少一项。该技术方案能够根据上述任一种或多种相关参考信息确定待检测设备是否为模拟器,从而使模拟器的检测方法更加多样化,提高了鉴别模拟器的准确度。

    一种基于触压面积的身份验证方法和装置

    公开(公告)号:CN107679865A

    公开(公告)日:2018-02-09

    申请号:CN201710944352.6

    申请日:2017-09-30

    Abstract: 本申请公开了基于触压面积的身份验证方法,用于解决现有技术中的业务处理过程中的身份验证方法不够优化的问题,包括:待验证用户在处理第一业务时,获取所述待验证用户在处理第一业务时在触控终端上的触压面积;获取所述触控终端上对应于所述第一业务的参考触压面积模型,所述参考触压面积模型是根据所述触控终端的合法用户处理所述第一业务时的触压面积建立的;根据所述触压面积和所述参考触压面积模型,确定所述待验证用户的合法性。本申请还公开了基于触压面积的身份验证装置。

Patent Agency Ranking