應(yīng)用程序的安全處理方法與安全處理系統(tǒng)的制作方法
【專利摘要】本發(fā)明揭露一種應(yīng)用程序的安全處理方法與安全處理系統(tǒng)。應(yīng)用程序的安全處理方法適用于云端平臺(tái)服務(wù)層,此方法包含下列步驟:首先,掃描一應(yīng)用程序中具有安全漏洞的程序碼片段;接著,當(dāng)程序碼片段未經(jīng)安全處理時(shí),將一安全程序碼織入程序碼片段,以確保應(yīng)用程序的安全性。
【專利說(shuō)明】應(yīng)用程序的安全處理方法與安全處理系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明是有關(guān)于一種網(wǎng)絡(luò)安全技術(shù),且特別是有關(guān)于一種應(yīng)用程序的安全處理方法與安全處理系統(tǒng)。
【背景技術(shù)】
[0002]云端運(yùn)算(Cloud Computing),是一種基于網(wǎng)際網(wǎng)絡(luò)的運(yùn)算方式,通過(guò)這種方式,共享的軟硬件資源和信息可以按需提供給計(jì)算機(jī)和其他裝置。
[0003]云端運(yùn)算是繼1980年代大型計(jì)算機(jī)到客戶端一服務(wù)器的大轉(zhuǎn)變之后的又一種巨變。使用者不再需要了解“云端”中基礎(chǔ)設(shè)施的細(xì)節(jié),不必具有相應(yīng)的專業(yè)知識(shí),也無(wú)需直接進(jìn)行控制。云端運(yùn)算描述了一種基于網(wǎng)際網(wǎng)絡(luò)的新的IT服務(wù)增加、使用和交付模式,通常涉及通過(guò)網(wǎng)際網(wǎng)絡(luò)來(lái)提供動(dòng)態(tài)易擴(kuò)充功能而且經(jīng)常是虛擬化的資源。典型的云端運(yùn)算提供商往往提供通用的網(wǎng)絡(luò)業(yè)務(wù)應(yīng)用,可以通過(guò)瀏覽器等軟件或者其他Web服務(wù)來(lái)存取,而軟件和數(shù)據(jù)都儲(chǔ)存在服務(wù)器上。
[0004]在網(wǎng)絡(luò)安全方面,已知技術(shù)采用了監(jiān)測(cè)方法,監(jiān)視了云端系統(tǒng)使用者端的網(wǎng)絡(luò),過(guò)濾并處理有安全疑慮的模式(pattern)。然而,已知技術(shù)并無(wú)實(shí)際解決客戶端安全性漏洞,采用過(guò)濾的方法監(jiān)控使用者端的網(wǎng)絡(luò),會(huì)大幅增加網(wǎng)絡(luò)延遲時(shí)間。
[0005]由此可見(jiàn),上述現(xiàn)有的方式,顯然仍存在不便與缺陷,而有待加以進(jìn)一步改進(jìn)。為了解決上述問(wèn)題,相關(guān)領(lǐng)域莫不費(fèi)盡心思來(lái)謀求解決之道,但長(zhǎng)久以來(lái)一直未見(jiàn)適用的方式被發(fā)展完成。因此,如何能確保應(yīng)用程序的安全性,實(shí)屬當(dāng)前重要研發(fā)課題之一,亦成為當(dāng)前相關(guān)領(lǐng)域亟需改進(jìn)的目標(biāo)。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的在于提供一種應(yīng)用程序的安全處理方法與安全處理系統(tǒng)。
[0007]因此,本發(fā)明的一方面是在提供云端平臺(tái)服務(wù)層(PAAS layer)自我信息安全檢測(cè)及防御機(jī)制,以確保應(yīng)用程序的安全性。
[0008]依據(jù)本發(fā)明一實(shí)施例,一種應(yīng)用程序的安全處理方法適用于一云端平臺(tái)服務(wù)層,該安全處理方法包含下列步驟:(a)掃描一應(yīng)用程序中具有安全漏洞的程序碼片段;(b)當(dāng)程序碼片段未經(jīng)安全處理時(shí),將一安全程序碼織入程序碼片段。
[0009]上述的安全處理方法亦可包含:判斷應(yīng)用程序的程序碼是否更新;每當(dāng)應(yīng)用程序的程序碼更新時(shí),執(zhí)行步驟(a)。
[0010]上述的安全處理方法中,步驟(a)可包含:動(dòng)態(tài)分析應(yīng)用程序的程序碼中是否具有安全漏洞的程序碼片段。
[0011]或者或再者,上述的安全處理方法中,步驟(a)可包含:靜態(tài)分析應(yīng)用程序的程序碼中是否具有安全漏洞的程序碼片段。
[0012]上述的安全處理方法中,步驟(b)可包含:基于面相導(dǎo)向程序技術(shù),將安全程序碼織入程序碼片段。[0013]依據(jù)本發(fā)明另一實(shí)施例,一種應(yīng)用程序的安全處理系統(tǒng)適用于云端平臺(tái)服務(wù)層,該安全處理系統(tǒng)包含程序分析單元與程序織入單元。程序分析單元用以掃描一應(yīng)用程序中具有安全漏洞的程序碼片段;當(dāng)程序碼片段未經(jīng)安全處理時(shí),程序織入單元用以將一安全程序碼織入程序碼片段。
[0014]上述的安全處理系統(tǒng)中,每當(dāng)應(yīng)用程序的程序碼更新時(shí),程序分析單元就會(huì)去掃描應(yīng)用程序中是否具有安全漏洞的程序碼片段。
[0015]上述的安全處理系統(tǒng)中,程序分析單元是動(dòng)態(tài)分析應(yīng)用程序的程序碼中是否具有安全漏洞的程序碼片段。
[0016]或者或再者,上述的安全處理系統(tǒng)中,程序分析單元是靜態(tài)分析應(yīng)用程序的程序碼中是否具有安全漏洞的程序碼片段。
[0017]程序織入單元是基于面相導(dǎo)向程序技術(shù),將安全程序碼織入程序碼片段。
[0018]綜上所述,本發(fā)明的技術(shù)方案與現(xiàn)有技術(shù)相比具有明顯的優(yōu)點(diǎn)和有益效果。通過(guò)上述技術(shù)方案,可達(dá)到相當(dāng)?shù)募夹g(shù)進(jìn)步,并具有產(chǎn)業(yè)上的廣泛利用價(jià)值,其至少具有下列優(yōu)點(diǎn)。[0019]1.實(shí)際解決了應(yīng)用程序安全漏洞,借此在開(kāi)發(fā)人員做程序碼控管時(shí),得以漸進(jìn)式的修正應(yīng)用程序的問(wèn)題;以及
[0020]2.非采用過(guò)濾網(wǎng)絡(luò)的方式確保應(yīng)用程序安全,改采以織入安全程序碼的方式,實(shí)際保護(hù)應(yīng)用程序安全,大幅增加網(wǎng)絡(luò)使用效率。
[0021]以下將以實(shí)施方式對(duì)上述的說(shuō)明作詳細(xì)的描述,并對(duì)本發(fā)明的技術(shù)方案提供更進(jìn)
一步的解釋。
【專利附圖】
【附圖說(shuō)明】
[0022]為讓本發(fā)明的上述和其他目的、特征、優(yōu)點(diǎn)與實(shí)施例能更明顯易懂,所附附圖的說(shuō)明如下:
[0023]圖1是依照本發(fā)明一實(shí)施例的一種安全處理系統(tǒng)的示意圖;
[0024]圖2是依照本發(fā)明一實(shí)施例的一種安全處理系統(tǒng)的方塊圖;以及
[0025]圖3是依照本發(fā)明一實(shí)施例的一種安全處理方法的流程圖。
[0026]【主要元件符號(hào)說(shuō)明】
[0027]100:安全處理系統(tǒng)
[0028]110:安全處理單元
[0029]111:程序分析單元
[0030]112:程序織入單元
[0031]113:安全模式處理單元
[0032]120:應(yīng)用程序
[0033]130:云端平臺(tái)服務(wù)層
[0034]210:程序版本控管單元
[0035]220:數(shù)據(jù)庫(kù)
[0036]300:安全處理方法
[0037]310:步驟[0038]320:步驟
[0039]330:步驟
[0040]340:步驟
[0041]350:步驟
【具體實(shí)施方式】
[0042]為了使本發(fā)明的敘述更加詳盡與完備,可參照所附的附圖及以下所述各種實(shí)施例,附圖中相同的號(hào)碼代表相同或相似的元件。另一方面,眾所周知的元件與步驟并未描述于實(shí)施例中,以避免對(duì)本發(fā)明造成不必要的限制。
[0043]于實(shí)施方式與申請(qǐng)專利范圍中,涉及“稱接(coupled with) ”的描述,其可泛指一元件通過(guò)其他元件而間接連接至另一元件,或是一元件無(wú)須通過(guò)其他元件而直接連接至另一兀件。
[0044]于實(shí)施方式與申請(qǐng)專利范圍中,除非內(nèi)文中對(duì)于冠詞有所特別限定,否則“一”與“該”可泛指單一個(gè)或多個(gè)。
[0045]本發(fā)明的技術(shù)方案是一種應(yīng)用程序的安全處理系統(tǒng),其可適用于一云端平臺(tái)服務(wù)層,或是廣泛地運(yùn)用在相關(guān)的技術(shù)環(huán)節(jié)。以下將搭配圖1?圖2來(lái)說(shuō)明此安全處理系統(tǒng)的【具體實(shí)施方式】。
[0046]圖1是依照本發(fā)明一實(shí)施例的一種安全處理系統(tǒng)100的示意圖。如圖1所示,安全處理系統(tǒng)100適用于云端平臺(tái)服務(wù)層130。在使用上,云端平臺(tái)服務(wù)層130所提供的服務(wù)方式包括:應(yīng)用程序120版本控管、提供開(kāi)發(fā)測(cè)試環(huán)境、提供彈性及高可用性的產(chǎn)品環(huán)境。
[0047]安全處理系統(tǒng)100包括安全處理單元110。在每一次的應(yīng)用程序120的程序碼更新時(shí),安全處理單元110能掃描出程序碼中的安全漏洞,提供開(kāi)發(fā)人員于開(kāi)發(fā)測(cè)試環(huán)境得以修正程序碼中有問(wèn)題的程序碼片段。當(dāng)系統(tǒng)上線時(shí),安全處理單元110是運(yùn)用軟件編譯的方式將未經(jīng)安全處理的程序碼片段,徑行安全程序碼織入(Code Weaving),確保應(yīng)用程序的安全性。
[0048]為了對(duì)上述的安全處理系統(tǒng)100作更進(jìn)一步的闡述,請(qǐng)參照?qǐng)D2,圖2是依照本發(fā)明一實(shí)施例的一種安全處理系統(tǒng)100的方塊圖。如圖2所不,安全處理單兀110可細(xì)分成程序分析單元111、程序織入單元112與安全模式處理單元113。在架構(gòu)上,程序分析單元111與程序織入單元112皆耦接至安全模式處理單元113。
[0049]在使用上,程序分析單元111用以掃描應(yīng)用程序中具有安全漏洞的程序碼片段。若應(yīng)用程序確實(shí)具有安全漏洞的程序碼片段,則安全模式處理單元113可發(fā)送通知或解決方案給開(kāi)發(fā)人員(例如:以電子郵件或其他通信方式發(fā)送),以提供開(kāi)發(fā)人員于開(kāi)發(fā)測(cè)試環(huán)境得以修正程序碼中有問(wèn)題的程序片段。然而,若開(kāi)發(fā)人員不處理或暫時(shí)無(wú)法修正該程序碼片段時(shí),亦即當(dāng)該程序碼片段仍未經(jīng)安全處理時(shí),程序織入單元112用以將一安全程序碼織入程序碼片段,以確保應(yīng)用程序的安全性。由于安全處理系統(tǒng)100非采用過(guò)濾網(wǎng)絡(luò)的方式確保應(yīng)用程序安全,改采以織入安全程序碼的方式,實(shí)際保護(hù)應(yīng)用程序安全,大幅增加網(wǎng)絡(luò)使用效率。
[0050]另一方面,安全模式處理單元113耦接至程序版本控管單元210,程序版本控管單元210耦接至數(shù)據(jù)庫(kù)220。在使用上,數(shù)據(jù)庫(kù)220用于存放目前已知的資安問(wèn)題程序片段(如:具有安全漏洞的程序碼片段),讓安全處理單元110能夠有查詢的來(lái)源,以日常的方式來(lái)說(shuō),可算是一種字典。程序版本控管單元210是一種安全處理單元110與數(shù)據(jù)庫(kù)220的溝通橋梁,其功用是讓安全處理單元110可以知道,該應(yīng)用程序目前已經(jīng)依照數(shù)據(jù)庫(kù),進(jìn)行織入的動(dòng)作到數(shù)據(jù)庫(kù)的某個(gè)版本(因?yàn)閿?shù)據(jù)庫(kù)會(huì)不斷更新),只需就未更新的內(nèi)容接續(xù)進(jìn)行即可。安全處理系統(tǒng)100可持續(xù)檢測(cè)安全漏洞,每當(dāng)應(yīng)用程序的程序碼更新時(shí),程序分析單元111就會(huì)去掃描應(yīng)用程序中是否具有安全漏洞的程序碼片段。借此,在開(kāi)發(fā)人員做程序碼控管時(shí),漸進(jìn)式的修正應(yīng)用程序的問(wèn)題。
[0051]為了確實(shí)找出應(yīng)用程序本身的弱點(diǎn),本發(fā)明采用了程序碼分析技術(shù)(又分為動(dòng)態(tài)、及靜態(tài)分析技術(shù))。于一實(shí)施例中,程序分析單元111是動(dòng)態(tài)分析應(yīng)用程序的程序碼中是否具有安全漏洞的程序碼片段。簡(jiǎn)言之,“動(dòng)態(tài)分析”是指在分析應(yīng)用程序的時(shí)候,會(huì)實(shí)際地經(jīng)由程序的執(zhí)行來(lái)輔助了解該應(yīng)用程序,舉例來(lái)說(shuō),可輸入測(cè)試數(shù)據(jù)給該程序,進(jìn)而分析程序執(zhí)行的結(jié)果。
[0052]再者,不論是利用虛擬環(huán)境(virtual environment)或是真實(shí)執(zhí)行環(huán)境(runtimeenviixmment)來(lái)執(zhí)行應(yīng)用程序,皆屬于動(dòng)態(tài)分析的方法。舉例來(lái)說(shuō),動(dòng)態(tài)分析法可用于分析網(wǎng)頁(yè)上的直譯式應(yīng)用程序,例如Java應(yīng)用程序,但不以此為限。
[0053]相較于上述動(dòng)態(tài)分析的方式,于另一實(shí)施例中,程序分析單元111是靜態(tài)分析應(yīng)用程序的程序碼中是否具有安全漏洞的程序碼片段。簡(jiǎn)言之,“靜態(tài)分析”是在不執(zhí)行程序的情況下,進(jìn)行源始碼分析(Source code analysis)。實(shí)務(wù)上,熟悉此項(xiàng)技藝者可以視當(dāng)時(shí)需要彈性選擇動(dòng)態(tài)/靜態(tài)分析方式。
[0054]除此之外,本系統(tǒng)更運(yùn)用了面相導(dǎo)向程序技術(shù)(Aspect-Oriented Programming),強(qiáng)化應(yīng)用程序安全。于一實(shí)施例中,程序織入單元112是基于面相導(dǎo)向程序技術(shù)將安全程序碼織入未經(jīng)安全處理的程序碼片段,以建立防御機(jī)制,杜絕不斷變化的駭客攻擊手法。
[0055]如上所述的程序分析單元111、程序織入單元112與安全模式處理單元113、程序版本控管單元210等,其【具體實(shí)施方式】可為軟件、硬件與/或固件。舉例來(lái)說(shuō),若以設(shè)計(jì)彈性為首要考量,則所述單元基本上可選用軟件為主;若以執(zhí)行速度及精確性為首要考量,則所述單元基本上可選用硬件與/或固件為主;或者,所述單元可同時(shí)采用軟件、硬件及固件協(xié)同作業(yè)。應(yīng)了解到,以上所舉的這些例子并沒(méi)有所謂孰優(yōu)孰劣之分,亦并非用以限制本發(fā)明,熟悉此項(xiàng)技藝者當(dāng)視當(dāng)時(shí)需要,彈性選擇所述單元的【具體實(shí)施方式】。
[0056]如上所述的數(shù)據(jù)庫(kù)220等,其【具體實(shí)施方式】,可分別儲(chǔ)存于不同的儲(chǔ)存裝置或是儲(chǔ)存于同一儲(chǔ)存裝置,例如計(jì)算機(jī)硬盤、服務(wù)器、外接式硬盤、隨身盤、或其他計(jì)算機(jī)可讀取的記錄媒體等。
[0057]圖3是依照本發(fā)明一實(shí)施例的一種安全處理方法300的流程圖。安全處理方法300適用于上述的云端平臺(tái)服務(wù)層,安全處理方法300包含步驟310?350 (應(yīng)了解到,在本實(shí)施例中所提及的步驟,除特別敘明其順序者外,均可依實(shí)際需要調(diào)整其前后順序,甚至可同時(shí)或部分同時(shí)執(zhí)行)。至于實(shí)施該些步驟的系統(tǒng)裝置,由于前述的實(shí)施例已具體揭露,因此不再重復(fù)贅述。
[0058]在開(kāi)發(fā)階段,于步驟310,可掃描一應(yīng)用程序中具有安全漏洞的程序碼片段。于步驟320,若應(yīng)用程序確實(shí)具有安全漏洞的程序碼片段,則可發(fā)送通知或解決方案給開(kāi)發(fā)人員(例如:以電子郵件或其他通信方式發(fā)送)。于步驟330,提供開(kāi)發(fā)人員于開(kāi)發(fā)測(cè)試環(huán)境得以修正程序碼中有問(wèn)題的程序片段。
[0059]然而,若開(kāi)發(fā)人員不處理或暫時(shí)無(wú)法修正該程序碼片段時(shí),亦即當(dāng)該程序碼片段仍未經(jīng)安全處理時(shí),在產(chǎn)品階段,于步驟340,將一安全程序碼織入未經(jīng)安全處理的程序碼片段,以確保應(yīng)用程序的安全性。接著,于步驟350,將已織入安全程序碼的應(yīng)用程序上線。由于安全處理方法300非采用過(guò)濾網(wǎng)絡(luò)的方式確保應(yīng)用程序安全,改采以織入安全程序碼的方式,實(shí)際保護(hù)應(yīng)用程序安全,大幅增加網(wǎng)絡(luò)使用效率。
[0060]安全處理方法300可持續(xù)檢測(cè)安全漏洞,具體而言,于步驟310中,可判斷應(yīng)用程序的程序碼是否更新,每當(dāng)應(yīng)用程序的程序碼更新時(shí),才去掃描應(yīng)用程序中具有安全漏洞的程序碼片段。借此,在開(kāi)發(fā)人員做程序碼控管時(shí),漸進(jìn)式的修正應(yīng)用程序的問(wèn)題。
[0061]為了確實(shí)找出應(yīng)用程序本身的弱點(diǎn),本發(fā)明采用了程序碼分析技術(shù)(又分為動(dòng)態(tài)、及靜態(tài)分析技術(shù))。于一實(shí)施例中,于步驟310,動(dòng)態(tài)分析應(yīng)用程序的程序碼中是否具有安全漏洞的程序碼片段?;蛘呋蛟僬?,于步驟310,靜態(tài)分析應(yīng)用程序的程序碼中是否具有安全漏洞的程序碼片段,實(shí)務(wù)上,熟悉此項(xiàng)技藝者可以視當(dāng)時(shí)需要彈性選擇動(dòng)態(tài)/靜態(tài)分析方式。
[0062]除此之外,本方法300更運(yùn)用了面相導(dǎo)向程序技術(shù),強(qiáng)化應(yīng)用程序安全。于一實(shí)施例中,于步驟340,基于面相導(dǎo)向程序技術(shù)將安全程序碼織入未經(jīng)安全處理的程序碼片段,以建立防御機(jī)制,杜絕不斷變化的駭客攻擊手法。
[0063]如上所述的安全處理方法300可經(jīng)由一計(jì)算機(jī)來(lái)實(shí)作,例如前述的安全處理系統(tǒng)100等,亦可將部份功能實(shí)作為一計(jì)算機(jī)程序,并儲(chǔ)存于一計(jì)算機(jī)可讀取的記錄媒體中,而使計(jì)算機(jī)讀取此記錄媒體后令一計(jì)算機(jī)系統(tǒng)執(zhí)行安全處理方法300。
[0064]雖然本發(fā)明已以實(shí)施方式揭露如上,然其并非用以限定本發(fā)明,任何熟悉此技藝者,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作各種的更動(dòng)與潤(rùn)飾,因此本發(fā)明的保護(hù)范圍當(dāng)視所附的權(quán)利要求書所界定的范圍為準(zhǔn)。
【權(quán)利要求】
1.一種應(yīng)用程序的安全處理方法,其特征在于,適用于一云端平臺(tái)服務(wù)層,該安全處理方法包含下列步驟: Ca)掃描一應(yīng)用程序中具有安全漏洞的程序碼片段;以及 (b)當(dāng)該程序碼片段未經(jīng)安全處理時(shí),將一安全程序碼織入該程序碼片段。
2.根據(jù)權(quán)利要求1所述的應(yīng)用程序的安全處理方法,其特征在于,還包含: 判斷該應(yīng)用程序的程序碼是否更新;以及 每當(dāng)該應(yīng)用程序的程序碼更新時(shí),執(zhí)行步驟(a)。
3.根據(jù)權(quán)利要求2所述的應(yīng)用程序的安全處理方法,其特征在于,步驟(a)包含: 動(dòng)態(tài)分析該應(yīng)用程序的程序碼中是否具有安全漏洞的該程序碼片段。
4.根據(jù)權(quán)利要求2所述的應(yīng)用程序的安全處理方法,其特征在于,步驟(a)包含: 靜態(tài)分析該應(yīng)用程序的程序碼中是否具有安全漏洞的該程序碼片段。
5.根據(jù)權(quán)利要求1所述的應(yīng)用程序的安全處理方法,其特征在于,步驟(b)包含: 基于面相導(dǎo)向程序技術(shù),將該安全程序碼織入該程序碼片段。
6.一種應(yīng)用程序的安全處理系統(tǒng),其特征在于,適用于一云端平臺(tái)服務(wù)層,該安全處理系統(tǒng)包含: 一程序分析單元,用以掃描一應(yīng)用程序中具有安全漏洞的程序碼片段;以及一程序織入單元,用以當(dāng)該程序碼片段未經(jīng)安全處理時(shí),將一安全程序碼織入該程序碼片段。
7.根據(jù)權(quán)利要求6所述的應(yīng)用程序的安全處理系統(tǒng),其特征在于,每當(dāng)該應(yīng)用程序的程序碼更新時(shí),該程序分析單元就會(huì)去掃描該應(yīng)用程序中是否具有安全漏洞的該程序碼片段。
8.根據(jù)權(quán)利要求7所述的應(yīng)用程序的安全處理系統(tǒng),其特征在于,該程序分析單元是動(dòng)態(tài)分析該應(yīng)用程序的程序碼中是否具有安全漏洞的該程序碼片段。
9.根據(jù)權(quán)利要求7所述的應(yīng)用程序的安全處理系統(tǒng),其特征在于,該程序分析單元是靜態(tài)分析該應(yīng)用程序的程序碼中是否具有安全漏洞的該程序碼片段。
10.根據(jù)權(quán)利要求6所述的應(yīng)用程序的安全處理系統(tǒng),其特征在于,該程序織入單元是基于面相導(dǎo)向程序技術(shù),將該安全程序碼織入該程序碼片段。
【文檔編號(hào)】G06F21/54GK103810423SQ201210476527
【公開(kāi)日】2014年5月21日 申請(qǐng)日期:2012年11月21日 優(yōu)先權(quán)日:2012年11月6日
【發(fā)明者】江尚倫, 陳富川, 盛敏成 申請(qǐng)人:財(cái)團(tuán)法人資訊工業(yè)策進(jìn)會(huì)