CN106250244A - 一种释放互斥锁的方法、装置及电子设备 - Google Patents

一种释放互斥锁的方法、装置及电子设备 Download PDF

Info

Publication number
CN106250244A
CN106250244A CN201610561896.XA CN201610561896A CN106250244A CN 106250244 A CN106250244 A CN 106250244A CN 201610561896 A CN201610561896 A CN 201610561896A CN 106250244 A CN106250244 A CN 106250244A
Authority
CN
China
Prior art keywords
lock
field
process resource
information
pointer
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.)
Granted
Application number
CN201610561896.XA
Other languages
English (en)
Other versions
CN106250244B (zh
Inventor
李文靖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Baoqu Technology Co Ltd
Original Assignee
Beijing Kingsoft Internet Security Software Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Internet Security Software Co Ltd filed Critical Beijing Kingsoft Internet Security Software Co Ltd
Priority to CN201610561896.XA priority Critical patent/CN106250244B/zh
Publication of CN106250244A publication Critical patent/CN106250244A/zh
Application granted granted Critical
Publication of CN106250244B publication Critical patent/CN106250244B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/526Mutual exclusion algorithms

Abstract

本发明的实施例公开一种释放互斥锁的方法、装置及电子设备,涉及信息安全技术,能够有利于提升操作系统的安全防护效率。包括:获取进程环境块中的进程资源锁信息,获取所述进程资源锁信息中的锁定字段;判断所述进程资源锁信息中的锁定字段是否为锁定状态;如果所述锁定字段为锁定状态,根据所述进程资源锁信息的指针更新所述锁定字段为非锁定状态。

Description

一种释放互斥锁的方法、装置及电子设备
技术领域
本发明涉及信息安全技术,尤其涉及一种释放互斥锁的方法、装置及电子设备。
背景技术
随着Windows系统内核层技术细节的逐渐公开,越来越多的木马病毒等恶意应用程序(APP,Application),为了自身存活和非法利益,开始使用内核层驱动程序来保护自身的进程文件,受内核层驱动程序保护的恶意应用程序的进程文件对应的进程,可以结束(杀死)Windows系统中的安全防护进程,例如,杀毒软件或防火墙软件的进程,从而使得恶意应用程序的进程可以根据恶意应用程序提供者的意图,对用户的进程或系统进程进行恶意攻击,可能造成计算机运行不稳定,甚至可能给用户带来非常大的经济损失,例如,隐私信息的泄露以及物质财产的被窃取。其中,进程(Process)是计算机中的应用程序关于数据集合上的一次运行活动,应用程序是指令、数据及其组织形式的描述,进程是应用程序的实体。
目前,针对安全软件对恶意应用程序的进程文件的查杀,一些恶意应用程序,通过更改启动的进程文件,从而使得安全软件依据恶意应用程序启动的进程,无法获取对应的进程文件路径,或者,获取的是错误的进程文件路径,也就无法查杀相应的进程文件,使得恶意应用程序实现自我保护的目的。
为了获取进程文件的真实进程路径,以便于安全软件依据进程路径查杀相应的进程文件,现有技术中,提出了一种获取进程路径的方法,即通过创建模块通知函数(PsSetLoadImageNotifyRoutine函数)注册一加载模块回调函数,设置用于模块拦截的回调函数;在回调函数中调用驱动注入函数(MiMapViewOfSection函数),在应用程序加载动态链接库文件时,将动态链接库文件映射至内存空间并通知注册的加载模块回调函数;然后,调用枚举进程虚拟内存内核函数(ZwQueryVirtualMemory内核函数),以读取映射至内存空间的动态链接库文件,进而获取进程路径信息,以使安全软件依据获取的进程路径查杀对应的动态链接库文件。但该方法,在调用枚举进程虚拟内存内核函数获取进程路径信息时,由于进程上的互斥锁现象,会导致操作系统死机,从而无法获取进程路径信息,使得安全软件无法对该更改的进程文件(动态链接库文件)进行有效查杀,从而导致操作系统的安全防护效率较低,安全性不高。
发明内容
有鉴于此,本发明实施例提供一种释放互斥锁的方法、装置及电子设备,能够提升操作系统的安全防护效率,以解决现有的获取进程路径的方法中,由于进程上的互斥锁现象,对调用枚举进程虚拟内存内核函数获取进程路径信息易导致的操作系统死机,使得无法查杀进程引起的操作系统的安全防护效率较低的问题。
第一方面,本发明实施例提供一种释放互斥锁的方法,包括:
获取进程环境块中的进程资源锁信息,获取所述进程资源锁信息中的锁定字段;
判断所述进程资源锁信息中的锁定字段是否为锁定状态;
如果所述锁定字段为锁定状态,根据所述进程资源锁信息的指针更新所述锁定字段为非锁定状态。
结合第一方面,在第一方面的第一种实施方式中,所述获取进程环境块中的进程资源锁信息包括:
获取进程环境块地址;
根据所述进程环境块地址和预设偏移,得到所述进程资源锁信息的指针;
根据所述进程资源锁信息的指针,得到所述进程资源锁信息。
结合第一方面,在第一方面的第二种实施方式中,所述判断所述进程资源锁信息中的锁定字段是否为锁定状态包括:
判断所述锁定字段是否为预设值,若所述锁定字段为预设值则确定所述锁定字段为锁定状态。
结合第一方面,在第一方面的第三种实施方式中,所述根据所述进程资源锁信息的指针更新所述锁定字段为非锁定状态包括:
以所述进程资源锁信息的指针为参数调用推锁释放函数,将所述锁定字段设置为非锁定状态。
第二方面,本发明实施例提供一种释放互斥锁的装置,包括:锁定字段获取模块、锁定判断模块以及状态更新模块,其中,
锁定字段获取模块,用于获取进程环境块中的进程资源锁信息,获取所述进程资源锁信息中的锁定字段;
锁定判断模块,用于判断所述锁定字段获取模块获取到的所述进程资源锁信息中的锁定字段是否为锁定状态;
状态更新模块,用于如果所述锁定判断模块判断出所述锁定字段为锁定状态,根据所述进程资源锁信息的指针更新所述锁定字段为非锁定状态。
结合第二方面,在第二方面的第一种实施方式中,所述锁定字段获取模块包括:地址获取单元、指针获取单元、进程资源锁信息获取单元以及锁定字段获取单元,其中,
地址获取单元,用于获取进程环境块地址;
指针获取单元,用于根据所述地址获取单元获取到的所述进程环境块地址和预设偏移,得到所述进程资源锁信息的指针;
进程资源锁信息获取单元,用于根据所述指针获取单元得到的所述进程资源锁信息的指针,得到所述进程资源锁信息;
锁定字段获取单元,用于在所述进程资源锁信息获取单元获取到的所述进程资源锁信息中获取锁定字段。
结合第二方面,在第二方面的第二种实施方式中,所述锁定判断模块包括:判断单元以及锁定状态确定单元,其中,
判断单元,用于判断所述锁定字段获取模块获取到的所述锁定字段是否为预设值;
锁定状态确定单元,若所述判断单元判断出所述锁定字段为预设值则确定所述锁定字段为锁定状态。
结合第二方面,在第二方面的第三种实施方式中,所述状态更新模块具体用于:如果所述锁定判断模块判断出所述锁定字段为锁定状态,以所述进程资源锁信息的指针为参数调用推锁释放函数,将所述锁定字段设置为非锁定状态。
第三方面,本发明实施例提供一种电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一所述的释放互斥锁的方法。
本发明实施例提供的一种释放互斥锁的方法、装置及电子设备,通过获取进程环境块中的进程资源锁信息,获取所述进程资源锁信息中的锁定字段;判断所述进程资源锁信息中的锁定字段是否为锁定状态;如果所述锁定字段为锁定状态,根据所述进程资源锁信息的指针更新所述锁定字段为非锁定状态,能够提升操作系统的安全防护效率,以解决现有的获取进程路径的方法中,由于进程上的互斥锁现象,对调用枚举进程虚拟内存内核函数获取进程路径信息易导致的操作系统死机,使得无法查杀进程引起的操作系统的安全防护效率较低的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明的实施例一释放互斥锁的方法流程示意图;
图2为本发明的实施例二释放互斥锁的装置结构示意图;
图3为本发明电子设备一个实施例的结构示意图。
具体实施方式
下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
现有技术中,通过调用源码级调试工具,对驱动注入函数进行调试。其中,源码级调试工具为windbg调试工具,第一推锁获取函数为ExfAcquirePushLockExclusive内核函数。
例如,在MiMapViewOfSection函数中,利用windbg调试工具调试,可以得到如下字段:
Nt!MimapViewOfSection+Ox18d:
8409be27 c744241001000000 mov dword ptr[esp+10h],1
8409be2f 66ff8f86000000 dec word ptr[edi+86h]
8409be49 e8d8bce4ff call nt!ExfAcquirePushLockExclusive(83ee7b26)
其中,最后一行为第一推锁获取函数字段。
可见,在MiMapViewOfSection函数中,调用了一ExfAcquirePushLockExclusive第一推锁获取函数,从而将加载的动态链接库文件对应的进程资源进行锁定,使得其它线程再调用推锁获取函数时,例如,在后续串行执行的枚举进程虚拟内存内核函数调用ExfAcquirePushLockShared第二推锁获取函数时,需要一直等待,从而导致操作系统死机。举例来说,在调用枚举进程虚拟内存内核函数后,利用windbg调试工具调试,对枚举进程虚拟内存内核函数进行调试,可以得到如下ZwQueryVirtualMemory内核函数的内核实现字段:
Nt!NtQueryVirtualMemory+OX1f5:
840b1aaa 8bd0 mov edx,eax
840b1aaa 33c0 xor eax,eax
840b1abc e8f87ce5ff call nt!ExtAcquirePushLockShared(83f097b9)
840b1ac1 80868902000004 or byte ptr(ebx+289h],4
可见,在ZwQueryVirtualMemory内核函数中,需要调用第二推锁获取函数(例如,ExtAcquirePushLockShared内核函数),以将加载的动态链接库文件对应的进程资源进行锁定。这样,相当于调用了一互斥锁,因而,对于串行执行的流程,两次调用了一互斥锁锁定进程资源,从而造成后一串行的加载模块回调函数卡死,由于是在驱动模块内核层上运行的,加载模块回调函数卡死会导致操作系统的卡死,也就是现有获取进程路径的方法导致操作系统死机的原因。除此之外,在调用ZwQueryVirtualMemory内核函数或ZwProtectVirtualMemory内核函数或ZwReadVirtualMemory内核函数或ZwWriteVirtualMemory内核函数等内部调用推锁获取函数的函数时,也可能会出现互斥锁导致操作系统的卡死。
实施例一
图1为本发明的实施例一释放互斥锁的方法流程示意图,如图1所示,本实施例的方法可以包括:
步骤101,获取进程环境块中的进程资源锁信息,获取所述进程资源锁信息中的锁定字段;
本实施例中,作为一可选实施例,所述获取进程环境块中的进程资源锁信息包括:
A01,获取进程环境块地址;
作为一可选实施例,进程环境块(Process Environment Block,PEB)地址可通过调用ZwQueryInformationProcess函数查询ProcessBasicInformation进程基础类型信息,其中保存有PEB地址,名为PebBaseAddress,从而得到进程环境块PEB地址。
A02,根据所述进程环境块地址和预设偏移,得到所述进程资源锁信息的指针;
本实施例中,作为一可选实施例,预设偏移为0x100,将进程环境块地址加上预设偏移则得到进程资源锁信息的指针。
作为一可选实施例,进程资源锁信息为EX_PUSH_LOCK结构信息,一示意代码段如下:
EX_PUSH_LOCK
+0x000 locked 0y1
+0x000 Waiting 0y1
+0x000 Waking 0y1
A03,根据所述进程资源锁信息的指针,得到所述进程资源锁信息。
步骤102,判断所述进程资源锁信息中的锁定字段是否为锁定状态;
本实施例中,作为一可选实施例,所述判断所述进程资源锁信息中的锁定字段是否为锁定状态包括:
判断所述锁定字段是否为预设值,若所述锁定字段为预设值则确定所述锁定字段为锁定状态。
本实施例中,读取EX_PUSH_LOCK结构信息中的Locked锁定字段,如果Locked锁定字段为1,表明进程资源锁信息为锁定状态,如果Locked锁定字段为0,表明进程资源锁信息为非锁定状态。
步骤103,如果所述锁定字段为锁定状态,根据所述进程资源锁信息的指针更新所述锁定字段为非锁定状态。
本实施例中,作为一可选实施例,所述根据所述进程资源锁信息的指针更新所述锁定字段为非锁定状态包括:
以所述进程资源锁信息的指针为参数调用推锁释放函数,将所述锁定字段设置为非锁定状态。
本实施例中,通过主动调用ExfReleasePushLockExclusive推锁释放函数,将进程资源锁信息的指针为参数传入,从而可以释放该互斥锁。
由于在调用ZwQueryVirtualMemory内核函数或ZwQueryVirtualMemory内核函数或ZwProtectVirtualMemory内核函数或ZwReadVirtualMemory内核函数或ZwWriteVirtualMemory内核函数等内部调用推锁获取函数的函数之前,已经释放了互斥锁,从而可以使得该类内核函数能够调用推锁获取函数,将进程资源进行锁定,而不会出现互斥锁。
本发明实施例一释放互斥锁的方法,通过获取进程环境块中的进程资源锁信息,获取所述进程资源锁信息中的锁定字段;判断所述进程资源锁信息中的锁定字段是否为锁定状态;如果所述锁定字段为锁定状态,根据所述进程资源锁信息的指针更新所述锁定字段为非锁定状态。这样,从卡死的技术原理出发,了解卡死原因,通过将进程资源锁信息更新为非锁定状态,准确将进程资源的互斥锁释放,可以有效解决操作系统卡死的技术问题,有利于提升操作系统的安全防护效率以及安全性。
实施例二
图2为本发明的实施例二释放互斥锁的装置结构示意图,如图2所示,本实施例的装置可以包括:锁定字段获取模块21、锁定判断模块22以及状态更新模块23,其中,
锁定字段获取模块21,用于获取进程环境块中的进程资源锁信息,获取所述进程资源锁信息中的锁定字段;
本实施例中,作为一可选实施例,锁定字段获取模块21包括:地址获取单元、指针获取单元、进程资源锁信息获取单元以及锁定字段获取单元(图中未示出),其中,
地址获取单元,用于获取进程环境块地址;
指针获取单元,用于根据地址获取单元获取到的所述进程环境块地址和预设偏移,得到所述进程资源锁信息的指针;
进程资源锁信息获取单元,用于根据指针获取单元得到的所述进程资源锁信息的指针,得到所述进程资源锁信息;
锁定字段获取单元,用于在所述进程资源锁信息获取单元获取到的所述进程资源锁信息中获取锁定字段。
锁定判断模块22,用于判断锁定字段获取模块21获取到的所述进程资源锁信息中的锁定字段是否为锁定状态;
本实施例中,作为一可选实施例,锁定判断模块22包括:判断单元以及锁定状态确定单元(图中未示出),其中,
判断单元,用于判断锁定字段获取模块21获取到的所述锁定字段是否为预设值;
锁定状态确定单元,若判断单元判断出所述锁定字段为预设值则确定所述锁定字段为锁定状态。
状态更新模块23,用于如果锁定判断模块22判断出所述锁定字段为锁定状态,根据所述进程资源锁信息的指针更新所述锁定字段为非锁定状态。
本实施例中,作为一可选实施例,状态更新模块23具体用于:如果锁定判断模块22判断出所述锁定字段为锁定状态,以所述进程资源锁信息的指针为参数调用推锁释放函数,将所述锁定字段设置为非锁定状态。
本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,″计算机可读介质″可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。
在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本发明实施例还提供一种电子设备,所述电子设备包含前述任一实施例所述的装置。
图3为本发明电子设备一个实施例的结构示意图,可以实现本发明图1-2所示实施例的流程,如图3所示,上述电子设备可以包括:壳体31、处理器32、存储器33、电路板34和电源电路35,其中,电路板34安置在壳体31围成的空间内部,处理器32和存储器33设置在电路板34上;电源电路35,用于为上述电子设备的各个电路或器件供电;存储器33用于存储可执行程序代码;处理器32通过读取存储器33中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一实施例所述的释放互斥锁的方法。
处理器32对上述步骤的具体执行过程以及处理器32通过运行可执行程序代码来进一步执行的步骤,可以参见本发明图1-2所示实施例的描述,在此不再赘述。
该电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子设备。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
为了描述的方便,描述以上装置是以功能分为各种单元/模块分别描述。当然,在实施本发明时可以把各单元/模块的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本
发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (9)

1.一种释放互斥锁的方法,其特征在于,包括:
获取进程环境块中的进程资源锁信息,获取所述进程资源锁信息中的锁定字段;
判断所述进程资源锁信息中的锁定字段是否为锁定状态;
如果所述锁定字段为锁定状态,根据所述进程资源锁信息的指针更新所述锁定字段为非锁定状态。
2.根据权利要求1所述的释放互斥锁的方法,其特征在于,所述获取进程环境块中的进程资源锁信息包括:
获取进程环境块地址;
根据所述进程环境块地址和预设偏移,得到所述进程资源锁信息的指针;
根据所述进程资源锁信息的指针,得到所述进程资源锁信息。
3.根据权利要求1所述的释放互斥锁的方法,其特征在于,所述判断所述进程资源锁信息中的锁定字段是否为锁定状态包括:
判断所述锁定字段是否为预设值,若所述锁定字段为预设值则确定所述锁定字段为锁定状态。
4.根据权利要求1所述的释放互斥锁的方法,其特征在于,所述根据所述进程资源锁信息的指针更新所述锁定字段为非锁定状态包括:
以所述进程资源锁信息的指针为参数调用推锁释放函数,将所述锁定字段设置为非锁定状态。
5.一种释放互斥锁的装置,其特征在于,包括:锁定字段获取模块、锁定判断模块以及状态更新模块,其中,
锁定字段获取模块,用于获取进程环境块中的进程资源锁信息,获取所述进程资源锁信息中的锁定字段;
锁定判断模块,用于判断所述锁定字段获取模块获取到的所述进程资源锁信息中的锁定字段是否为锁定状态;
状态更新模块,用于如果所述锁定判断模块判断出所述锁定字段为锁定状态,根据所述进程资源锁信息的指针更新所述锁定字段为非锁定状态。
6.根据权利要求5所述的释放互斥锁的装置,其特征在于,所述锁定字段获取模块包括:地址获取单元、指针获取单元、进程资源锁信息获取单元以及锁定字段获取单元,其中,
地址获取单元,用于获取进程环境块地址;
指针获取单元,用于根据所述地址获取单元获取到的所述进程环境块地址和预设偏移,得到所述进程资源锁信息的指针;
进程资源锁信息获取单元,用于根据所述指针获取单元得到的所述进程资源锁信息的指针,得到所述进程资源锁信息;
锁定字段获取单元,用于在所述进程资源锁信息获取单元获取到的所述进程资源锁信息中获取锁定字段。
7.根据权利要求5所述的释放互斥锁的装置,其特征在于,所述锁定判断模块包括:判断单元以及锁定状态确定单元,其中,
判断单元,用于判断所述锁定字段获取模块获取到的所述锁定字段是否为预设值;
锁定状态确定单元,若所述判断单元判断出所述锁定字段为预设值则确定所述锁定字段为锁定状态。
8.根据权利要求5所述的释放互斥锁的装置,其特征在于,所述状态更新模块具体用于:
如果所述锁定判断模块判断出所述锁定字段为锁定状态,以所述进程资源锁信息的指针为参数调用推锁释放函数,将所述锁定字段设置为非锁定状态。
9.一种电子设备,其特征在于,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一权利要求1-4所述的释放互斥锁的方法。
CN201610561896.XA 2016-07-15 2016-07-15 一种释放互斥锁的方法、装置及电子设备 Active CN106250244B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610561896.XA CN106250244B (zh) 2016-07-15 2016-07-15 一种释放互斥锁的方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610561896.XA CN106250244B (zh) 2016-07-15 2016-07-15 一种释放互斥锁的方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN106250244A true CN106250244A (zh) 2016-12-21
CN106250244B CN106250244B (zh) 2019-12-24

Family

ID=57613877

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610561896.XA Active CN106250244B (zh) 2016-07-15 2016-07-15 一种释放互斥锁的方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN106250244B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106980544A (zh) * 2017-03-31 2017-07-25 北京奇艺世纪科技有限公司 一种线程同步方法及线程同步系统
CN109284179A (zh) * 2018-08-07 2019-01-29 北京达佳互联信息技术有限公司 解决应用程序卡顿的方法、装置、电子设备及存储介质
CN110058947A (zh) * 2019-04-26 2019-07-26 海光信息技术有限公司 缓存空间的独占解除方法及相关装置
CN110597557A (zh) * 2019-09-12 2019-12-20 腾讯科技(深圳)有限公司 一种系统信息获取方法、终端及介质
CN111432899A (zh) * 2017-09-19 2020-07-17 Bae系统控制有限公司 用于管理对共享端口的多核访问的系统和方法
CN112988365A (zh) * 2021-05-21 2021-06-18 北京国科环宇科技股份有限公司 一种线程管理方法、装置、设备及介质

Non-Patent Citations (10)

* Cited by examiner, † Cited by third party
Title
EDIMAX: ""讀書筆記之《Windows內核原理與實現》"", 《HTTPS://WWW.XUEBUYUAN.COM/ZH-HANT/1655048.HTML》 *
HJMARK2010: ""漫谈兼容内核之十:Windows的进程创建和映像装入"", 《HTTPS://WENKU.BAIDU.COM/VIEW/B6A3B70E7CD184254B3535B0.HTML》 *
IDEITHOFI: ""进程基本结构说明"", 《HTTPS://WENKU.BAIDU.COM/VIEW/7FF86011CC7931B765CE1584.HTML》 *
STUFFY: ""深入理解linux互斥锁(mutex)"", 《HTTPS://WWW.XUEBUYUAN.COM/1239829.HTML》 *
ZAZAZABO等: ""如何利用映像回调(PsSetLoadImageNotifyRoutine)来拦截dll加载"", 《HTTPS://BBS.PEDIY.COM/THREAD-208240.HTM》 *
不会写字的手: ""进程中dll模块的隐藏"", 《HTTPS://WENKU.BAIDU.COM/VIEW/EE7AF5F9FAB069DC50220112.HTML》 *
孙天泽: "《嵌入式Linux开发技术》", 30 April 2011 *
布伦登: "《ROOTKIT 系统灰色地带的潜伏者 原书第2版》", 31 October 2013 *
王雷: "《TCP/IP网络编程技术基础》", 31 March 2012 *
轩辕小聪: ""瑞星2011 Hookhelp.sys在LoadImageNotifyRoutine中的全局性Fast Mutex设置可能导致死锁(deadlock)"", 《HTTPS://BBS.PEDIY.COM/THREAD-131688.HTM》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106980544A (zh) * 2017-03-31 2017-07-25 北京奇艺世纪科技有限公司 一种线程同步方法及线程同步系统
CN111432899A (zh) * 2017-09-19 2020-07-17 Bae系统控制有限公司 用于管理对共享端口的多核访问的系统和方法
CN109284179A (zh) * 2018-08-07 2019-01-29 北京达佳互联信息技术有限公司 解决应用程序卡顿的方法、装置、电子设备及存储介质
CN110058947A (zh) * 2019-04-26 2019-07-26 海光信息技术有限公司 缓存空间的独占解除方法及相关装置
CN110597557A (zh) * 2019-09-12 2019-12-20 腾讯科技(深圳)有限公司 一种系统信息获取方法、终端及介质
CN112988365A (zh) * 2021-05-21 2021-06-18 北京国科环宇科技股份有限公司 一种线程管理方法、装置、设备及介质
CN112988365B (zh) * 2021-05-21 2021-09-14 北京国科环宇科技股份有限公司 一种线程管理方法、装置、设备及介质

Also Published As

Publication number Publication date
CN106250244B (zh) 2019-12-24

Similar Documents

Publication Publication Date Title
CN106250244A (zh) 一种释放互斥锁的方法、装置及电子设备
CN106201468A (zh) 一种截屏的处理方法、装置及电子设备
TW519651B (en) Embedded security device within a nonvolatile memory device
CN106716432A (zh) 启动前进程漏洞评估
US20040204003A1 (en) Method and apparatus for use in securing an electronic device such as a cell phone
CN102760080A (zh) 一种内存管理的方法和装置
US20100077199A1 (en) Systems And Methods Of Secure BIOS Update
CN106201698A (zh) 一种管理应用程序的方法、装置及电子设备
CN106203077A (zh) 一种复制信息的处理方法、装置及电子设备
CN106127031A (zh) 一种保护进程的方法、装置及电子设备
CN105893847A (zh) 一种保护安全防护应用程序文件的方法、装置及电子设备
CN106203092A (zh) 一种拦截恶意程序关机的方法、装置及电子设备
CN106126282A (zh) 一种动态链接库文件的注入方法、装置及终端设备
CN106096418A (zh) 基于SELinux的开机安全等级选择方法、装置及终端设备
CN106687979A (zh) 交叉视图恶意软件检测
CN110147674A (zh) 一种计费控制单元的可信系统环境构建方法及装置
CN106991328A (zh) 一种基于动态内存指纹异常分析的漏洞利用检测识别方法
CN202652255U (zh) 一种sql注入安全防护系统
CN106203119A (zh) 隐藏光标的处理方法、装置及电子设备
CN106203114A (zh) 一种应用程序的防护方法、装置及电子设备
US20180226136A1 (en) System management mode test operations
CN105893846A (zh) 一种保护目标应用程序的方法、装置及电子设备
CN107368738B (zh) 一种智能设备的防Root方法及装置
US7784063B2 (en) Method and apparatus for system caller authentication
CN106022109A (zh) 一种防止线程暂停的方法、装置及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20190122

Address after: 519031 Room 105-53811, No. 6 Baohua Road, Hengqin New District, Zhuhai City, Guangdong Province

Applicant after: Zhuhai Leopard Technology Co.,Ltd.

Address before: 100085 East District, Second Floor, 33 Xiaoying West Road, Haidian District, Beijing

Applicant before: BEIJING KINGSOFT INTERNET SECURITY SOFTWARE Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant