TWI817062B - 使用進程資訊來檢測網頁後門的方法及系統 - Google Patents

使用進程資訊來檢測網頁後門的方法及系統 Download PDF

Info

Publication number
TWI817062B
TWI817062B TW109140281A TW109140281A TWI817062B TW I817062 B TWI817062 B TW I817062B TW 109140281 A TW109140281 A TW 109140281A TW 109140281 A TW109140281 A TW 109140281A TW I817062 B TWI817062 B TW I817062B
Authority
TW
Taiwan
Prior art keywords
mentioned
executed
backdoor
web page
information
Prior art date
Application number
TW109140281A
Other languages
English (en)
Other versions
TW202121211A (zh
Inventor
安浚
姜鳳求
Original Assignee
南韓商納寶雲端股份有限公司
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 南韓商納寶雲端股份有限公司 filed Critical 南韓商納寶雲端股份有限公司
Publication of TW202121211A publication Critical patent/TW202121211A/zh
Application granted granted Critical
Publication of TWI817062B publication Critical patent/TWI817062B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3017Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is implementing multitasking
    • 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/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • 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/556Detecting local intrusion or implementing counter-measures involving covert channels, i.e. data leakage between processes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/805Real-time

Abstract

本發明提供網頁後門檢測方法,收集與在提供網路服務的伺服器中執行的進程有關的進程資訊,基於所收集的進程資訊來判斷對應進程是否通過網頁後門執行,由此檢測網頁後門。

Description

使用進程資訊來檢測網頁後門的方法及系統
本發明涉及檢測網頁後門的方法及系統,上述網頁後門攻擊提供網路服務的伺服器,更詳細地,涉及基於與在提供網路服務的伺服器中執行的進程有關的執行資訊來檢測網頁後門的方法及系統。
網頁後門(web shell)是指惡意用戶利用伺服器的上傳漏洞來對伺服器下達指令的代碼。網頁後門可通過伺服器腳本(jsp、php、asp等)生成,上述腳本通過伺服器的漏洞上傳。如駭客的惡意用戶可通過網頁後門避開伺服器的安保系統,在沒有額外的認證的情況下,可以訪問伺服器並可對伺服器下達指令。
在上述網頁後門的情況下,若被上傳到伺服器,則非常危險,因此,需要迅速被檢測。因此,需要在將對於伺服器的負荷最小化,與網頁後門對應的檔被加密或代碼混淆的情況下,也可以迅速且準確地檢測網頁後門的方法及系統。
另一方面,在韓國授權專利第10-0655492號(授權日期2006年12月08日)揭示了利用搜尋引擎的網路伺服器漏洞檢測系統及方法。
上述說明的資訊僅用於説明理解,可包含不構成現有技術的一部分的內容,現有技術可能不包括向本發明所屬技術領域的普通技術人員提供的內容。
[發明所欲解決之問題]
本發明一實施例可提供如下的網頁後門檢測方法及用於檢測網頁後門的電腦系統,即,收集與在提供網路服務的伺服器中執行的進程有關的資訊,基於所收集的進程資訊,判斷對應進程是否通過網頁後門執行,由此對網頁後門進行檢測。
本發明一實施例可提供如下的方法,即,在與和執行中的進程有關的進程資訊相對應的資料集包含如使用通常不使用的指令的已設定的模式的情況下,判斷為通過網路執行對應進程,由此,即使不分析伺服器內的檔的內容,也可以準確地即時檢測出網頁後門。 [解決問題之技術手段]
本發明的一實施例提供網頁後門檢測方法,上述網頁後門檢測方法通過電腦系統執行,上述網頁後門檢測方法包括:收集步驟,收集與在提供網路服務的伺服器中執行的進程有關的進程資訊;以及判斷步驟,基於所收集的上述進程資訊來判斷上述進程是否通過網頁後門執行。
上述網頁後門檢測方法還可包括如下的通知步驟,即,若判斷為上述進程通過網頁後門執行,則向上述伺服器的管理人員通知檢測到網頁後門。
上述收集步驟可包括生成步驟,基於所收集的上述進程資訊來生成與上述進程有關的資料集,上述判斷步驟包括判斷所生成的上述資料集是否包含已設定的模式的步驟,若所生成的上述資料集包含已設定的模式,則判斷為上述進程通過網頁後門執行。
上述收集步驟可包括:收集與上述進程有關的進程標識(Process ID,PID)的步驟;以及基於所收集的上述進程標識來收集與上述進程有關的追加進程資訊的步驟,上述追加進程資訊包含上述進程的名字、與上述進程關聯執行的指令(cmdline)、執行上述進程的系統帳戶資訊、與上述進程有關的父進程的進程標識(PPID)、上述父進程的名字、與上述父進程關聯執行的指令(cmdline)及執行上述父進程的系統帳戶資訊中的至少一種,上述資料集包含上述進程標識及上述追加進程資訊。
判斷所生成的上述資料集是否包含已設定的模式的步驟可包括如下的步驟:判斷執行上述進程的系統帳戶資訊是否與執行上述網路服務的系統帳戶資訊(owner)相同或上述進程的父進程是否通過上述網路服務執行;以及在執行上述進程的系統帳戶資訊與執行上述網路服務的系統帳戶資訊相同或者上述進程的父進程通過上述網路服務執行的情況下,判斷與上述進程關聯執行的指令是否包含非常規指令。
在上述判斷步驟中,在判斷為與上述進程關聯執行的指令包含非常規指令的情況下,可判斷為上述進程通過網頁後門執行。
上述非常規指令作為已設定的非常規指令,可包含ps、ls、cd、cat及find中的至少一種。
在與上述進程關聯執行的指令包含除已設定的常規指令外的指令的情況下,可判斷為與上述進程關聯執行的指令包含非常規指令。
若執行上述進程的父進程的系統帳戶資訊與執行上述網路服務的系統帳戶資訊相同,則可判斷為上述進程的父進程通過上述網路服務執行。
若執行上述進程的父進程的系統帳戶資訊為apache或nobody,則可判斷為上述進程的父進程通過上述網路服務執行。
所生成的上述資料集可被添加在待機佇列(queue),針對向上述待機佇列添加的資料集,依次判斷所添加的上述資料集是否包含上述已設定的模式。
上述追加進程資訊可包含上述進程的名字、與上述進程關聯執行的指令(cmdline)、執行上述進程的系統帳戶資訊、與上述進程有關的父進程的進程標識(PPID)、上述父進程的名字、與上述父進程關聯執行的指令(cmdline)及執行上述父進程的系統帳戶資訊中的至少兩種,上述已設定的模式為對於上述追加進程資訊的已設定的模式。
根據另一實施例,本發明提供電腦系統,上述電腦系統檢測網頁後門,上述電腦系統包括執行電腦可讀指令的至少一個處理器,上述至少一個處理器收集與在提供網路服務的伺服器中執行的進程有關的進程資訊,基於所收集的上述進程資訊,判斷上述進程是否通過網頁後門執行。
上述電腦系統還可包括通知部,若判斷為上述進程通過網頁後門執行,則向上述伺服器的管理人員通知檢測到網頁後門。
上述至少一個處理器可基於所收集的上述資訊來生成與上述進程有關的資料集,判斷所生成的上述資料集是否包含已設定的模式,若所生成的上述資料集包含已設定的模式,則判斷為上述進程通過網頁後門執行。
上述至少一個處理器可判斷執行上述進程的系統帳戶資訊是否與執行上述網路服務的系統帳戶資訊(owner)相同或者上述進程的父進程是否通過上述網路服務執行,在執行上述進程的系統帳戶資訊與執行上述網路服務的系統帳戶資訊相同或者上述進程的父進程通過上述網路服務執行的情況下,判斷與上述進程關聯執行的指令是否包含非常規指令,在判斷為與上述進程關聯執行的指令包含非常規指令的情況下,可判斷為上述進程通過網頁後門執行。 [對照先前技術之功效]
可利用針對執行中的進程收集的進程資訊來檢測網頁後門,由此,即使不分析伺服器內的檔的內容,也可以即時準確地檢測到網頁後門,可將對於伺服器的負荷最小化。
基於通過網頁後門執行的進程的行為來檢測網頁後門,而並非基於與網頁後門相對應的檔的內容,由此,在與網頁後門相對應的檔被加密或代碼混淆,或者在其內容改變的情況下,也可以準確地檢測出網頁後門。
以下,參照附圖,詳細說明本發明的實施例。
圖1示出一實施例的基於與在提供網路服務的伺服器中執行的進程有關的進程資訊來檢測網頁後門的方法。
圖1中示出提供網路服務的伺服器110(網路服務提供伺服器)、管理伺服器110的管理人員130(管理人員使用的管理人員終端)及檢測攻擊伺服器110的網頁後門120的電腦系統100(網頁後門檢測系統)的工作。
伺服器110可以為提供網路服務的網路服務器。網頁後門120可以為如駭客的惡意用戶能夠利用伺服器110的漏洞來對伺服器110下達指令的代碼。電腦系統100可以為用於檢測向上述伺服器110上傳的網頁後門120的裝置。
電腦系統100可收集在提供網路服務的伺服器110中執行的多個進程有關的進程資訊(即,與進程的執行有關的資訊),基於所收集的進程資訊,可以檢測出在伺服器110中是否存在網頁後門120。並且,電腦系統100在檢測到網頁後門120的情況下,網頁後門120可向伺服器110的管理人員130通知檢測到的事實。
以往,為了檢測網頁後門120而搜尋在網頁後門120內是否包含特定字串。例如,搜尋在資料包內檢測到特定字串的情況。或者,為了檢測網頁後門120而確認重要的資訊是否從資料包內流出。
在這種情況下,以伺服器110內的所有檔為物件進行字串搜尋,因此,伺服器110側的負荷將增加。在實施例中,並非搜尋檔內的字串來檢測網頁後門120,而是可基於與所執行的進程有關的進程資訊來檢測網頁後門120,從而可以減少伺服器110側的負荷。
並且,以往,在搜尋文字內的字串的過程中,考慮到所需要的伺服器110的負荷負擔,網頁後門120的檢測需要經過長週期進行。但是,在實施例中,可基於與在所執行的進程有關的進程資訊來檢測網頁後門120,從而可以即時檢測網頁後門120。
並且,通過實施例,在與網頁後門120相對應的檔被加密或代碼混淆的情況下,無需確認與網頁後門120相對應的檔的內容,而是可基於與所執行的進程有關的進程資訊(即,進程的行為)來檢測網頁後門120。
並且,通過實施例,無需確認與網頁後門120相對應的檔的內容,因此,針對與網頁後門120相對應的檔的字串改變(即,字串的模式改變)的新的網頁後門120,也可以即可且準確地進行檢測。
並且,以往,為了檢測新的網頁後門120而需要執行如下的步驟才可檢測網頁後門120:步驟1),確保需要檢測的網頁後門120;步驟2),分析所確保的網頁後門120;步驟3),以所分析的資訊為基礎來生成對於網頁後門120的模式;以及步驟4),向產品反映(更新)上述模式,因此,檢測新的網頁後門120為止將需要花費很長的時間。基於此,在實施例中,可使用與即時收集的進程有關的進程資訊(進程執行資訊)來檢測網頁後門120,因此,針對新的網頁後門120,也可以即可且準確地進行檢測。
參照後述的圖2至圖5,更加詳細地說明電腦系統100收集與在伺服器110中執行的多個進程有關的進程資訊的具體方法和基於所收集的進程資訊來檢測網頁後門120的具體方法。
圖2示出一實施例的管理檢測網頁後門的電腦系統、提供網路服務的伺服器及提供網路服務的伺服器的管理人員終端。
圖2中示出參照圖1說明的提供網路服務的伺服器110、管理伺服器110的管理人員的管理人員終端130及檢測攻擊伺服器110的網頁後門120的電腦系統100。
伺服器110可以為提供至少一個網路服務的網路服務器。網路服務可以為根據未圖示的用戶端的請求或用戶端的訪問向用戶端側提供的基於網路的服務。伺服器110可體現為至少一個電腦裝置。
伺服器110可由管理人員通過管理人員終端130進行管理。管理人員可以為擔當伺服器110的運營及安保的擔當人員。管理人員終端130可以為管理人員為了運營及管理伺服器110而使用的管理人員終端130。例如,管理人員終端130可以為智慧型手機、個人電腦(PC,personal computer)、筆記型電腦(laptop computer)、平板電腦(tablet)、物聯網(Internet Of Things)設備或可穿戴電腦(wearable computer)等的裝置,或者附屬於其他伺服器110的電腦裝置或伺服器110的一部分。
電腦系統100可以為檢測攻擊伺服器110或威脅伺服器110的安全的網頁後門120的裝置。電腦系統100可體現為至少一個電腦裝置。電腦系統100可體現為與電腦系統100單獨的(即,伺服器110外部的)電腦裝置或伺服器,或者,與所示不同,可體現為伺服器110的一部分。換句話說,電腦系統100可以為包括在伺服器110的裝置。
電腦系統100可針對在提供網路服務的伺服器110中執行的多個進程(即,與各個進程有關的)進程資訊。進程資訊可包含與進程的執行有關的資訊。電腦系統100可以使用所收集的上述進程資訊來判斷與進程資訊有關的進程是否通過網頁後門120執行,由此可以檢測網頁後門120。
電腦系統100可包括至少一個電腦裝置。
如圖所示,電腦系統100可包括記憶體230、處理器220、通信部210及輸入輸出介面240。
記憶體230可以為電腦可讀記錄介質,可包括如隨機存取記憶體(RAM,random access memory)、唯讀記憶體(ROM,read only memory)及硬碟驅動器的永久性大容量記錄裝置(permanent mass storage device)。其中,唯讀記憶體和永久性大容量記錄裝置可以與記憶體230來作為額外的永久儲存裝置包括。並且,在記憶體230可儲存作業系統和至少一個程式碼。上述軟體結構要素可從與記憶體230單獨的電腦可讀記錄介質裝載。上述單獨的電腦可讀記錄介質可包括軟碟機、磁片、磁帶、DVD/CD-ROM驅動器、儲存卡等的電腦可讀記錄介質。在另一實施例中,軟體結構要素可通過通信部210向記憶體230裝載,而並非通過電腦可讀記錄介質。
處理器220可執行基本的算術、邏輯及輸入輸出計算,由此可以處理電腦程式的指令。指令可通過記憶體230或通信部210向處理器220提供。例如,處理器220可根據向記憶體230裝載的程式碼執行所接收的指令。通過基於上述處理器220的工作,電腦系統100可收集與在提供網路服務的伺服器110中執行的進程有關的進程資訊,可使用所收集的進程資訊來判斷與進程資訊有關的進程是否通過網頁後門120執行。
用於執行進程資訊的收集及網頁後門120的檢測未圖示的處理器220的結構可作為處理器220的一部分體現為軟體和/或硬體模組,可呈現通過處理器體現的功能(功能塊)。
通信部210可以為使電腦系統100與其他裝置(例如,伺服器110、管理人員終端130或其他伺服器或其他使用者終端等)進行通信的結構。換句話說,通信部210可以為對其他裝置傳送或從其他裝置接收資料和/或資訊的如電腦系統100的體現、資料匯流排、網路介面卡、網路介面晶片及網路介面埠等的硬體模組或如網路裝置驅動程式(driver)或網路程式的軟體模組。
通信部210可包括通知部,在通過進程資訊,判斷為進程通過網頁後門120執行的情況下,可向伺服器110的管理人員(即,管理人員終端130)通知檢測到網頁後門120。
輸入輸出介面240可以為用於與如鍵盤或滑鼠等的輸入裝置及如顯示器或揚聲器的輸出裝置的介面的單元。可根據實施例,電腦系統100可以不包括上述輸入輸出介面240。
並且,根據實施例,電腦系統100還可包括比所示的結構要素更多的結構要素。
以上,參照圖1說明的技術特徵可直接適用於圖2,因此將省略重複說明。
在後述的詳細說明中,為了說明的便利,通過電腦系統100的結構(例如,處理器220)執行的工作可通過以電腦系統100執行的工作進行說明。
並且,如上所述,電腦系統100可體現為伺服器110的一部分,通過電腦系統100或電腦系統100的結構執行的工作也可通過伺服器110執行。對此,將省略重複說明。
圖3為示出一實施例的基於與提供網路服務的伺服器中執行的進程有關的進程資訊來檢測網頁後門的方法的流程圖。
在步驟310中,電腦系統100可收集在提供網路服務的伺服器110中執行的進程有關的進程資訊。在伺服器110執行多個進程的情況下,電腦系統100可收集與多個進程有關的進程資訊。進程資訊作為與進程的執行有關的資訊,可被命名為進程執行資訊。
在步驟310中,進程資訊的收集可使用進程通知(process notify)執行。上述進程資訊的收集為了伺服器110的運作而收集進程資訊,或者為了檢測病毒而收集進程資訊。因此,實施例的網頁後門120檢測可通過用於伺服器110的運作的進程資訊的收集及用於檢測病毒的進程資訊的收集執行。
在步驟320中,電腦系統100可基於所收集的進程資訊來判斷與所收集的進程資訊有關的進程是否通過網頁後門120執行。判斷為與所收集的進程資訊有關的進程通過網頁後門120執行,由此,電腦系統100可檢測網頁後門120。因此,電腦系統100在不確認與網頁後門120相對應的檔的內容或儲存於伺服器110的檔的字串的情況下也可以檢測網頁後門120。並且,電腦系統100與和網頁後門120相對應的檔的加密、代碼混淆、改變無關,可以準確地檢測網頁後門120。並且,電腦系統100可基於與所執行的進程有關的進程資訊來檢測網頁後門120,由此可即時檢測網頁後門120。
在步驟330中,若判斷為與所收集的進程資訊有關的進程通過網頁後門120執行,則電腦系統100可向伺服器110的管理人員(即,管理人員終端130)通知檢測到網頁後門120。通過這種通知,伺服器110的管理人員可以把握對伺服器110產生威脅的網頁後門120的存在,並可以採取對此的措施。管理人員可從電腦系統100即時接收基於網頁後門120的供給、侵害情況。這種通知可通過通知部對管理人員終端130執行。
以下,更加詳細說明上述步驟310中收集進程資訊的方法。
在步驟312中,電腦系統100可收集與在提供網路服務器的伺服器110中執行的進程有關的進程標識(Process ID,PID)。
在步驟314中,電腦系統100可基於所收集的進程標識來收集與對應進程有關的追加進程資訊。所收集的追加進程資訊可包含對應進程的名字、與對應進程關聯執行的指令(cmdline)、執行對應進程的系統帳戶資訊(owner)、與對應進程有關的父進程的進程標識(PPID)(即,父進程標識)、父進程的名字、與父進程關聯執行的指令及執行父進程的系統帳戶資訊(owner)中的至少一種。父進程表示進程的上位進程。父進程並不侷限於一進程的直接上位進程,可包括對應上位進程的上位進程或其以上的上位進程。
在步驟316中,電腦系統100可基於所收集的進程資訊來生成與進程有關的資料集。所生成的資料集為所收集的進程資訊被加工的資料,以符合判斷進程是否通過網頁後門120執行。所生成的資料集可包含上述步驟312中收集的進程標識及步驟314中收集的追加進程資訊。
電腦系統100可分析基於所收集的進程資訊的資料集,由此可以判斷與進程資訊有關的進程是否通過網頁後門120執行。
以下,更加詳細說明判斷在上述步驟320中的與進程資訊有關的進程是否通過網頁後門120執行的方法。
在步驟322中,電腦系統100可判斷步驟316中生成的資料集是否包含已設定的模式。已設定的模式可表示與對應資料集有關的進程通過網頁後門120執行。已設定的模式可由電腦系統100的使用者(或開發人員)或伺服器110的管理人員已設定。在步驟316中生成的資料集與這種已設定的模式進行比較,由此,可判斷與對應資料集有關的進程是否通過網頁後門120執行。
在步驟324中,若在步驟316中執行的資料包含已設定的模式,則集電腦系統100可判斷為與對應資料集有關的進程通過網頁後門120執行。
並且,在步驟326中,若在步驟316中生成的資料集不包含已設定的模式,則電腦系統100可判斷為與對應資料集有關的進程通過網頁後門120。
已設定的模式可以為對於追加進程資訊的已設定的模式。例如,已設定的模式可被設定為追加進程資訊可包含的2種以上的資訊組合的模式。換句話說,追加進程資訊可包含進程的名字、與進程關聯執行的指令(cmdline)、執行進程的系統帳戶資訊、與進程有關的父進程的進程標識(PPID)、父進程的名字、與父親常關聯執行的指令及執行父進程的系統帳戶資訊中的至少2種,已設定的模式可以為對於上述追加進程資訊的已設定的模式,可以為追加進程資訊所包含的2種以上的資訊組合的模式。
參照圖4,更加詳細說明根據所生成的資料集是否包含已設定的模式來檢測網頁後門120的具體方法。
另一方面,在步驟316中生成的資料集可被添加在待機佇列(queue)。在步驟322中,可針對向待機佇列添加的資料集,依次判斷對應資料集是否包含已設定的模式。因此,在與多個進程有關的多個資料集被添加在待機佇列的情況下,可依次執行步驟322中的判斷。即,在判斷一個進程是否通過網頁後門120執行之後,針對下一進程,可判斷對應下一進程是否通過網頁後門120執行。
以上,參照圖1及圖2說明的技術特徵可直接適用於圖3,因此將省略重複說明。
圖4為示出一實施例的根據進程資訊所包含的模式判斷對應進程是否通過網頁後門執行的方法的流程圖。
在步驟410中,電腦系統100可判斷與所收集的進程資訊(即,所生成資料集)有關的進程或其父進程是否與伺服器110所提供的網路服務有關。例如,電腦系統100可判斷執行與所收集的進程資訊有關的進程的系統帳戶資訊(owner)是否與執行伺服器110所提供的網路服務的系統帳戶資訊相同,或者上述進程的父進程是否通過上述網路服務執行。若執行進程的系統帳戶資訊與執行伺服器110所提供的網路服務的系統帳戶資訊不同,對應進程的父進程並非通過網路服務執行,則電腦系統100可判斷為上述進程並非通過網頁後門120執行。換句話說,若與所收集的進程資訊有關的進程及其父進程並不與伺服器110所提供的網路服務有關,則可判斷為對應進程並非通過網頁後門120執行。
在步驟420中,若所收集的進程資訊有關的進程及其父進程與伺服器110所提供的網路服務有關(例如,執行與所收集的進程資訊有關的進程的系統帳戶資訊與執行伺服器110所提供的網路服務的系統帳戶資訊相同,或者對應進程的父進程通過上述網路服務執行),則電腦系統100可判斷與上述進程關聯執行的指令是否包含非常規指令。
若在電腦系統100中與上述進程關聯執行的指令不包含非常規指令,則電腦系統100可判斷為對應進程通過網頁後門120執行。
另一方面,在判斷為與上述進程關聯執行的指令包含非常規指令的情況下,則電腦系統100可判斷為對應進程通過網頁後門120執行。
作為一實施例,在與所收集的進程資訊有關的進程的父進程為網路服務(或是父進程通過網路服務執行的進程),上述進程執行不常規執行的指令的情況下,可判斷為對應進程通過網頁後門120執行。
並且,在執行所收集的進程資訊有關的進程的系統帳戶資訊(owner)與執行網路服務的系統帳戶資訊相同,上述進程執行不常規執行的指令的情況下,可判斷為對應進程通過網頁後門120執行。
上述非常規指令作為已設定的非常規指令,例如,可包含ps、ls、cd、cat及find中的至少一種。非常規指令可以為伺服器110所提供的網路服務所執行的進程不常規執行的指令。非常規指令可由電腦系統100的使用者(或開發人員)或伺服器110的管理人員設定。
或者,在與進程關聯執行的指令包含除已設定的常規指令外的指令的情況下,電腦系統100可判斷為與上述進程關聯執行的指令包含非常規指令。換句話說,代替非常規指令,可以預先設定常規指令(網路服務所執行的進程常規執行的指令)。若通過進程執行其他指令,而並非執行上述常規指令,則可判斷為對應進程包含非常規指令。
另一方面,在判斷進程的父進程是否通過網路服務執行的過程中,可比較執行父進程的系統帳戶資訊與執行網路服務的系統帳戶資訊。若執行進程的父進程的系統帳戶資訊與執行系統帳戶資訊網路服務的系統帳戶資訊相同,則可判斷為上述進程的父進程通過上述網路服務執行(或與網路服務相對應)。
或者,若執行進程的父進程的系統帳戶資訊為apache或nobody,則可判斷為上述進程的父進程通過上述網路服務執行(或與網路服務相對應)。apache或nobody可以為執行網路服務的系統帳戶資訊(owner)的例示。
如上所述,已設定的模式可以為「執行進程的系統帳戶資訊」及「與進程關聯執行的指令」組合的模式。或者,已設定的模式可以為「執行進程的父進程的系統帳戶資訊」及「與進程關聯執行的指令」組合的模式。
因此,實施例的電腦系統100預先設定執行網頁後門120的進程的工作或當執行網頁後門120時所發生的情況相對應的多個模式,在所收集的進程模式中檢測到上述已設定的模式的情況下,可以檢測網頁後門120。
在實施例中,與網頁後門120相對應的已設定的模式可基於在執行網頁後門120的情況下發生的下面兩種特性來設定。首先,1)網頁後門120通過伺服器110提供的網路服務執行,因此,當執行通過網頁後門120執行的進程時,可作為網路服務的子進程執行,或者可通過與網路服務相同的系統帳戶執行。接著,2)在執行網頁後門120的情況下,在網路服務(與網路服務有關的進程)中可執行不常規執行的指令。在組合上述1)及2)特性來執行除在與網路服務相對應的進程或與其下位進程相對應的進程中常規執行的指令之外的非常規指令的情況下,可判斷為執行網頁後門120,並可設定與此對應的多個模式。
另一方面,根據實施例,代替上述系統帳戶(系統帳戶資訊),處理器的名字也可用於步驟410的判斷。例如,步驟410也可判斷與進程的名字是否與好網路服務有關的進程的名字相同,或者進程的父進程的名字是否與和網路服務有關的進程的名字有關。
以上,參照圖1至圖3說明的技術特徵可以直接適用於圖4,因此,將省略重複說明。
圖5為示出一實施例的即時收集與進程有關的進程資訊的方法和使用所收集的進程資訊來檢測網頁後門的方法的流程圖。
所示的流程圖510示出針對在電腦系統100的伺服器110中執行的進行即時收集進程執行資訊的功能的執行。
電腦系統100可即時收集與在伺服器110中執行的進程有關的進程資訊(步驟512),基於所收集的進程資訊來生成與進程相對應的資料集(步驟514)。在流程圖530中例示在資料集中所包含的進程資訊。除進程標識之外的資料可以與上述追加進程資訊相對應。電腦系統100可以將所生成的資料集添加在佇列(queue)(步驟516),可以結束或反復進行進程資訊收集功能(步驟518)。
所示的流程圖520示出判斷在電腦系統100的伺服器110是否存在危險網頁後門120的功能的執行。
電腦系統100可以判斷佇列中是否存在資料集(步驟522)。若在佇列中存在資料集,則電腦系統100可以待機至向佇列添加資料集(步驟524)。若在佇列中存在資料集,則電腦系統100可以判斷為資料集中存在已設定的模式(網頁後門模式)(步驟526)。若在資料集中不存在已設定的模式,則電腦系統100可以繼續判斷下一資料集,若在資料集中存在已設定的模式,則可檢測網頁後門120的存在。若檢測到網頁後門120的存在,則電腦系統100可以向伺服器110的管理人員即時通知網頁後門120的侵害、威脅(步驟528)。
以上,參照圖1至圖4,對於上述技術特徵的說明也可以直接適用於圖5,因此,將省略重複說明。
以上說明的系統或裝置可體現為硬體結構要素、軟體結構要素和/或硬體結構要素及軟體結構要素的組合。例如,在實施例中說明的裝置及結構要素可利用如處理器、控制器、算數邏輯單位(ALU,arithmetic logic unit)、數位訊號處理器(digital signal processor)、微型電腦、現場可程式邏輯閘陣列(FPGA,field programmable gate array)、可程式設計邏輯單元(PLU,programmable logic unit)、微處理器或可執行並回應指令(instruction)的其他裝置的一個以上的常用電腦或特殊目的電腦體現。處理裝置可以執行作業系統(OS)及在上述作業系統上執行的一個以上的軟體應用。並且,處理裝置回應軟體的執行來訪問、儲存、操作、處理及生成資料。為了方便理解,說明了僅使用一個處理裝置的情況,本發明所屬技術領域的普通技術人員可以知道處理裝置可包括多個處理要素(processing element)和/或多種類型的處理要素。例如,處理裝置可包括多個處理器或一個處理器及一個控制器。並且,也可以是如並行處理器(parallel processor)的其他處理結構(processing configuration)。
軟體可包含電腦程式(computer program)、代碼(code)、指令(instruction)或它們中的一種以上的組合,以按需要進行工作的方式構成處理裝置或對獨立或結合性(collectively)地處理裝置下達指令。軟體和/或資料為了通過處理裝置解釋或者為了向處理裝置提供指令或資料而可以具體化(embody)在任何類型的機械、結構要素(component)、物理裝置、虛擬裝置(virtual equipment)、電腦儲存介質或裝置。軟體分散在通過網路連接的電腦系統上,從而可通過分散的方法儲存或執行。軟體及資料可儲存於一個以上的電腦可讀記錄介質。
實施例的方法體現為可通過多種電腦單元執行的程式指令形態來記錄在電腦可讀介質。在此情況下,介質可以繼續儲存能夠通過電腦執行的程式,或者為了執行或下載而暫時儲存。並且,介質可以為單一或多個硬體結合的形態的多種記錄單元或儲存單元,而並不侷限於與一種電腦系統直接連接的介質,而可以在網路上分散存在。作為介質的例示,包括如硬碟、軟碟及磁片的磁介質、如CD-ROM及DVD的光記錄介質、如光磁軟碟(floptical disk)的磁光介質(magneto-optical medium)及如唯讀記憶體、隨機存取記憶體、快閃記憶體等,從而可以儲存程式指令。並且,作為其他介質的例示,也可以為流通應用的應用商城或供給或流通其他多種軟體的網頁、在伺服器等中管理的記錄介質或儲存介質。
如上所述,雖然通過限定的實施例和附圖說明了多個實施例,只要是本發明所屬技術領域的普通技術人員,可以從上述記載進行多種修改及變形。例如,即使所說明的技術與所說明的方法不同的循序執行和/或所說明的系統、結構、裝置、電路等的結構要素可以與所說明的方法不同的形態結合或組合,或者通過其他結構要素或等同技術方案代替或置換,也可以實現適當結果。
因此,其他實例、其他實施例及與發明要求保護範圍等同的內容也屬於後述的發明要求保護範圍內。
100:電腦系統 110:伺服器 120:網頁後門 130:管理人員終端 210:通信部 220:處理器 230:記憶體 240:輸入輸出介面 310、320、330:步驟 312、314、316:步驟 322、324、326:步驟 410、420:步驟 510:流程圖 520:流程圖 530:流程圖 512、514、516、518:步驟 522、524、526、528:步驟
圖1示出一實施例的基於與在提供網路服務的伺服器中執行的進程有關的進程資訊來檢測網頁後門的方法。 圖2示出一實施例的管理檢測網頁後門的電腦系統、提供網路服務的伺服器及提供網路服務的伺服器的管理人員終端。 圖3為示出一實施例的基於與提供網路服務的伺服器中執行的進程有關的進程資訊來檢測網頁後門的方法的流程圖。 圖4為示出一實施例的根據進程資訊所包含的模式判斷對應進程是否通過網頁後門執行的方法的流程圖。 圖5為示出一實施例的即時收集與進程有關的進程資訊的方法和使用所收集的進程資訊來檢測網頁後門的方法的流程圖。
100:電腦系統
110:伺服器
120:網頁後門
130:管理人員終端

