Áp dụng kiểm tra mô hình và phân tích khái niệm hình thức để phân loại và phát hiện mã độc (tt)

30 161 0
Áp dụng kiểm tra mô hình và phân tích khái niệm hình thức để phân loại và phát hiện mã độc (tt)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC BÁCH KHOA NGUYỄN THIÊN BÌNH ÁP DỤNG KIỂM TRA MƠ HÌNH VÀ PHÂN TÍCH KHÁI NIỆM HÌNH THỨC ĐỂ PHÂN LOẠI VÀ PHÁT HIỆN Mà ĐỘC Chuyên ngành: Khoa học máy tính Mã số chun ngành: 62.48.01.01 TĨM TẮT LUẬN ÁN TIẾN SĨ KỸ THUẬT TP HỒ CHÍ MINH NĂM 2018 Cơng trình hồn thành Trường Đại học Bách Khoa–ĐHQG–Tp.HCM Người hướng dẫn khoa học: PGS TS Quản Thành Thơ Phản biện độc lập 1: Phản biện độc lập 2: Phản biện 1: PGS TS Vũ Thanh Nguyên Phản biện 2: TS Mai Hoàng Bảo Ân Luận án bảo vệ trước Hội đồng chấm luận án họp vào lúc ngày tháng năm Có thể tìm hiểu luận án thư viện: - Thư viện Khoa học Tổng hợp Tp HCM - Thư viện Trường Đại học Bách Khoa – ĐHQG-HCM DANH MữC CễNG TRèNH CễNG Bằ ểNG GểP CHNH TĐp chí chuyên ngành quËc t∏ [CT1] B T Nguyen, D C Tran, T T Quan, and H M Nguyen, "Viral logical concept analysis for malware conceptual hierarchy generation," in International Journal of Machine Learning and Computing (IJMLC), 2017, vol 7, no 4, pp 49-54 T§p chí chun ngành n˜Ĩc [CT2] B T Nguyen, V H Nguyen, T T Quan, and D C Nguyen, "A two-layer formal framework for handling obfuscation techniques of polymorphic virus," in Journal of Science and Technology, 2013, vol 51, pp 231-241 HỴi th£o chun ngành quËc t∏ [CT3] B T Nguyen, T T Quan, N M Ha, and H M Nguyen, “Incremental verification of !-regions on binary control flow graph for computer virus detection,” in 2016 3rd National Foundation for Science and Technology Development Conference on Information and Computer Science, NICS 2016 Proceedings, 2016, pp 68–73 [CT4] B T Nguyen, T T Quan, and H M Nguyen, “On-the-fly abstract interpretation to handle obfuscated polymorphic virus with HOPE,” in The Fourth Asian Conference on Information Systems, ACIS 2015, Penang, Malaysia, October 15-17, 2015 Proceedings, 2015 [CT5] B T Nguyen, D C Tran, T T Quan, and H M Nguyen, “Feature-driven formal concept analysis for malware hierarchy construction,” in Multi-disciplinary Trends in Artificial Intelligence - 9th International Workshop, MIWAI 2015, Fuzhou, China, November 13-15, 2015 Proceedings, 2015, pp 385–396 [Online] Available: https://doi.org/10.1007/978-3319-26181-2_36 i [CT6] B T Nguyen, T T Quan, H M Nguyen, and V H Nguyen, “HOPE: a framework for handling obfuscated polymorphic malware,” in 19th International Symposium on Formal Methods, FM 2014, Singapore, May 12-16, 2014 Proceedings, 2014, pp 26-30 [Online] Available: https://dl.comp.nus.edu.sg/jspui/bitstream/1900.100/4623/2/TRA5-14.pdf [CT7] B T Nguyen, B T Ngo, and T T Quan, “A memory-based abstraction approach to handle obfuscation in polymorphic virus,” in 19th Asia-Pacific Software Engineering Conference Workshops, APSEC 2012, Hong Kong, China, December 4-7, 2012 Proceedings, 2012, pp 158–161 [Online] Available: https://doi.org/10.1109/APSEC.2012.78 ểNG GểP PHữ TĐp chuyờn ngnh quậc t [CT8] H M Nguyen, N M Ha, B T Nguyen, and T T Quan,"Toward an Approach on Probability Distribution for Polymorphic Malware Analysis,” in GSTF Journal on Computing (JOC), 2016, vol (1), pp 61-68 (selected from 7th Annual International Conference on ICT: Big Data, Cloud and Security, ICT-BDCS 2016, 2016, Singapore - best paper award) HỴi th£o chun ngành quËc t∏ [CT9] H M Nguyen, B T Nguyen, T T Quan, and M Ogawa, “A Hybrid Approach for Control Flow Graph Construction from Binary Code,” in Proceedings of the 20th Asia-Pacific Software Engineering Conference, APSEC 2013, Postgrad Symposium, Thailand, 2013 ii CHNG 1.1 GII THIừU Sá cản thit thác hiên ti Nhu cảu v viêc phỏt hiên mó ẻc l ròt lển, nhiờn phẽng phỏp so trùng ch˙ k˛ phân tích mơi tr˜Ìng gi£ lp gp nhiu hĐn ch vểi cỏc mó ẻc mểi, ph˘c t§p H˜Ĩng ti∏p c™n ki∫m tra mơ hình giúp gi£i quy∏t nh˙ng vßn ∑ cıa ph˜Ïng pháp cơng nghiêp nờu trờn, nhiờn hểng tip cn ny lĐi gp phÊi vòn bựng n khụng gian trĐng thỏi kinh i∫n Tuy ã có nhi∑u ∑ xt ∫ gi£i quyt vòn ny, hiên vđn cha cú giÊi phỏp triªt ∫ khơng có nghiên c˘u t™p trung cho tốn áp dˆng ki∫m tra mơ hình phát hiên mó ẻc Ngoi ra, mó ẻc thèng ỏp dng kˇ thu™t làm rËi mã làm cho k∏t qu£ ki∫m tra khơng cịn xác Có mỴt sË nghiên c˘u c£i ti∏n lu™n l˛ thÌi gian ∫ x˚ l˛ vßn ∑ làm rËi mã Tuy nhiên, nghiên c˘u ∑u chø gi£i quy∏t ˜Ịc mỴt kˇ thu™t làm rËi mã cˆ th∫ ó HÏn n˙a, h˜Ĩng ti∏p c™n c£i ti∏n lu™n l˛ thÌi gian ∫ gi£i rËi mó (deobfuscation) cũn cú mẻt hĐn ch l phÊi thay Íi cơng cˆ ki∫m tra mơ hình cho phù hỊp vĨi lu™n l˛ ˜Ịc c£i ti∏n Các h§n ch∏ cng cậ thờm viêc cản thit phÊi phỏt trin mẻt ph˜Ïng pháp x˚ l˛ mỴt cách tÍng qt kˇ thu™t làm rËi mã Ph˜Ïng pháp ph£i dπ dàng c™p nh™t ˜Ịc kˇ thu™t làm rËi mã mĨi mà khơng c¶n thay Íi cơng cˆ ki∫m tra mơ hình Ngồi ra, vĨi sË l˜Ịng khÍng lÁ mã Ỵc ˜Ịc phát tri∫n mĨi mÈi ngày, ∞c biªt nh˙ng hnh vi nguy hĐi ca cỏc loĐi mó ẻc mểi th˜Ìng ˜Ịc k∏ th¯a phát tri∫n d¸a nh˙ng mó ẻc ó bit, dđn n nhu cảu cản thit phÊi cú mẻt phẽng phỏp phõn loĐi mó ẻc Tuy nhiờn viêc phõn loĐi mó ẻc khụng phÊi l Ïn gi£n vĨi h˜Ĩng ti∏p c™n ki∫m tra mơ hỡnh, hnh vi nguy hĐi ca mó ẻc ềc biu diπn bi cơng th˘c lu™n l˛ thÌi gian Do ó h˜Ĩng ti∏p c™n khai phá d˙ liªu thơng thèng dáa trờn trớch xuòt c tớnh s khú ỏp dˆng ˜Ịc Trong q trình tìm hi∫u, chúng tơi nh™n thòy hiên cha cú nghiờn cu no trung giÊi quyt bi toỏn phõn loĐi mó ẻc, c biêt bËi c£nh hành vi nguy h§i cıa mã ẻc ềc c tÊ băng cụng thc lun l thèi gian õy chớnh l ẻng lác cho xuòt thậng hoỏ mó ẻc ca chỳng tụi lun án 1.2 Câu h‰i nghiên c˘u ∫ gi£i quy∏t nh˙ng h§n ch∏ nêu trên, câu h‰i nghiên c˘u sau ềc t [RQ1] Mẻt cỏch trác quan ta thòy mó ẻc ròt khỏc biêt vểi chẽng trỡnh mỏy tớnh thơng th˜Ìng, v™y khai thác nh˙ng ∞c tính khỏc biêt ny giÊi quyt vòn bựng n khơng gian tr§ng thái? [RQ2] C£i ti∏n lu™n l˛ thÌi gian chø giúp gi£i quy∏t mỴt sË kˇ thu™t làm rËi mã ịi h‰i ph£i thay Íi cơng cˆ ki∫m tra mơ hình, ∫ gi£i quy∏t mỴt cách hình th˘c vßn ∑ làm rËi mã mà khơng c¶n c™p nh™t cơng cˆ ki∫m tra mơ hình? [RQ3] VĨi h˜Ĩng ti∏p c™n áp dˆng ki∫m tra mơ hình phõn tớch mó ẻc, hnh vi nguy hĐi ca mã Ỵc ã ˜Ịc ∞c t£ hình th˘c, v™y dáa vo c tÊ hỡnh thc thậng hố mã Ỵc? 1.3 Mˆc tiêu nghiên c˘u ∫ tr£ lÌi ba câu h‰i nghiên c˘u trên, mˆc tiêu nghiên c˘u cıa lu™n án ˜Ịc liªt kê nh˜ sau [OB1] ∑ xußt ph˜Ïng pháp gi£i quy∏t vßn ∑ bùng nÍ khơng gian tr§ng thái cˆ th∫ cho tốn ỏp dng kim tra mụ hỡnh phỏt hiên mó ẻc Mˆc tiêu nghiên c˘u tr£ lÌi câu h‰i nghiên c˘u [RQ1] [OB2] ∑ xt ph˜Ïng pháp hình th˘c x˚ l vòn lm rậi mó m khụng cản cp nh™t cơng cˆ ki∫m tra mơ hình Mˆc tiêu nghiên c˘u tr£ lÌi câu h‰i nghiên c˘u [RQ2] [OB3] xuòt mẻt phẽng phỏp thậng hoỏ cỏc cụng th˘c lu™n l˛ mã Ỵc Mˆc tiêu nghiên c˘u tr£ lÌi câu h‰i nghiên c˘u [RQ3] 1.4 óng góp Các óng góp cıa lu™n án bao gÁm • Lun ỏn a mẻt khỏi niêm mểi gi l !-region, vểi c tớnh l oĐn mó thác hiên hnh vi nguy hĐi ca mó ẻc ềc cha trn mẻt !-region T ú, lun ỏn giÊi quyt ềc vòn bựng n khụng gian trĐng thỏi băng xuòt ph˜Ïng pháp ki∫m tra gia t´ng t¯ng ph¶n Ph˜Ïng pháp giúp phân rã ch˜Ïng trình c¶n ki∫m tra thành cỏc !-region v tuản tá tin hnh kim tra chỳng Cơng trình liên quan ∏n óng góp [CT3] ã !-region ềc xõy dáng t lênh ềc gi l !-instruction - mẻt khỏi niêm mểi lun ỏn ∑ xußt lu™n án ã s˚ dˆng cách ti∏p c™n thËng kê ∫ xác ‡nh ˜Òc !-instruction Ngoi ra, lun ỏn xuòt mẻt phẽng phỏp tru t˜Ịng hố, giúp thu gi£m mơ hình ch˜Ïng trình (program model) nhng vđn gi lĐi ềc cỏc giỏ tr ca bi∏n mơi tr˜Ìng, t¯ ó £m b£o ˜Ịc k∏t qu£ ki∫m tra xác Cơng trình liên quan ∏n óng góp [CT3], [CT8] • Lu™n án gi£i quy∏t ềc vòn lm rậi mó băng mẻt ngụn ng tru tềng, giỳp loĐi b hảu ht cỏc k thut làm rËi mã phÍ bi∏n Cơng trình liên quan ∏n óng góp [CT4], [CT6], [CT7] • Lu™n án ∑ xt khung th˘c gi£i rËi mã (deobfuscation) vĨi b˜Ĩc gi£i rËi b˜Ĩc ki∫m tra mơ hình ˜Ịc tách biªt, giúp tránh viªc c™p nh™t cơng cˆ ki∫m tra mơ hình x˚ l˛ kˇ thu™t làm rËi mĨi Cơng trình liên quan ∏n óng góp [CT2], [CT4], [CT6] • Lu™n án gi£i quy∏t ˜Ịc nhu cảu thậng hoỏ cỏc cụng thc lun l mó ẻc băng phẽng phỏp phõn tớch khỏi niêm lun l mó ẻc thác hiên viêc tng quỏt hoỏ cỏc cơng th˘c lu™n l˛ mã Ỵc q trình xây dáng gin khỏi niêm mó ẻc, lun ỏn ó xuòt phẽng phỏp tru tềng hoỏ mó ẻc Ngoi ra, lu™n án cịn ∑ xt kˇ thu™t qu£n l˛ c™p nh™t khái niªm phÍ bi∏n giúp gi£m chi phí xây dáng gin khỏi niêm mó ẻc v gom cm khỏi niêm mó ẻc mẩi cp nht mó ẻc mểi, hoc loĐi b mó ẻc ó c Cụng trỡnh liờn quan ∏n óng góp [CT1], [CT5] • CuËi cùng, lu™n án ∑ xußt ph˜Ïng pháp gom cˆm khái niªm liên tˆc vĨi chi∏n l˜Ịc on-the-fly ∫ tránh viêc tớnh toỏn tòt cÊ cỏc khỏi niêm hỡnh thc cựng lỳc quỏ trỡnh thác hiên gom cm; v lun ỏn xuòt mẻt phộp toỏn kt hềp ậi t˜Ịng d¸a lu™n l˛ ∫ k∏t hỊp Ëi tềng tẽng tá v lun l vo mẻt cm mểi Cơng trình liên quan ∏n óng góp [CT1] 1.5 Cßu trúc lu™n án Phương pháp kiểm tra mơ hình phát mã độc Hạn chế phương pháp công nghiệp Vấn đề Đặc tả hành vi nguy hại công thức luận lý Bùng nổ không gian trạng thái [OB1] Luận án đóng góp Phương pháp kiểm tra gia tăng phần Xây dựng tập ω-instruction Vấn đề Vấn đề Kỹ thuật làm rối mã Hệ thống hố cơng thức luận lý mã độc [OB2] [OB3] Luận án đóng góp Luận án đóng góp Khung thức xử lý kỹ thuật làm rối mã Phân tích khái niệm luận lý mã độc Ngôn ngữ trừu tượng Gom cụm khỏi nim liờn tc Hỡnh 1.1: Còu trỳc nẻi dung lu™n án Lu™n án bao gÁm sáu Ch˜Ïng Ch˜Ïng trình bày ki∏n th˘c n∑n t£ng cıa lu™n án Các ki∏n th˘c n∑n t£ng bao gÁm mã Ỵc, ki∫m tra mơ hình, làm rËi mã gom cˆm d liêu Chẽng trỡnh by mẻt xuòt ca lu™n án ∫ gi£i quy∏t vßn ∑ bùng nÍ khơng gian tr§ng thái, ó ph˜Ïng pháp ki∫m tra gia tng tng phản Trong Chẽng 4, lun ỏn xuòt mỴt ngơn ng˙ tr¯u t˜Ịng áp dˆng suy diπn tr¯u t˜Ịng ∫ lo§i b‰ kˇ thu™t làm rËi mã ˜Ịc s˚ dˆng mã Ỵc Ch˜Ïng th£o lun v xuòt thậng hoỏ mó ềc băng phẽng phỏp phõn tớch khỏi niêm lun l mó ẻc Ngồi ra, Ch˜Ïng cịn trình bày mỴt kˇ thu™t xõy dáng cõy phõn còp khỏi niêm mó ẻc gÂi gom cˆm khái niªm liên tˆc CuËi cùng, Ch˜Ïng tóm t≠t lu™n án ∑ xt h˜Óng nghiên c˘u t˜Ïng lai CH◊ÃNG 2.1 NóN TÉNG VÀ CÁC NGHIÊN CŸU LIÊN QUAN Ki∫m tra mơ hình Ki∫m tra mơ hình (Model Checking) mỴt k thut kim tra cỏc thậng hu hĐn trĐng thái, ˜Ịc ˘ng dˆng ∫ gi£i quy∏t rßt nhi∑u vßn ∑ nh˜ ph¶n c˘ng/ph¶n m∑m máy tính, giao th˘c liên l§c Ki∫m tra mơ hình ˜Ịc s˚ dˆng ∫ ki∫m tra hª thËng Áng thÌi (concurrent system) hª thËng ph£n ˘ng (reactive system) (các hª thËng có nhi∑u thành ph¶n ph£n ˘ng vĨi ho∞c ph£n ˘ng vĨi mơi tr˜Ìng) Cơng cˆ ki∫m tra mơ hình (model checker) bao gÁm ba thành ph¶n chính: Ngơn ng c tÊ thuẻc tớnh (property specification language) dáa trờn lu™n l˛ thÌi gian Ngơn ng˙ ∞c t£ mơ hình (model specification language) - mỴt ∞c t£ hình th˘c dựng mụ hỡnh hoỏ thậng cản kim tra Quy trình ki∫m tra vét c§n khơng gian tr§ng thái cıa mơ hình ∫ xác ‡nh xem thc tính c¶n ki∫m tra có ˜Ịc tho£ mãn hay khơng Cơng cụ xây dựng CFG Chương trình Cơng cụ kiểm tra mơ hình CFG Đặc tả luận lý mã độc Kết kiểm tra Hình 2.1: Áp dˆng ki∫m tra mơ hỡnh phỏt hiên mó ẻc ậi vểi bi toỏn áp dˆng ki∫m tra mơ hình ∫ phát hiªn mã Ỵc, nh˜ mơ t£ Hình 2.1, q trình ki∫m tra bt ảu vểi mẻt cụng c phõn tớch mó thác thi giỳp tỏi tĐo lĐi lung iu khi∫n (CFG) t¯ mã nh‡ phân ban ¶u N∏u có sá tn tĐi ca mó ẻc chẽng trỡnh cản kim tra, oĐn mó ca mó ẻc s ềc th hiên trờn CFG Cỏc hnh vi ca mó ẻc ềc biu din băng cụng thc lun l Sau ú, cơng cˆ ki∫m tra mơ hình ki∫m tra CFG này, khơng gian tr§ng thái cıa ch˜Ïng trình s≥ ˜Ịc t§o ˜Ịc s˚ dˆng ∫ ki∫m tra xem cơng th˘c lu™n l˛ có ˜Ịc tho£ mãn hay khơng, t ú xỏc nhn sá tn tĐi ca mó ẻc Kt quÊ kim tra mẻt thậng vểi mẻt thuẻc tính có th∫ tho£ mãn ho∞c khơng tho£ mãn N∏u k∏t qu£ không tho£ mãn, công cˆ ki∫m tra mơ hình s≥ chø ˜Ịc mỴt ph£n ví dˆ (counterexample) Ph£n ví dˆ rßt h˙u ích viêc xỏc nh tĐi thậng khụng thoÊ thuẻc tớnh cản kim tra Kim tra mụ hỡnh cú nhng u im sau ã Khụng cản chng minh, vểi mẻt mụ hỡnh thậng v c tÊ thuẻc tớnh xác, k∏t qu£ ki∫m tra cıa cơng cˆ ki∫m tra mơ hình ln úng mà khơng c¶n ch˘ng minh • ThÌi gian mơ hình hố ∞c t£ thc tính nhanh hÏn ph˜Ïng pháp khác nh˜ ph˜Ïng pháp giÊ lp ã Cung còp phÊn vớ d, nh ó trình bày  trên, ph£n ví dˆ rßt h˙u ích trình xác ‡nh nguyên nhân gây lÈi ã Băng cỏch s dng lun l thèi gian, nhiu thc tính Áng thÌi có th∫ ˜Ịc bi∫u diπn dπ dàng 2.1.1 Mơ hình hố ∫ ti∏n hành ki∫m tra, thậng cản ềc kim tra phÊi ềc mụ hỡnh hố Ngơn ng˙ ∞c t£ mơ hình - dùng ∫ ∞c t£ mơ hình hª thËng - có ∞c tính sau • Ngơn ng˙ ∞c t£ mơ hình t™p trung v viêc mụ tÊ còu trỳc iu khin v sá tẽng tỏc ca thậng ã Ngụn ng c t£ mơ hình ph£i hÈ trỊ tính phi xác ‡nh (nondeterministic), nghỉa tr§ng thái k∏ ti∏p khơng ˜Ịc xác nh trĐng thỏi hiên tĐi ã Ngụn ng c t£ mơ hình ph£i hÈ trỊ ∞c t£ mơi tr˜Ìng m thậng ú hoĐt ẻng Vớ d nh mơi tr˜Ìng x86, giá tr‡ mơi tr˜Ìng nh˜ ghi, cÌ, bỴ nhĨ s≥ £nh h˜ng ∏n v™n hành cıa hª thËng ph£i ˜Ịc ∞c t£ bi ngơn ng˙ ∞c t£ mơ hình CH◊ÃNG 3.1 PH◊ÃNG PHÁP KIöM TRA GIA TãNG TÿNG PHÜN Các nghiên c˘u liên quan MỴt ph˜Ïng pháp ˛ nghiên c˘u gi£i quy∏t vßn ∑ bùng nÍ khơng gian trĐng thỏi l phẽng phỏp kim tra thnh phản, ph˜Ïng pháp ˜Ịc xây d¸ng d¸a kˇ thu™t tr¯u t˜Òng phân rã Mˆc tiêu cıa cách ti∏p c™n ∫ ki∫m tra mơ hình riêng l¥ sau ó ki∫m tra mơ hình tru tềng tng hềp kt lun kt qua ki∫m tra xác ∫ phân chia mỴt mơ hình thành mơ hình con, kˇ thu™t phân rã ˜Ịc s˚ dˆng MÈi mơ hình có khơng gian tr§ng thái riêng q trình ki∫m tra ˜Ịc bt ảu băng cỏch kim tra tng mụ hỡnh Các kˇ thu™t tr¯u t˜Ịng hố ˜Ịc áp dˆng ∫ gi£m kích th˜Ĩc cıa t¯ng mơ hình sau ã ki∫m tra, t¯ ó gi£m kích th˜Ĩc cıa mơ hỡnh tru tềng tng hềp ềc xõy dáng băng cỏch k∏t hỊp mơ hình tr¯u t˜Ịng 3.2 Ki∫m tra gia t´ng t¯ng ph¶n !-region Qua phân tớch cỏc mó ẻc thác t, chỳng tụi nhn thòy hnh vi nguy hĐi thèng cha cỏc lênh c biêt m cỏc chẽng trỡnh vụ hĐi him s dng Ngềc lĐi, cú mẻt sậ lênh thèng ềc s dng cỏc chẽng trỡnh vụ hĐi nhng hảu nh khụng ềc s dng oĐn mó thác hiên hành vi nguy h§i T¯ quan sát này, lu™n án ó phỏt trin mẻt phẽng phỏp thậng kờ cỏc lênh khụng cha oĐn mó thác hiên hnh vi nguy h§i nh˜ng ˜Ịc s˚ dˆng bi ch˜Ïng trình vơ hĐi, õy l cẽ s dđn n Tiờn sau Tiờn oĐn mó thác hiên mẻt hnh vi nguy hĐi, hay cũn gi l mđu nhn diên mó Ỵc khơng ch˘a nh˙ng lªnh Hình 3.1 12 Lªnh Ví dˆ Dynamic jump jmp eax, jmp ecx, jmp 0x12AED567 Halt hlt Return ret Shift sal, shl, sar, shr Load/Store ldr, str Hỡnh 3.1: Nhng lênh khụng cha mđu nhn diên mó ẻc nh nghổa (!-instruction) Mẻt lênh him xuòt hiên mđu nhn diên mó ẻc ˜Ịc gÂi !-instruction ‡nh nghỉa (!-node) MỴt ønh N hloc, insi CFG ˜Òc gÂi !-node n∏u ins l mẻt !-instruction hoc N l ứnh bt ảu/kt thúc ‡nh nghỉa (!-region) Cho mỴt region G(a, b), G ˜Òc gÂi !-region n∏u a b nh˙ng !-nodes G G khơng ch˘a bßt k˝ !-node no khỏc nh l Nu mẻt oĐn mó thác hiên hnh vi nguy hĐi xuòt hiên chẽng trỡnh, oĐn mó ny phÊi ềc giểi hĐn mẻt !-region Núi cỏch khỏc, oĐn mó ny khụng th xuòt hiên nhiu hẽn mẻt !-region Dáa vo nh l 1, k∏t qu£ ki∫m tra mÈi !-region cıa ch˜Ïng trình P t˜Ïng ˜Ïng vĨi k∏t qu£ ki∫m tra tồn bỴ P ây cÏ s ∫ lu™n án ∑ xußt cỏch tip cn thác hiên kim tra hnh vi nguy hĐi trờn tng !-regions riờng lƠ thay vỡ ton bẻ ch˜Ïng trình Cách ti∏p c™n ˜Ịc gÂi ph˜Ïng pháp ki∫m tra gia t´ng t¯ng ph¶n nh˜ trình bày Hình 3.2 Các b˜Ĩc cıa khung th˘c ˜Ịc mụ tÊ nh sau ã !-decomposition: dáa vo !-instruction, phõn ny thác thiên phõn ró lung iu khi∫n ¶u vào CF Ginput thành !-regioni (i = 1, n) ã !-verifier : phõn ny kim tra t¯ng !-regioni vĨi mỴt cơng th˘c lu™n l˛ mơ t£ hành vi nguy h§i 13 ω-abstraction ω-region1 ω-region2 ω-decomposition … ω-regionn Đặc tả luận lý thời gian ω-verifier Hành vi nguy hại CFG Kết kiểm tra Công cụ xây dựng CFG Chương trình Hình 3.2: Ph˜Ïng pháp ki∫m tra gia tng tng phản ã !-abstraction: sau !-regioni ềc ki∫m tra, phân hª tr¯u t˜Ịng hố thành mẻt trĐng thỏi Sabstracted Sabstracted sau ú ềc s dng lm trĐng thỏi ảu vo ca !-regioni+1 k tip 3.3 Xây d¸ng t™p !-instruction Lu™n án s˚ dˆng cách ti∏p c™n thËng kê ∫ xác ‡nh !-instruction Lu™n án tĐo trng sậ mểi dáa trờn tản suòt dựng xỏc nh !-instruction, ềc gi l tản suòt nghch Êo lênh mó ẻc (if imf ) nh nh nghổa sau ã Tản suòt ca mẻt lênh I ch˜Ïng trình vơ h§i P if (I, P ) = f (I,P ) f (Imax ,P ) (1) vÓi f (I, P ) l tng sậ lản I xuòt hiên P v Imax l lênh cú tản suòt xuòt hiên nhiu nhòt P ã Tản suòt nghch Êo ca mẻt lênh I mó ẻc V imf (I) = |V | ✏⇥|V |+occ(I,V ) (2) vÓi occ sË l˜Ịng file V mà I xt hiên, l mẻt Đi lềng vụ cựng giỳp trỏnh trèng hềp chia I khụng xuòt hiên V • if imf (I) = if (I, P ) ⇥ imf (I) 14 B£ng 3.1: K∏t qu£ thớ nghiêm Sậ mđu Tng thèi gian chĐy (s) trểc time-out BENIGN_SIMPLE TYP BỴ nhĨ s˚ dˆng (KB) COM INC TYP COM INC Sậ trĐng thỏi duyêt TYP COM INC 1000 1.4048298 1.2431232 1.1324531 21938.376 9372.132 9214.325 9462 8372 5482 47 56.3728309 12.4276187 1.9928374 54873.283 26931.472 21398.382 58137 19387 14254 EARLY_INFECTED_SIMPLE 5000 0.0135142 0.0138278 0.0013432 8412.332 8425.653 8418.554 137 136 137 LATE_INFECTED_SIMPLE 5000 1.2372868 0.9432432 0.9354355 20422.767 8546.664 8574.543 9154 1243 1215 EARLY_INFECTED_COMPLEX 5000 0.0153843 0.0144234 0.0149384 8899.384 8836.231 8848.142 168 168 168 72 49,2832794 1.9483847 1.5372637 457382.039 23132.328 19837.421 52371 18372 12587 BENIGN_COMPLEX LATE_INFECTED_COMPLEX !-instruction lªnh có giá tr if 3.3.1 imf cao hẽn ngễng ( băng 50 theo thËng kê) K∏t qu£ thí nghiªm T™p d˙ liªu ó lõy nhim mó ẻc ềc tĐo băng cỏch lây nhiπm ch˜Ïng trình vơ h§i (t™p ch˜Ïng trình vơ h§i Ïn gi£n gÂi BENIGN_SIMPLE, t™p ch˜Ïng trình vụ hĐi phc tĐp gi l BENIGN_COMPLEX) băng 5000 mó Îc ˜Òc thu th™p t¯ VX Heaven, VirusSign t™p d˙ liªu MALICIA Có hai cÏ ch∏ lây nhiπm ˜Ịc s˚ dˆng gÂi lây nhiπm sĨm (mã Ỵc ˜Ịc lây nhiπm vào ph¶n ¶u cıa ch˜Ïng trình vơ hĐi) v lõy nhim muẻn (mó ẻc ềc nhim vo gi˙a ho∞c ph¶n sau cıa ch˜Ïng trình) t™p BENIGN_SIMPLE, BENIGN_COMPLEX; t¯ ó sinh t™p t˜Ïng ˘ng EARLY_INFECTED_SIMPLE, EARLY_INFECTED_COMPLEX, LATE_INFECTED_SIMPLE LATE_INFECTED_COMPLEX K∏t qu£ thí nghiªm ˜Ịc mơ t£ B£ng 3.1 Các ch˙ vi∏t tt TYP, COM v INC Đi diên cho phẽng phỏp ki∫m tra thơng th˜Ìng, ph˜Ïng pháp ki∫m tra thành ph¶n ph˜Ïng pháp ki∫m tra gia t´ng t¯ng ph¶n 15 CH◊ÃNG ÁP D÷NG SUY DIơN TRÿU T◊—NG LI Bƒ CÁC Kfl THUäT LÀM R»I Mà 4.1 Các nghiên c˘u liên quan ∫ gi£i quy∏t vßn ∑ làm rËi mã, nghiên c˘u phát tri∫n lu™n l˛ thÌi gian c tÊ hiêu quÊ hẽn hnh vi nguy hĐi ó ềc xuòt CTPL l cụng bậ ảu tiờn vĨi viªc bÍ sung l˜Ịng t¯ vào CTL Sau ó, SCTPL ềc m rẻng t CTPL băng cỏch c tÊ bin sậ hiên thèi tĐi ứnh ngn xp Tip tc phát tri∫n t¯ SCTPL, SCTPL\X ˜Ịc giĨi thiªu vĨi ˛ t˜ng ∞c t£ giá tr‡ cˆ th∫ t§i ønh ng´n x∏p ch˘ khơng chø mỴt bi∏n sË ó nh˜ SCTPL Ngồi cịn có nh˙ng cơng bË nh˜ SLTPL ∫ gi£i quy∏t nh˙ng h§n ch∏ cıa nh˙ng lu™n l˛ d¸a CTL MÈi cơng bË theo h˜Ĩng nghiên c˘u th˜Ìng chø gi£i quy∏t ˜Ịc mỴt kˇ thu™t làm rËi cˆ th∫ Tuy nhiên, nh˙ng k thut cú th ềc dựng hiên thác viêc lm rậi liờn tc ềc phỏt trin, viêc m rẻng lu™n l˛ thÌi gian ∫ x˚ l˛ tßt c£ kˇ thu™t làm rËi khơng ph£i mỴt h˜Ĩng nghiên c˘u kh£ quan 4.2 HOPE - khung th˘c x˚ l˛ kˇ thu™t làm rËi mã ∫ gi£i quy∏t nh˙ng hĐn ch ca hểng tip cn giÊi rậi mó dáa trờn lun l, chỳng tụi xuòt mẻt khung thc ˜Ịc gÂi HOPE (Handling Obfuscated Polymorphic malwarE), ó b˜Ĩc gi£i rËi mã (deobfuscation) ˜Ịc tách biªt vĨi b˜Ĩc ki∫m tra mơ hình Viªc phân tách b˜Ĩc gi£i rËi mã vĨi b˜Ĩc ki∫m tra mơ hình giúp c™p nh™t ph˜Ïng pháp x˚ l˛ kˇ thu™t làm rËi mã mĨi mà v®n s˚ dˆng ˜Ịc cơng cˆ ki∫m tra mơ hình lu™n l˛ thÌi gian ban ¶u Khung th˘c ˜Òc phát tri∫n t¯ ph˜Ïng pháp ki∫m tra gia t´ng t¯ng ph¶n Thay !-region ˜Ịc ki∫m tra tr¸c ti∏p, chúng ˜Ịc gi£i rËi mã băng cỏch tru tềng hoỏ Cỏc bểc chớnh ca khung th˘c ˜Ịc mơ t£ nh˜ sau 16 ω-abstraction Trừu tượng hoá hành vi Trigger Scan ω-regions ω-regions Suy diễn trừu tượng … ω-regions n Phân tích giá trị Abstraction-based Deobfuscation ω-decomposition CFG Cắt lát ngược Đặc tả luận lý thời gian Công cụ xây dựng CFG Obfuscation-free ω-region ω-verifier Hành vi nguy hại Chương trình Kết kiểm tra Hỡnh 4.1: Khung thc HOPE ã Phõn Tru t˜Ịng hố hành vi : !-region ˜Ịc tr¯u t˜Ịng hố thnh mẻt biu din băng ngụn ng tru tềng ềc trỡnh by BÊng 4.1 ã Phõn Trigger scan: bểc ny cú nhiêm v quột tỡm mẻt lênh nhn diên mó ẻc Mẻt lênh nhn diên l mẻt lênh phÊi ềc thác hiên bi mẻt mó ẻc nhòt nh bßt k∫ kˇ thu™t làm rËi mã ˜Ịc s˚ dng ã Phõn Suy din tru tềng: bểc ny s˚ dˆng kˇ thu™t suy diπn tr¯u t˜Òng bao gÁm phân tích giá tr‡ (value analysis) c≠t lát ng˜Ịc (backward slicing) ∫ phân tích lo§i b‰ kˇ thu™t làm rËi mã ˜Òc s˚ dˆng 4.3 Tr¯u t˜Ịng hố hành vi ∫ gi£i rËi mã Q trình tr¯u t˜Ịng hố hành vi v∑ cÏ b£n d‡ch mó nh phõn ban ảu sang mẻt ngụn ng tru t˜Ịng VĨi mˆc ích gi£i rËi mã, ngơn ng˙ tr¯u t˜Ịng cıa Ïn gi£n hÏn nhi∑u so vĨi ngơn ng˙ nh‡ phân ban ¶u, ˜Ịc trình bày BÊng 4.1 Viêc tru tềng hoỏ mẻt chẽng trỡnh nh phân thành mỴt ch˜Ïng trình tr¯u t˜Ịng s˚ dˆng ngơn ng tru tềng trờn ềc thác hiên tuản tá tng lênh Lênh ph bin v ỏng chỳ nhòt cıa ngơn ng˙ tr¯u t˜Ịng lªnh assign Q trình tru tềng hoỏ ềc thác hiên trờn ton bẻ cỏc hoĐt ẻng ca chẽng trỡnh nh phõn ban ảu, bao gÁm nh˙ng thao tác thay Íi giá tr‡ cıa ghi hay bỴ nhĨ Tuy nhiên, ngơn ng˙ tr¯u t˜Ịng chø ch˘a lªnh cÏ b£n nh˜ gán giá tr‡, 17 B£ng 4.1: Ngơn ng˙ tr¯u t˜Ịng assign l-value= expression : gán giá tr‡ cıa expression vào l-value jump expression : nh£y ∏n ‡a chø giá tr‡ cıa expression push/pop register : push ho∞c pop giá tr‡ cıa register vào/t¯ ng´n x∏p call module: gÂi mỴt module guard expression : ng¯ng luÁng x˚ l˛ n∏u expression "false" ti∏p tˆc tr˜Ìng hỊp ng˜Ịc l§i nh£y, truy c™p ngn xp, gi hm; v tòt cÊ cỏc lênh ch˜Ïng trình nh‡ phân s≥ ˜Ịc tr¯u t˜Ịng thành lªnh 4.3.1 Ch˘ng minh kh£ n´ng gi£i rËi mã Ph˜Ïng pháp ˜Ịc ∑ xt lu™n án có th∫ x˚ l˛ ˜Òc bËn kˇ thu™t làm rËi mã bao gÁm chèn mã rác, thay Íi th˘ t¸ mã, thay Íi ghi thay Íi lªnh ‡nh l˛ Khung th˘c HOPE có th∫ lo§i b‰ kˇ thu™t chèn mã rác Ch˘ng minh NhÌ vào phân hª Trigger scan, chø nh˙ng lªnh có liên quan ∏n hành vi nguy hĐi cản ềc kim tra mểi ềc ỏnh dòu x˚ l˛ Nh˙ng lªnh ˜Ịc thêm vào bi kˇ thu™t chèn mã rác không làm £nh h˜ng ∏n luÁng x˚ l˛ cıa ch˜Ïng trình, ó khơng liên quan ∏n nhng lênh ềc s dng mó ẻc thác hiên hành vi nguy h§i Vì v™y, khËi mã rác s≥ khơng ˜Ịc x˚ l˛ b‡ lo§i b‰ ‡nh l˛ Kˇ thu™t phân tích giá tr‡ có th∫ lo§i b‰ kˇ thu™t làm rËi mã bao gÁm thay Íi th˘ t¸ mã, thay Íi ghi thay Íi lªnh Ch˘ng minh Nh˙ng kˇ thu™t làm rËi mó trờn trung vo viêc thay i trĐng thỏi chẽng trỡnh băng nhiu cỏch khỏc nhau, sau ú phc hÁi l§i tr§ng thái cÙ Tuy nhiên, kˇ thu™t phân tích giá tr‡ cıa chúng tơi chø t™p trung vào giá tr‡ cıa ghi ˜Òc gán cuËi cựng, tòt cÊ oĐn mó lm rậi ềc chốn vo s≥ b‡ b‰ qua ‡nh l˛ N∏u mỴt mã Ỵc có th∫ ˜Ịc phát hiªn bi mỴt cơng cˆ ki∫m tra mơ hình, khung th˘c cıa chúng tơi có th phỏt hiên tòt cÊ cỏc bin th ềc lm rËi cıa 18 Ch˘ng minh Nh˜ ã trình bày Chẽng 3, hnh vi nguy hĐi ca mó ẻc xuòt hiên mẻt !-region Hẽn na, dáa vo ‡nh l˛ ‡nh l˛ 3, tßt c£ kˇ thu™t làm rËi mã phÍ bi∏n có mỴt !-region s ềc loĐi b Do ú viêc kim tra t¯ng !-region s≥ cho k∏t qu£ t˜Ïng t¸ nh˜ viêc kim tra trờn chẽng trỡnh mó ẻc gậc, cha b‡ làm rËi 4.4 Thí nghiªm B£ng 4.2: K∏t qu£ thí nghiªm Avira Avast Kaspersky Bitdefender HOPE Chèn mã rác 70% 72% 85% 80% 94% Thay Íi th˘ t¸ mã 63% 60% 70% 75% 90% Thay Íi ghi 45% 40% 60% 55% 81% Thay Íi lªnh 30% 32% 56% 60% 87% Tách thı tˆc 25% 20% 40% 45% 80% 10% 9% 30% 40% 78% Các kˇ thu™t làm rËi mã khác Mã ngn mã Ỵc ˜Ịc s˚ dˆng cỏc thớ nghiêm ca chỳng tụi ềc lòy t VX Heaven, VirusSign t™p d˙ liªu MALICIA Sau ó, áp dˆng kˇ thu™t làm rËi mã ∫ xõy dáng cỏc bin th ca cỏc mó ẻc ny Chúng ã áp dˆng kˇ thu™t làm rËi mã phÍ bi∏n nh˜ ˜Ịc trình bày B£ng 4.2, ó t lª phát hiªn thành cơng cıa cơng cˆ qt mã Ỵc nÍi ti∏ng Ëi vĨi mã Ỵc ã ˜Ịc làm rËi ˜Ịc so sánh vĨi cách ti∏p c™n cıa chúng tơi Vì sau áp dˆng kˇ thu™t làm rËi lên mã Ỵc o§n mã ch˘a ch˙ k˛ cıa chúng có nhi∑u kh£ n´ng b‡ thay Íi, ó cơng cˆ qt mã Ỵc s˚ dˆng ph˜Ïng pháp so trùng ch˙ k˛ u ròt khú nhn diên ềc mó ẻc, mc dự chúng hồn tồn có kh£ n´ng phát hiªn nh˙ng mã Îc  tr§ng thái nguyên thu Trong ó, ph˜Ïng pháp ti∏p c™n cıa chúng tơi có hiªu qu£ cao Ëi vĨi viªc gi£i rËi mã, giúp th hiên rừ hnh vi nguy hĐi thác sá ca mó ẻc, t ú cho kt quÊ kim tra ròt kh£ quan 19 CH◊ÃNG 5.1 Hõ TH»NG HOÁ Mà ÀC Các nghiên c˘u liên quan Phân tích khái niªm hình th˘c (Formal Concept Analysis) mỴt kˇ thu™t phân tớch d liêu nhăm xỏc nh cỏc khỏi niêm hỡnh thc ca mẻt ng cÊnh hỡnh thc v xõy dáng mẻt gin khỏi niêm tẽng ng Trong lổnh vác khai phá d˙ liªu, kˇ thu™t có nhi∑u ˘ng dˆng phong phú nh˜ thơng tin sinh hÂc, phân tích m§ng xã hỴi, tìm ki∏m web ng˙ nghỉa Tuy nhiên, Ëi vĨi lĨp khái niªm mơ t£ hành vi ph˘c t§p nh˜ hành vi nguy h§i cıa mó ẻc, viêc biu din khỏi niêm ũi hi nhng kˇ thu™t phân tích ∫ x˚ l˛ quan hª gi˙a cỏc thuẻc tớnh phc tĐp Phõn tớch khỏi niêm hỡnh th˘c h˜Ĩng ∞c tính (Feature-driven Formal Concept Analysis) mỴt hểng m rẻng ca FCA xõy dáng gin khỏi niêm, ú mẩi khỏi niêm cú mẻt c tớnh ềc biu din băng mẻt cụng thc lun l thèi gian Viªc s˚ dˆng lu™n l˛ thÌi gian cho phép khái niªm ch˘a ˜Ịc nhi∑u thơng tin ng˙ nghỉa hÏn, nhiờn, F-FCA vđn xõy dáng gin khỏi niêm băng cỏc thuẻc tớnh in hỡnh giậng nh FCA, dđn n k∏t qu£ khơng xác TÍng qt hố lu™n l˛ cho phân tích khái niªm hình th˘c h˜Ĩng ti∏p c™n tÍng qt hố lu™n l˛ (logical generalization), vĨi viªc biu din mẻt cỏc khỏi niêm tẽng tá băng mỴt cơng th˘c lu™n l˛ LỊi th∏ cıa cách ti∏p c™n cơng th˘c lu™n l˛ có th∫ ˜Ịc x l mẻt cỏch tá ẻng khỏm phỏ nhi∑u ki∏n th˘c hÏn Tuy nhiên, bËi c£nh hành vi nguy hĐi ca mó ẻc ềc c tÊ băng cơng th˘c lu™n l˛ thÌi gian, thách th˘c ∞t khái qt hóa cơng th˘c lu™n l˛ thÌi gian ịi h‰i mỴt cÏ ch∏ ∫ suy diπn tr¯u tềng 5.1.1 Phõn tớch khỏi niêm lun l mó ẻc Dáa trờn FCA, lun ỏn xuòt phẽng phỏp phõn tớch khỏi niêm lun l mó ẻc (Viral Logical Concept Analysis - V-LCA) giúp xây d¸ng giàn lu™n l˛ mã ẻc t cỏc chẽng trỡnh nguy hĐi vểi viêc s˚ dˆng lu™n l˛ thÌi gian ∫ mơ t£ Ëi t˜Ịng vĨi ∞c tính sau 20 • V-LCA s˚ dˆng lu™n l˛ thÌi gian ∫ bi∫u diπn intent cıa cỏc khỏi niêm ã V-LCA s dng cỏc phộp tru tềng hoỏ mó ẻc dáa trờn cỏc cÊi tin ca lu™n l˛ thÌi gian ‡nh nghỉa (Ng˙ c£nh hình th˘c lu™n l˛ mã Ỵc) MỴt ng˙ c£nh hình th˘c lu™n l˛ mã Ỵc mỴt bỴ ba (O, L, i) vểi: ã O l mẻt hu hĐn cỏc Ëi t˜Òng bi∫u diπn t™p bi∏n th∫ cıa mã Ỵc, ˙ • hL; ✏i giàn cơng th˘c lu™n l˛ thÌi gian, vĨi supremum _˙ infimum ^ ã i l mẻt phộp ỏnh xĐ mẩi ậi t˜Ịng O vĨi mỴt cơng th˘c L ‡nh nghổa (Phộp dđn xuòt lun l) Cho (O, L, i) mỴt ng˙ c£nh hình th˘c lu™n l˛ mã ẻc, phộp dđn xuòt lun l ềc nh nghổa nh sau • O ✓ O, O0 = _˙ o2O i(O) • f ✓ L, f = {o O | i(o) ✏ f } ‡nh nghỉa (Khái niªm lu™n l˛) Trong mỴt ng˙ c£nh hình th˘c lu™n l˛ mó ẻc (O, L, i), mẻt khỏi niêm lun l mã Ỵc mỴt c∞p c = (O, f ) vÓi O ✓ O f L, cho O0 = f f = O Trong trỡnh xõy dáng gin khỏi niêm lun l mó ẻc, ta cản xõy dáng khỏi niêm tng quỏt C = (O⇤ , f ⇤ ) t¯ t™p khái niªm {C1 = (O1 , f1 ), , Cn = (On , fn )} cho Ci ✓ C ⇤ (8i [1, n]) iu ny ềc thác hiên băng cỏch dựng mẻt toỏn t c biêt r, ềc gi l tốn t˚ m rỴng (widening operator), cho f ⇤ = f1 rf2 r rfn f ⇤ ✏ fi (8i [1, n]) Phép tr¯u t˜Ịng hố mã Ỵc (viral abstractions) ềc xuòt hiên thác toỏn t m rỴng nh˜ trình bày B£ng 5.1 21 B£ng 5.1: Kˇ thu™t tr¯u t˜Ịng hố mã Ỵc STT Kˇ thu™t Mơ t£ Khi hai cơng th˘c lu™n l˛ thÌi gian chø khác  ghi ˜Òc CTPL s˚ dˆng, chúng có th∫ ˜Ịc tr¯u t˜Ịng hố thành mỴt cơng th˘c mĨi vĨi ghi ˜Ịc bi∫u diπn băng mẻt bin sậ SCTPL Tru tềng hoỏ hnh vi ây mẻt giỏ tr vo ứnh ngn xp SCTPL\X Hành vi thay Íi nỴi dung cıa ng´n x∏p ềc tru tềng hoỏ băng mẻt biu thc mụ tÊ trác tip viêc thay i nẻi dung ngn xp 5.2 Hê thậng hoỏ mó ẻc dáa vo V-LCA Viral Lattice Concept Hierarchy On-the-fly Conceptual Clustering Frequency Monitoring Virus Database Viral Logical Concept Analysis Hình 5.1: MarCHGen - khung th˘c hª thËng hố mã Ỵc Hình 5.1 bi∫u diπn khung th˘c MarCHGen ˜Ịc chúng tơi ∑ xt vĨi b˜Ĩc sau ã Viral Logical Concept Analysis (V-LCA): tĐo giàn khái niªm lu™n l˛ th∫ hiªn quan hª gi˙a khái niªm lu™n l˛ phát hiªn ˜Ịc t¯ t™p mó ẻc ban ảu ã On-the-fly Conceptual Clustering (OCC): gin khái niªm lu™n l˛ s≥ ˜Ịc gÂm cˆm khái niªm tĐo thnh cõy phõn còp mó ẻc th hiên cỏc lểp mó ẻc v quan th bc gia chúng • Frequency Monitoring: b˜Ĩc ˜Ịc dùng ∫ qu£n l v cp nht cõy phõn còp mó ẻc cú mđu mó ẻc mểi ềc thờm vo mó ẻc v ngềc lĐi 22 tng tớnh hiêu quÊ, chø giám sát c™p nh™t khái niêm ph bin trờn cõy phõn còp mó ẻc Chỳng tơi s˚ dˆng kˇ thu™t qu£n l˛ t™p c™n phÍ bin (Pre-large Dataset Management) thác hiên viêc ny mẻt cách hiªu qu£ 5.3 Gom cˆm khái niªm liên tˆc Dáa trờn cụng bậ hiên tĐi ca FFCA, chỳng tụi xuòt mẻt thut toỏn gom cm khỏi niêm mểi gÂi gom cˆm khái niªm liên tˆc (On-the-fly Conceptual Clustering - OCC) vÓi c£i ti∏n sau: (i) chúng tơi s˚ dˆng chi∏n l˜Ịc on-the-fly ∫ tránh viªc tính toỏn ng thèi tòt cÊ cỏc khỏi niêm hỡnh thc giàn trình phân cˆm; (ii) chúng tụi xuòt phộp nậi ậi tềng dáa trờn lun l˛ ∫ gom Ëi t˜Ịng vào mỴt cˆm mĨi fi t˜ng cıa OCC khơng Ịi cho n mẻt gin hon chứnh ềc tĐo ri mểi thác hiên viêc tĐo cm khỏi niêm Thay vo ú, mẻt khỏi niêm mểi ềc phỏt hiên, chỳng ta l™p t˘c gom khái niªm vào cm hiên cú hoc tĐo mẻt cm mểi cho khái niªm Algorithm Thu™t tốn gom cˆm khái niªm liên tˆc (OCC) Input: Viral Latice, Khái niªm o Output: Concept Hierarchy for Khái niªm o mĨi ˜Ịc phát hiên bi V-LCA Thờm o nh l mẻt khỏi niêm ca gin hiên tĐi; for Vểi mẩi cm c trờn cõy phõn còp hiên tĐi if o / c = o0 6= ; then Thêm o vào c; end if o khơng th∫ ˜Ịc thêm vào bßt k˝ cm no then TĐo mẻt cm mểi cho o; end end end Phép tốn / ˜Ịc s˚ dˆng thu™t tốn vĨi mˆc ích nËi Ëi t˜Ịng thành nh˙ng 23 cˆm khái niªm ∫ làm ˜Ịc i∑u này, chúng tơi giĨi thiªu phép nËi Ëi t˜Ịng (object-joining operator) nh˜ sau ‡nh nghỉa (Phép nËi Ëi t˜Ịng) Phép nËi Ëi t˜Ịng / hai khái niªm C1 = (O1 , f1 ) C2 = (O2 , f2 ) ˜Ịc ‡nh nghỉa C1 / C2 = {O⇤ , f ⇤ = f1 rf2 } vÓi r phép m rỴng hai cơng th˘c f1 f2 ; O⇤ = {x | x (O1 [ O2 )} f ⇤ ✏ (O⇤ )0 5.4 Qu£n l cn ph bin Viêc thờm/bểt mẻt mó ẻc s lm cho ton bẻ quỏ trỡnh xõy dáng gin khỏi niêm mó ẻc v gom cm khỏi niêm mó ẻc phÊi ềc thác hiên lĐi t ảu, dđn n chi phớ thác hiên ròt lển, c biêt l viêc ny din thèng xuyờn giÊi quyt vòn ny, chỳng tụi gi lĐi nhng khỏi niêm phÍ bi∏n giàn, v™y chø c¶n thác hiên lĐi ton bẻ quỏ trỡnh nu viêc cp nht mẻt mđu mó ẻc lm thay i mẻt khỏi niêm t trĐng thỏi ph bin thnh trĐng thỏi khụng ph bin v ngềc lĐi Mc dự vy, viêc kim tra lĐi tớnh ph bin ca tòt cÊ cỏc phÍ bi∏n/khơng phÍ bi∏n Ëi vĨi mÈi l¶n c™p nh™t thêm/bĨt mã Ỵc cÙng s≥ ph£i tr£ mỴt chi phí rßt cao ∫ gi£i quy∏t vßn ∑ này, chúng tơi s˚ dˆng khái niªm t™p c™n phÍ bi∏n (pre-large itemset), ˜Ịc xác ‡nh bi mỴt ng˜Ơng hÈ trỊ d˜Ĩi SL v mẻt ngễng hẩ trề trờn SU nh minh hoĐ hình sau SL infrequent SU nearly frequent frequent Hình 5.2: Xác ‡nh t™p phÍ bi∏n Nh˜ v™y, m®u mó ẻc cú th ềc thờm vo hoc loĐi b mẻt itemset f m khụng dđn n sá thay Íi Ỵ phÍ bi∏n cıa itemset (nghỉa khụng cản phÊi thác hiên lĐi ton bẻ quỏ trỡnh t¯ ng˙ c£nh gËc), n∏u sË l˜Ịng m®u mã Ỵc ˜Ịc c™p nh™t khơng lĨn hÏn f = b(SU SL )⇥ | D |c, vĨi SU ng˜Ơng hÈ trỊ trên, SL ng˜Ơng hÈ trỊ d˜Ĩi | D | sË l˜Òng giao d‡ch cÏ s d liêu ban ảu (trong trèng hềp ny chớnh l sậ lềng mó ẻc ng cÊnh ban ảu) 24 Thí nghiªm 50 0.5 40 0.4 Giá trị AUP Thời gian (s) 5.5 30 20 10 0.3 0.2 0.1 60 120 240 FFCA 480 960 1440 1920 Số lượng chương trình OCC 2400 3000 60 120 240 480 960 1440 1920 2400 3000 Số lượng chương trình Frequent OCC HAC FFCA (a) Frequent OCC (b) Giá trị trị Sihouette Silhouette Giá 0.8 0.6 0.4 0.2 60 120 k-means 240 480 960 1440 1920 Số lượng chương trình HAC FFCA 2400 3000 OCC (c) Hỡnh 5.3: Hiêu suòt cıa thu™t tốn gom cˆm khái niªm K∏t qu£ thác nghiêm trờn Hỡnh 5.3(a) cho thòy hểng tip cn on-the-fly ca OCC thác sá cÊi thiên thèi gian thác hiên gom cm Tuy nhiờn, OCC vđn b Ênh h˜ng bi chi phí cıa viªc tái gom cˆm bẻ d liêu mó ẻc ềc cp nht OCC-ph bin giÊi quyt vòn ny băng cỏch s dng k thu™t qu£n l˛ c™p nh™t khái niªm phÍ bi∏n Hình 5.3(b) trỡnh by kt quÊ thớ nghiêm vểi ẻ o AUP Chỳng ta cú th thòy cỏc phẽng phỏp dáa trờn FCA thèng Đt ềc hiêu suòt tật hẽn HAC Ngoi ra, hiêu suòt dáa trờn AUP ca OCC-ph bin tật hẽn so vểi FCA, chng minh cỏc cơng th˘c lu™n l˛ ˜Ịc t§o cho cˆm khỏi niêm l phự hềp biu din còu trỳc phõn còp khỏi niêm Hỡnh 5.3(c) biu din kt quÊ thớ nghiêm vểi ẻ o Silhouette, cho thòy FFCA HAC có k∏t qu£ Silhouette t˜Ïng Ëi giËng nhau, FFCA tËt hÏn mỴt chút, k∏t qu£ cıa k-means nhßt K∏t qu£ tËt nhßt ph˜Ïng pháp OCC-phÍ bin, chng minh phẽng phỏp ny thớch hềp vểi ng˙ nghỉa ˜Ịc truy∑n §t bi cơng th˘c lu™n l˛ bi∫u diπn hành vi cıa mã Ỵc 25 CH◊ÃNG 6.1 KịT LN VÀ H◊ŒNG M– RÀNG Tóm t≠t k∏t lu™n Lu™n án ã §t ˜Ịc ba mˆc tiêu nghiên c˘u vĨi óng góp sau • ∑ xt ph˜Ïng pháp ∫ gi£i quy∏t vßn ∑ bùng nÍ khụng gian trĐng thỏi băng phẽng phỏp kim tra gia tng tng phản dáa trờn xuòt !-regions ã xuòt mẻt hểng tip cn ỏp dng suy din tru t˜Ịng ∫ gi£i quy∏t vßn ∑ làm rËi mã, vĨi viªc phân tách b˜Ĩc gi£i rËi vĨi b˜Ĩc ki∫m tra mơ hình, t¯ ó tránh ph£i c™p nh™t cơng cˆ ki∫m tra mơ hình mÈi x˚ l˛ kˇ thut lm rậi mó mểi ã xuòt phẽng phỏp phõn tớch khỏi niêm lun l mó ẻc, k thut gom cˆm khái niªm liên tˆc kˇ thu™t qu£n l˛ t™p c™n phÍ bi∏n; giúp xây d¸ng giàn khái niêm mó ẻc, xõy dáng v cp nht cõy phõn còp khỏi niêm mó ẻc 6.2 Hểng m rẻng Cỏc h˜Ĩng nghiên c˘u cıa lu™n án v®n cịn nhi∑u ti∑m nng m rẻng nh sau ã Phỏt trin ẻ o if imf ∫ có th∫ áp dˆng cho chẽng trỡnh khụng phÊi mó ẻc ã p dng phẽng phỏp hc mỏy xõy dáng !-instruction ã Nghiên c˘u c£i ti∏n ph˜Ïng pháp gom cˆm khái niªm lun l mó ẻc ã M rẻng cỏc phộp tru t˜Ịng hố mã Ỵc ∫ có th∫ tÍng qt hố ˜Ịc nhi∑u cơng th˘c ∞c t£ lu™n l˛ mã Ỵc hÏn • Nghiên c˘u theo h˜Ĩng áp dˆng ph˜Ïng pháp hc mỏy thậng hoỏ cụng thc mó ẻc 26 ... rối mã Hệ thống hố cơng thức luận lý mã độc [OB2] [OB3] Luận án đóng góp Luận án đóng góp Khung thức xử lý kỹ thuật làm rối mã Phân tích khái niệm luận lý mã độc Ngôn ngữ trừu tượng Gom cụm khái. .. Cơng cụ kiểm tra mơ hình CFG Đặc tả luận lý mã độc Kết kiểm tra Hình 2.1: Áp dˆng ki∫m tra mơ hình ∫ phỏt hiên mó ẻc ậi vểi bi toỏn ỏp dng kim tra mụ hỡnh phỏt hiên mó ẻc, nh mơ t£ Hình 2.1,... Phương pháp kiểm tra mơ hình phát mã độc Hạn chế phương pháp công nghiệp Vấn đề Đặc tả hành vi nguy hại công thức luận lý Bùng nổ không gian trạng thái [OB1] Luận án đóng góp Phương pháp kiểm tra

Ngày đăng: 03/01/2019, 12:52

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan