CN109657493A - 一种信息处理方法和装置 - Google Patents
一种信息处理方法和装置 Download PDFInfo
- Publication number
- CN109657493A CN109657493A CN201811542880.XA CN201811542880A CN109657493A CN 109657493 A CN109657493 A CN 109657493A CN 201811542880 A CN201811542880 A CN 201811542880A CN 109657493 A CN109657493 A CN 109657493A
- Authority
- CN
- China
- Prior art keywords
- cookie information
- function
- unencryption
- information
- cookie
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
- G06F21/6263—Protecting personal data, e.g. for financial or medical purposes during internet communication, e.g. revealing personal data from cookies
Abstract
本申请提供一种信息处理方法和装置,所述方法包括:当启用栈保护的程序调用函数时,对调用所述函数时生成的cookie信息进行加密,并保存未加密的所述cookie信息;当所述函数返回时,对所述函数返回时携带的cookie信息进行解密,将解密后的cookie信息与所述未加密的cookie信息进行比对,若解密后的cookie信息与所述未加密的cookie信息不一致,则将所述程序转入异常处理。通过上述技术方案,可以阻止攻击者读取并修改cookie信息的做法,从而有效提高程序执行的安全性。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种信息处理方法和装置。
背景技术
在信息安全领域,在执行可能带有缓冲区溢出漏洞的程序时,攻击者可能会利用缓冲区溢出漏洞覆盖函数的返回地址以及绕过cookie信息,使程序转到攻击者事先定义好的函数中去执行,使程序执行的安全性存在隐患。
发明内容
本申请所要解决的技术是提供一种信息处理方法和装置,可以提高程序执行的安全性。
为了解决上述技术问题,本申请提供了一种信息处理方法,所述方法包括:
当启用栈保护的程序调用函数时,对调用所述函数时生成的cookie信息进行加密,并保存未加密的所述cookie信息;
当所述函数返回时,对所述函数返回时携带的cookie信息进行解密,将解密后的cookie信息与所述未加密的cookie信息进行比对,若解密后的cookie信息与所述未加密的cookie信息不一致,则将所述程序转入异常处理。
可选地,将解密后的cookie信息与所述未加密的cookie信息进行比对之后,所述方法还包括:
若解密后的cookie信息与所述未加密的cookie信息一致,则所述程序继续执行。
可选地,所述对调用所述函数时生成的cookie信息进行加密包括:
根据随机数生成一个对称密钥;将该对称密钥作为参数建立对称加密算法;
通过所述对称加密算法对调用所述函数时生成的cookie信息进行加密;
所述对所述函数返回时携带的cookie信息进行解密包括:
通过所述对称密钥对所述函数返回时携带的cookie信息进行解密。
可选地,所述未加密的所述cookie信息保存在未被映射到虚拟地址空间的内存页中。
可选地,所述对调用所述函数时生成的cookie信息进行加密之后,所述方法还包括:
将加密的cookie信息存入栈内相应位置。
本实施例还提供一种信息处理装置,包括:存储器和处理器;所述存储器,用于保存用于信息处理的程序;
所述处理器,用于读取执行所述用于信息处理的程序,执行如下操作:
当启用栈保护的程序调用函数时,对调用所述函数时生成的cookie信息进行加密,并保存未加密的所述cookie信息;
当所述函数返回时,对所述函数返回时携带的cookie信息进行解密,将解密后的cookie信息与所述未加密的cookie信息进行比对,若解密后的cookie信息与所述未加密的cookie信息不一致,则将所述程序转入异常处理。
可选地,所述处理器用于读取执行所述用于信息处理的程序,还执行如下操作:
将解密后的cookie信息与所述未加密的cookie信息进行比对之后,若解密后的cookie信息与所述未加密的cookie信息一致,则所述程序继续执行。
可选地,所述对调用所述函数时生成的cookie信息进行加密包括:
根据随机数生成一个对称密钥;将该对称密钥作为参数建立对称加密算法;
通过所述对称加密算法对调用所述函数时生成的cookie信息进行加密;
所述对所述函数返回时携带的cookie信息进行解密包括:
通过所述对称密钥对所述函数返回时携带的cookie信息进行解密。
可选地,所述未加密的所述cookie信息保存在未被映射到虚拟地址空间的内存页中。
可选地,所述处理器用于读取执行所述用于信息处理的程序,还执行如下操作:
所述对调用所述函数时生成的cookie信息进行加密之后,将加密的cookie信息存入栈内相应位置。
与现有技术相比,本申请包括:当启用栈保护的程序调用函数时,对调用所述函数时生成的cookie信息进行加密,并保存未加密的所述cookie信息;当所述函数返回时,对所述函数返回时携带的cookie信息进行解密,将解密后的cookie信息与所述未加密的cookie信息进行比对,若解密后的cookie信息与所述未加密的cookie信息不一致,则将所述程序转入异常处理。通过上述技术方案,可以阻止攻击者读取并修改cookie信息的做法,从而有效提高程序执行的安全性。
附图说明
图1是本发明实施例一的信息处理方法的流程图;
图2是本发明实施例一的信息处理方法的另一流程图;
图3是本发明实施例一的信息处理装置的结构示意图;
图4是示例一的信息处理方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
实施例一
如图1所示,本实施例提供一种信息处理方法,所述方法包括:
步骤S100、当启用栈保护的程序调用函数时,对调用所述函数时生成的cookie信息进行加密,并保存未加密的所述cookie信息;
步骤S102、当所述函数返回时,对所述函数返回时携带的cookie信息进行解密,将解密后的cookie信息与所述未加密的cookie信息进行比对,若解密后的cookie信息与所述未加密的cookie信息不一致,则将所述程序转入异常处理。
可选地,如图2所示,将解密后的cookie信息与所述未加密的cookie信息进行比对之后,所述方法还可以包括:
步骤S104、若解密后的cookie信息与所述未加密的cookie信息一致,则所述程序继续执行。
可选地,所述对调用所述函数时生成的cookie信息进行加密可以包括:
根据随机数生成一个对称密钥;将该对称密钥作为参数建立对称加密算法;
通过所述对称加密算法对调用所述函数时生成的cookie信息进行加密;
所述对所述函数返回时携带的cookie信息进行解密包括:
通过所述对称密钥对所述函数返回时携带的cookie信息进行解密。
可选地,所述未加密的所述cookie信息可以保存在未被映射到虚拟地址空间的内存页中。
可选地,所述对调用所述函数时生成的cookie信息进行加密之后,所述方法还可以包括:
步骤S101、将加密的cookie信息存入栈内相应位置。
通过上述技术方案,可以阻止攻击者读取并修改cookie信息的做法,从而有效提高程序执行的安全性。
如图3所示,本实施还提供一种信息处理装置,包括:存储器10和处理器20;所述存储器10,用于保存用于信息处理的程序;
所述处理器20,用于读取执行所述用于信息处理的程序,执行如下操作:
当启用栈保护的程序调用函数时,对调用所述函数时生成的cookie信息进行加密,并保存未加密的所述cookie信息;
当所述函数返回时,对所述函数返回时携带的cookie信息进行解密,将解密后的cookie信息与所述未加密的cookie信息进行比对,若解密后的cookie信息与所述未加密的cookie信息不一致,则将所述程序转入异常处理。
可选地,所述处理器20用于读取执行所述用于信息处理的程序,还可以执行如下操作:
将解密后的cookie信息与所述未加密的cookie信息进行比对之后,若解密后的cookie信息与所述未加密的cookie信息一致,则所述程序继续执行。
可选地,所述对调用所述函数时生成的cookie信息进行加密可以包括:
根据随机数生成一个对称密钥;将该对称密钥作为参数建立对称加密算法;
通过所述对称加密算法对调用所述函数时生成的cookie信息进行加密;
所述对所述函数返回时携带的cookie信息进行解密包括:
通过所述对称密钥对所述函数返回时携带的cookie信息进行解密。
可选地,所述未加密的所述cookie信息可以保存在未被映射到虚拟地址空间的内存页中。
可选地,所述处理器20用于读取执行所述用于信息处理的程序,还可以执行如下操作:
所述对调用所述函数时生成的cookie信息进行加密之后,将加密的cookie信息存入栈内相应位置。
通过上述技术方案,可以阻止攻击者读取并修改cookie信息的做法,从而有效提高程序执行的安全性。
示例一
如图4所示,下面结合示例进一步说明本申请的信息处理方法。该示例以C语言程序的编译器为例进行说明。
步骤S201、在C程序的编译器中,先利用随机数生成一个对称密钥;
步骤S202、将该对称密钥作为参数,在编译器中建立一个对称加密算法;
本实施例中,采用的对称加密算法可以是AES(Advanced Encryption Standard,高级加密标准)。
步骤S203、使用该编译器编译有缓冲区溢出漏洞的程序,然后开始运行该程序;
步骤S204、当程序启用栈保护后,调用函数时会生成cookie信息;
本实施例中,对于启动栈保护的程序,当调用函数时,编译器可以利用随机数和函数栈中的控制信息,通过异或运算自动得出一个cookie信息。
步骤S205、编译器中的对称密钥通过对称加密算法对该cookie信息进行加密,并且将未加密的cookie信息保存在一个未被映射到虚拟地址空间的内存页中;
步骤S206、将加密后的cookie信息放入栈内相应的位置;
步骤S207、当被调用函数返回的时候,通过之前的对称密钥对cookie信息进行解密;
步骤S208、将解密后的cookie信息与加密之前的cookie信息进行比较,判断解密后的cookie信息与加密之前的cookie信息是否一致;
步骤S209、如果解密后的cookie信息与加密之前的cookie信息一致,则说明cookie信息未被攻击者修改,程序可以继续执行;
步骤S210、如果解密后的cookie信息与加密之前的cookie信息不一致,则说明cookie信息已被攻击者获取并修改,应该将程序转入异常处理程序去执行,同时在标准输出报错。
需要说明的是,本实施例中,一个程序执行可以调用多个函数,每调用一次函数都可以对生成的cookie信息进行加密,然后在函数返回时进行验证。
例如程序A中需要先后需要调用函数1、函数2和函数3,当调用函数1时,会自动生成cookie信息1,编译器对cookie信息1进行加密,当函数1返回时,判断cookie信息1与加密之前的cookie信息1是否一致,如果cookie信息1与加密之前的cookie信息1一致,则程序A继续执行。当调用函数2时,会生成cookie信息2,与调用函数1时类似,需要在函数2返回时对cookie信息2进行验证。
上述技术方案,对有缓冲区溢出漏洞并且启用了栈保护的程序来说,通过对函数调用时生成的cookie信息进行加密处理,有效阻止了攻击者通过缓冲区溢出漏洞修改栈上函数的返回地址,提高了程序运行的安全性。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种信息处理方法,其特征在于,所述方法包括:
当启用栈保护的程序调用函数时,对调用所述函数时生成的cookie信息进行加密,并保存未加密的所述cookie信息;
当所述函数返回时,对所述函数返回时携带的cookie信息进行解密,将解密后的cookie信息与所述未加密的cookie信息进行比对,若解密后的cookie信息与所述未加密的cookie信息不一致,则将所述程序转入异常处理。
2.如权利要求1所述的方法,其特征在于,将解密后的cookie信息与所述未加密的cookie信息进行比对之后,所述方法还包括:
若解密后的cookie信息与所述未加密的cookie信息一致,则所述程序继续执行。
3.如权利要求1所述的方法,其特征在于,所述对调用所述函数时生成的cookie信息进行加密包括:
根据随机数生成一个对称密钥;将该对称密钥作为参数建立对称加密算法;
通过所述对称加密算法对调用所述函数时生成的cookie信息进行加密;
所述对所述函数返回时携带的cookie信息进行解密包括:
通过所述对称密钥对所述函数返回时携带的cookie信息进行解密。
4.如权利要求1所述的方法,其特征在于:
所述未加密的所述cookie信息保存在未被映射到虚拟地址空间的内存页中。
5.如权利要求1所述的方法,其特征在于,所述对调用所述函数时生成的cookie信息进行加密之后,所述方法还包括:
将加密的cookie信息存入栈内相应位置。
6.一种信息处理装置,包括:存储器和处理器;其特征在于:
所述存储器,用于保存用于信息处理的程序;
所述处理器,用于读取执行所述用于信息处理的程序,执行如下操作:
当启用栈保护的程序调用函数时,对调用所述函数时生成的cookie信息进行加密,并保存未加密的所述cookie信息;
当所述函数返回时,对所述函数返回时携带的cookie信息进行解密,将解密后的cookie信息与所述未加密的cookie信息进行比对,若解密后的cookie信息与所述未加密的cookie信息不一致,则将所述程序转入异常处理。
7.如权利要求6所述的装置,其特征在于,所述处理器用于读取执行所述用于信息处理的程序,还执行如下操作:
将解密后的cookie信息与所述未加密的cookie信息进行比对之后,若解密后的cookie信息与所述未加密的cookie信息一致,则所述程序继续执行。
8.如权利要求6所述的装置,其特征在于,所述对调用所述函数时生成的cookie信息进行加密包括:
根据随机数生成一个对称密钥;将该对称密钥作为参数建立对称加密算法;
通过所述对称加密算法对调用所述函数时生成的cookie信息进行加密;
所述对所述函数返回时携带的cookie信息进行解密包括:
通过所述对称密钥对所述函数返回时携带的cookie信息进行解密。
9.如权利要求6所述的装置,其特征在于:
所述未加密的所述cookie信息保存在未被映射到虚拟地址空间的内存页中。
10.如权利要求6所述的装置,其特征在于,所述处理器用于读取执行所述用于信息处理的程序,还执行如下操作:
所述对调用所述函数时生成的cookie信息进行加密之后,将加密的cookie信息存入栈内相应位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811542880.XA CN109657493A (zh) | 2018-12-17 | 2018-12-17 | 一种信息处理方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811542880.XA CN109657493A (zh) | 2018-12-17 | 2018-12-17 | 一种信息处理方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109657493A true CN109657493A (zh) | 2019-04-19 |
Family
ID=66113716
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811542880.XA Pending CN109657493A (zh) | 2018-12-17 | 2018-12-17 | 一种信息处理方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109657493A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112104703A (zh) * | 2020-08-18 | 2020-12-18 | 厦门网宿有限公司 | cookie管理方法、中间节点及webvpn系统 |
CN114339630A (zh) * | 2021-11-30 | 2022-04-12 | 度小满科技(北京)有限公司 | 一种用于短信保护的方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102158493A (zh) * | 2011-04-15 | 2011-08-17 | 奇智软件(北京)有限公司 | 一种Cookie解析方法、装置及一种客户端 |
CN103077332A (zh) * | 2012-12-28 | 2013-05-01 | 飞天诚信科技股份有限公司 | 一种运行含有自校验的加壳程序的方法和装置 |
CN107135266A (zh) * | 2017-05-19 | 2017-09-05 | 成都极玩网络技术有限公司 | Http代理框架安全数据传输方法 |
CN108933766A (zh) * | 2017-05-26 | 2018-12-04 | 武汉斗鱼网络科技有限公司 | 一种提高设备id安全性的方法和客户端 |
-
2018
- 2018-12-17 CN CN201811542880.XA patent/CN109657493A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102158493A (zh) * | 2011-04-15 | 2011-08-17 | 奇智软件(北京)有限公司 | 一种Cookie解析方法、装置及一种客户端 |
CN103077332A (zh) * | 2012-12-28 | 2013-05-01 | 飞天诚信科技股份有限公司 | 一种运行含有自校验的加壳程序的方法和装置 |
CN107135266A (zh) * | 2017-05-19 | 2017-09-05 | 成都极玩网络技术有限公司 | Http代理框架安全数据传输方法 |
CN108933766A (zh) * | 2017-05-26 | 2018-12-04 | 武汉斗鱼网络科技有限公司 | 一种提高设备id安全性的方法和客户端 |
Non-Patent Citations (1)
Title |
---|
CLINGYU: "缓冲区溢出保护机制——Windows", 《博客园 HTTP://WWW.CNBLOGS.COM/CLINGYU/P/8546626.HTML》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112104703A (zh) * | 2020-08-18 | 2020-12-18 | 厦门网宿有限公司 | cookie管理方法、中间节点及webvpn系统 |
CN114339630A (zh) * | 2021-11-30 | 2022-04-12 | 度小满科技(北京)有限公司 | 一种用于短信保护的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7577851B2 (en) | Multitask execution apparatus and multitask execution method | |
EP3667535B1 (en) | Storage data encryption and decryption device and method | |
CN103221961B (zh) | 包括用于保护多用户敏感代码和数据的架构的方法和装置 | |
US20170046281A1 (en) | Address dependent data encryption | |
CN104318135B (zh) | 一种基于可信执行环境的Java代码安全动态载入方法 | |
US20050021986A1 (en) | Apparatus and method for memory encryption with reduced decryption latency | |
US11520905B2 (en) | Smart data protection | |
WO2020233624A1 (zh) | 结合交易类型和事件函数类型的收据存储方法和节点 | |
CN104156672B (zh) | 基于linux的数据加密保护方法及系统 | |
CN103065082A (zh) | 基于Linux系统的软件安全防护方法 | |
CN108628611A (zh) | 一种数据调用方法及数据调用装置 | |
CN102930223B (zh) | 一种磁盘数据保护方法和系统 | |
EP2990953B1 (en) | Periodic memory refresh in a secure computing system | |
CN105678173A (zh) | 基于硬件事务内存的vTPM安全保护方法 | |
CN110008693A (zh) | 安全应用程序加密保证方法及装置与系统和存储介质 | |
CN109657493A (zh) | 一种信息处理方法和装置 | |
CN109344656A (zh) | 一种数据库的数据加密/解密方法、装置和设备 | |
US9218296B2 (en) | Low-latency, low-overhead hybrid encryption scheme | |
CN104504310A (zh) | 基于壳技术的软件保护方法和装置 | |
Lee et al. | Classification and analysis of security techniques for the user terminal area in the internet banking service | |
CN110855429A (zh) | 一种基于tpm的软件密钥保护方法 | |
CN105740726B (zh) | 一种扩展信息加密方法及系统 | |
EP2674892B1 (en) | A method, a device and a computer program support for execution of encrypted computer code | |
Shrivastava et al. | Securator: A fast and secure neural processing unit | |
CN107688729B (zh) | 基于可信主机的应用程序保护系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190419 |
|
RJ01 | Rejection of invention patent application after publication |