Claims (15)

  1. 一種通過電腦系統執行之網頁後門檢測方法,其中,包括:收集步驟,實時收集與在提供網路服務的伺服器中執行的進程有關的進程資訊;以及判斷步驟,在不分析伺服器的文件內容的情況下,基於所收集的上述進程資訊來判斷上述進程是否通過網頁後門執行;其中,上述收集步驟包括生成步驟,基於所收集的上述進程資訊來生成與上述進程有關的資料集,上述判斷步驟包括判斷所生成的上述資料集是否包含已設定的模式的步驟,若所生成的上述資料集包含已設定的模式,則判斷為上述進程通過網頁後門執行。
  2. 如請求項1之網頁後門檢測方法,其中,還包括如下的通知步驟,即,若判斷為上述進程通過網頁後門執行,則向上述伺服器的管理人員通知檢測到網頁後門。
  3. 如請求項1之網頁後門檢測方法,其中,上述收集步驟包括:收集與上述進程有關的進程標識(PID)的步驟;以及基於所收集的上述進程標識來收集與上述進程有關的追加進程資訊的步驟,上述追加進程資訊包含上述進程的名字、與上述進程關聯執行的指令(cmdline)、執行上述進程的系統帳戶資訊、與上述進程有關的父進程的進程 標識(PPID)、上述父進程的名字、與上述父進程關聯執行的指令(cmdline)及執行上述父進程的系統帳戶資訊中的至少一種,上述資料集包含上述進程標識及上述追加進程資訊。
  4. 如請求項1之網頁後門檢測方法,其中,判斷所生成的上述資料集是否包含已設定的模式的步驟包括如下的步驟:判斷執行上述進程的系統帳戶資訊(owner)是否與執行上述網路服務的系統帳戶資訊相同或上述進程的父進程是否通過上述網路服務執行;以及在執行上述進程的系統帳戶資訊與執行上述網路服務的系統帳戶資訊相同或者上述進程的父進程通過上述網路服務執行的情況下,判斷與上述進程關聯執行的指令是否包含非常規指令。
  5. 如請求項4之網頁後門檢測方法,其中,在上述判斷步驟中,在判斷為與上述進程關聯執行的指令包含非常規指令的情況下,判斷為上述進程通過網頁後門執行。
  6. 如請求項5之網頁後門檢測方法,其中,上述非常規指令作為已設定的非常規指令,包含ps、ls、cd、cat及find中的至少一種。
  7. 如請求項5之網頁後門檢測方法,其中,在與上述進程關聯執行的指令包含除已設定的常規指令外的指令的情況下,判斷為與上述進程關聯執行的指令包含非常規指令。
  8. 如請求項4之網頁後門檢測方法,其中,若執行上述進程的父進程的系統帳戶資訊與執行上述網路服務的系統帳戶資訊相同,則判斷為上述進程的父進程通過上述網路服務執行。
  9. 如請求項4之網頁後門檢測方法,其中,若執行上述進程的父進程的系統帳戶資訊為apache或nobody,則判斷為上述進程的父進程通過上述網路服務執行。
  10. 如請求項1之網頁後門檢測方法,其中,所生成的上述資料集被添加在待機佇列(queue),針對向上述待機佇列添加的資料集,依次判斷所添加的上述資料集是否包含上述已設定的模式。
  11. 如請求項3之網頁後門檢測方法,其中,上述追加進程資訊包含上述進程的名字、與上述進程關聯執行的指令(cmdline)、執行上述進程的系統帳戶資訊、與上述進程有關的父進程的進程標識(PPID)、上述父進程的名字、與上述父進程關聯執行的指令(cmdline)及執行上述父進程的系統帳戶資訊中的至少兩種,上述已設定的模式為對於上述追加進程資訊的已設定的模式。
  12. 一種電腦可讀記錄介質,其中,記錄有用於在電腦中執行請求項1之方法的程式。
  13. 一種檢測網頁後門之電腦系統,其中,包括執行電腦可讀指令的至少一個處理器,上述至少一個處理器實時收集與在提供網路服務的伺服器中執行的進程有關的進程資訊,並在不分析伺服器的文件內容的情況下,基於所收集的上述進程資訊,判斷上述進程是否通過網頁後門執行; 其中,上述至少一個處理器基於所收集的上述資訊來生成與上述進程有關的資料集,判斷所生成的上述資料集是否包含已設定的模式,若所生成的上述資料集包含已設定的模式,則判斷為上述進程通過網頁後門執行。
  14. 如請求項13之電腦系統,其中,還包括通知部,若判斷為上述進程通過網頁後門執行,則向上述伺服器的管理人員通知檢測到網頁後門。
  15. 如請求項13之電腦系統,其中,上述至少一個處理器判斷執行上述進程的系統帳戶資訊是否與執行上述網路服務的系統帳戶資訊(owner)相同或者上述進程的父進程是否通過上述網路服務執行,在執行上述進程的系統帳戶資訊與執行上述網路服務的系統帳戶資訊相同或者上述進程的父進程通過上述網路服務執行的情況下,判斷與上述進程關聯執行的指令是否包含非常規指令,在判斷為與上述進程關聯執行的指令包含非常規指令的情況下,判斷為上述進程通過網頁後門執行。
TW109140281A 2019-11-28 2020-11-18 使用進程資訊來檢測網頁後門的方法及系統 TWI817062B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190155720A KR102382889B1 (ko) 2019-11-28 2019-11-28 프로세스 정보를 사용하여 웹쉘을 탐지하는 방법 및 시스템
KR10-2019-0155720 2019-11-28

Publications (2)

Publication Number Publication Date
TW202121211A TW202121211A (zh) 2021-06-01
TWI817062B true TWI817062B (zh) 2023-10-01

Family

ID=76087932

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109140281A TWI817062B (zh) 2019-11-28 2020-11-18 使用進程資訊來檢測網頁後門的方法及系統

Country Status (4)

Country Link
US (1) US11388182B2 (zh)
JP (1) JP7049432B2 (zh)
KR (1) KR102382889B1 (zh)
TW (1) TWI817062B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113591074A (zh) * 2021-06-21 2021-11-02 北京邮电大学 一种webshell检测方法及装置
CN113434861B (zh) * 2021-08-26 2021-11-16 杭州美创科技有限公司 一种WebShell检测方法及其系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100346611C (zh) * 2005-06-30 2007-10-31 西安交通大学 Linux环境下基于调用栈图的入侵检测方法
CN101116068A (zh) * 2004-10-28 2008-01-30 思科技术公司 数据中心环境中的入侵检测
CN102546624A (zh) * 2011-12-26 2012-07-04 西北工业大学 一种网络多路入侵检测防御方法及系统
US20140215619A1 (en) * 2013-01-28 2014-07-31 Infosec Co., Ltd. Webshell detection and response system
US20190268361A1 (en) * 2018-02-23 2019-08-29 Crowdstrike, Inc. Computer-security event analysis

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100655492B1 (ko) 2005-10-14 2006-12-08 한국전자통신연구원 검색엔진을 이용한 웹서버 취약점 점검 시스템 및 방법
KR100937010B1 (ko) * 2008-01-21 2010-01-15 한남대학교 산학협력단 유해 프로세스 검출/차단 재발방지 방법
KR101068931B1 (ko) * 2009-03-05 2011-09-29 김동규 패턴 탐지 기반의 웹쉘 관제 시스템 및 그 방법
KR101223594B1 (ko) * 2011-01-28 2013-01-17 한남대학교 산학협력단 Lkm 루트킷 검출을 통한 실시간 운영정보 백업 방법 및 그 기록매체
US9483642B2 (en) * 2012-10-30 2016-11-01 Gabriel Kedma Runtime detection of self-replicating malware
US9239922B1 (en) * 2013-03-11 2016-01-19 Trend Micro Inc. Document exploit detection using baseline comparison
KR20160133927A (ko) * 2015-05-14 2016-11-23 한국전자통신연구원 안드로이드 시스템 기반의 단말에서의 루팅 탐지 장치 및 방법
JP6359227B2 (ja) * 2016-04-04 2018-07-18 三菱電機株式会社 プロセス探索装置およびプロセス探索プログラム
CN107070913B (zh) 2017-04-07 2020-04-28 杭州安恒信息技术股份有限公司 一种基于webshell攻击的检测和防护方法及系统
CN109905396A (zh) 2019-03-11 2019-06-18 北京奇艺世纪科技有限公司 一种WebShell文件检测方法、装置及电子设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101116068A (zh) * 2004-10-28 2008-01-30 思科技术公司 数据中心环境中的入侵检测
CN100346611C (zh) * 2005-06-30 2007-10-31 西安交通大学 Linux环境下基于调用栈图的入侵检测方法
CN102546624A (zh) * 2011-12-26 2012-07-04 西北工业大学 一种网络多路入侵检测防御方法及系统
US20140215619A1 (en) * 2013-01-28 2014-07-31 Infosec Co., Ltd. Webshell detection and response system
US20190268361A1 (en) * 2018-02-23 2019-08-29 Crowdstrike, Inc. Computer-security event analysis

Also Published As

Publication number Publication date
JP7049432B2 (ja) 2022-04-06
TW202121211A (zh) 2021-06-01
KR102382889B1 (ko) 2022-04-05
US20210168162A1 (en) 2021-06-03
JP2021086636A (ja) 2021-06-03
US11388182B2 (en) 2022-07-12
KR20210066460A (ko) 2021-06-07

Similar Documents

Publication Publication Date Title
JP6772270B2 (ja) 複数のネットワークエンドポイントをセキュアにするためのデュアルメモリイントロスペクション
JP6101408B2 (ja) イベント相関グラフを使用してコンピューティングシステムに対する攻撃を検出するためのシステム及び方法
US9928364B2 (en) Detecting malicious files
US11757920B2 (en) User and entity behavioral analysis with network topology enhancements
US20180295154A1 (en) Application of advanced cybersecurity threat mitigation to rogue devices, privilege escalation, and risk-based vulnerability and patch management
US20140059688A1 (en) Detection and mitigation of side-channel attacks
US11184373B2 (en) Cryptojacking detection
JP6400758B2 (ja) 不正リモート管理からのコンピュータを保護するためのシステム及び方法
US9779234B2 (en) Software reputation establishment and monitoring system and method
WO2012064539A1 (en) Techniques for security management provisioning at a data storage device
US11706237B2 (en) Threat detection and security for edge devices
JP2019516160A (ja) セキュリティ脅威を検出するためのシステム及び方法
TWI817062B (zh) 使用進程資訊來檢測網頁後門的方法及系統
CN102110213A (zh) 检测计算机系统内隐藏的对象
EP3353983B1 (en) Method and system with a passive web application firewall
CN109997138A (zh) 用于检测计算设备上的恶意进程的系统和方法
US10262131B2 (en) Systems and methods for obtaining information about security threats on endpoint devices
US9785775B1 (en) Malware management
Çeliktaş The ransomware detection and prevention tool design by using signature and anomaly based detection methods
CN110659478B (zh) 在隔离的环境中检测阻止分析的恶意文件的方法
US10089261B2 (en) Discriminating dynamic connection of disconnectable peripherals
JP7427146B1 (ja) 攻撃分析装置、攻撃分析方法、及び攻撃分析プログラム
US8429744B1 (en) Systems and methods for detecting malformed arguments in a function by hooking a generic object
JP6687844B2 (ja) マルウエア解析装置、マルウエア解析方法及びマルウエア解析プログラム
Park et al. Core Container Security Frameworks