$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

[국내논문] Light-weight Classification Model for Android Malware through the Dimensional Reduction of API Call Sequence using PCA 원문보기

韓國컴퓨터情報學會論文誌 = Journal of the Korea Society of Computer and Information, v.27 no.11, 2022년, pp.123 - 130  

Jeon, Dong-Ha (Dept. of Defense Science, Korea National Defense University) ,  Lee, Soo-Jin (Dept. of Defense Science, Korea National Defense University)

초록
AI-Helper 아이콘AI-Helper

최근 API Call 정보를 기반으로 안드로이드 악성코드를 탐지 및 분류하는 연구가 활발하게 진행되고 있다. 그러나 API Call 기반의 악성코드 분류는 방대한 데이터 양과 높은 차원 특성으로 인해 악성코드 분석과 학습 모델 구축 과정에서 과도한 시간과 자원이 소모된다는 심각한 제한사항을 가진다. 이에 본 연구에서는 방대한 API Call 정보를 포함하고 있는 CICAndMal2020 데이터세트를 대상으로 PCA(Principal Component Analysis, 주성분분석)를 사용하여 차원을 대폭 축소시킨 후 LightGBM, Random Forest, k-Nearest Neighbors 등의 다양한 분류 기법 모델을 적용하여 결과를 분석하였다. 그 결과 PCA가 원본 데이터의 특성을 유지하면서 데이터 특성의 차원은 획기적으로 감소시키고 우수한 악성코드 분류 성능을 달성함을 확인하였다. 이진분류다중분류 모두 데이터 특성을 전체 크기의 1% 수준 이하로 줄이더라도 이전 연구 결과보다 높은 수준의 정확도를 나타내었다.

Abstract AI-Helper 아이콘AI-Helper

Recently, studies on the detection and classification of Android malware based on API Call sequence have been actively carried out. However, API Call sequence based malware classification has serious limitations such as excessive time and resource consumption in terms of malware analysis and learnin...

주제어

표/그림 (9)

AI 본문요약
AI-Helper 아이콘 AI-Helper

제안 방법

  • Benign과 Malware 학습 서브데이터에서 주성분을 10개부터 증가시키면서 추출하고 3가지의 분류모델에 학습시킨 후 성능 검증 데이터세트를 대상으로 성능 검증을 실시하였다. 실험 결과, 주성분이 100개 이하일 때 가장 높은 정확도의 분류 성능을 나타냈으며 이진분류 및 다중분류 결과는 Table 3 및 Table 4에서 확인할 수 있다.
  • Malware에 해당하는 CICAndMal2020 데이터세트와 Benign에 해당하는 Androzoo 데이터세트를 사용하여 악성코드 여부를 분류하는 이진분류와 악성코드 카테고리를 분류하는 다중분류로 구분하여 실험을 진행하였다. 앞서 언급한 실험 환경에서 효율적으로 해당 고차원 데이터세트를 학습하고 성능을 검증하기 위해 각 데이터세트에서 일부 데이터를 추출하여 서브데이터세트를 구성하였다.
  • 1에서 보는 바와 같다. 먼저 API Call 정보를 포함하고 있는 CICAndMal2020 데이터세트와 정상파일인 Androzoo를 대상으로 PCA를 통하여 데이터세트 특성 차원의 크기를 대폭 축소하면서 주성분을 추출한다. 다음으로 추출된 주성분 특성을 기반으로 다양한 분류 기법을 적용하여 악성코드를 이진분류 및 다중분류를 실시한다.
  • 본 연구에서는 PCA를 활용하여 원래 데이터의 특성 총 9, 503개에서 주성분(PC)의 숫자를 늘려나가며 분산도(새롭게 추출된 주성분이 기존 데이터의 전체 특성을 설명할 수 있는 정도)를 측정하였고, 새로운 주성분을 추출하여 다양한 악성코드 분류 기법 적용을 통해 탐지 성능을 확인하는 방식으로 연구를 진행하였다.
  • Malware에 해당하는 CICAndMal2020 데이터세트와 Benign에 해당하는 Androzoo 데이터세트를 사용하여 악성코드 여부를 분류하는 이진분류와 악성코드 카테고리를 분류하는 다중분류로 구분하여 실험을 진행하였다. 앞서 언급한 실험 환경에서 효율적으로 해당 고차원 데이터세트를 학습하고 성능을 검증하기 위해 각 데이터세트에서 일부 데이터를 추출하여 서브데이터세트를 구성하였다.
  • 이러한 문제점을 해결하고 저사양의 컴퓨팅 환경에서도 API Call 정보를 기반으로 한 안드로이드 악성코드 탐지 및 분류가 가능하도록 경량화하기 위해 본 연구에서는 고차원 데이터를 효과적으로 분석해주는 PCA를 활용하였다. 데이터 시각화, 군집화, 압축 등에 광범위하게 활용되는 PCA는 고차원의 데이터세트를 특성 왜곡을 최소화하면서 축소하는 효과적인 기법으로 주어진 데이터세트의 무수히 많은 속성에서 전체 데이터의 분산을 가장 잘 설명해주는 주성분이라는 새로운 속성을 적절한 수만큼 뽑아낸다.
  • 따라서 일반적인 컴퓨팅 환경에서는 분석이나 학습모델 구축이 심각하게 제한되어 과도한 시간과 자원 소모를 방지하고 효율적인 성능 도출을 보장하기 위해서는 악성코드 분류 이전에 차원 축소가 반드시 선행되어야 한다. 이러한 문제점을 해결하기 위해 본 논문에서는 기존에 널리 활용되던 특성 선택 기법이 아닌 PCA를 사용하여 차원을 대폭 축소시킨 후 LightGBM, Random Forest 및 KNN 등의 3가지 머신러닝 기법을 적용하여 분류를 시도하였다.
  • 학습 및 성능 검증 서브데이터세트 각각에서 추출한 주성분은 성능 검증 과정에 이용하지 않고, 학습 서브 데이터세트에서 추출한 주성분만을 성능 검증 서브 데이터세트에 적용하여 실험을 진행하였다. 이는 주성분을 추출하는 데이터세트와 주성분을 적용하는 데이터세트를 달리함으로써 객관적인 주성분 추출 과정을 만들기 위함이다.

대상 데이터

  • 먼저 이진분류를 수행하기 위해서 Benign에서 1개의 클래스당 1,400개씩 총 5개 클래스(총 7,000개)로 서브데이터를 추출하였다. Malware 또한 Benign 서브데이터의 수를 고려하여 각 클래스당 600개씩 총 12개 클래스에서 서브데이터를 추출하였다. 이 때, 기존 14개 클래스에서 No_Category 및 Zero_day 클래스는 제외하였고, 가장 적은 수의 악성코드를 가지고 있는 FileInfactor(669개) 클래스를 기준으로 추출할 서브데이터의 수를 판단하였다.
  • Table 1에서 보는 바와 같이 실험에 사용된 카테고리는 총 12개(179,988개)로 No_Category 클래스와 Zero_day 클래스에 해당하는 악성코드는 제외하였다.
  • 먼저 이진분류를 수행하기 위해서 Benign에서 1개의 클래스당 1,400개씩 총 5개 클래스(총 7,000개)로 서브데이터를 추출하였다. Malware 또한 Benign 서브데이터의 수를 고려하여 각 클래스당 600개씩 총 12개 클래스에서 서브데이터를 추출하였다.
  • 본 논문에서는 CICAndMal2020 데이터세트를 대상으로 안드로이드 악성코드 탐지 및 분류를 시도하였다.
  • 정상파일(Benign)은 CICAndMal2020 악성코드(Malware) 데이터 수를 고려하여 Androzoo(http://androzoo.uni.lu) 데이터 162,901개를 사용하였다. Table 2에서 보는 바와 같이 정상파일은 총 5개의 하위 데이터세트로 분류되어 있지만, 각 데이터세트별로 구분되는 특성을 가지지 않으며 단지 데이터 수집 시기에서만 차이가 있다.
  • 제안한 방안을 검증하기 위하여 CICAndMal2020 데이터세트의 특성 총 9,503개에 대해 PCA를 적용하여 새로운 주성분을 추출하였다. 추출된 주성분을 개수 별로 구분하여 3가지 분류모델에 학습시킨 후 악성코드 분류 성능을 측정한 결과, 데이터 특성 차원은 획기적으로 감소시키면서도 기존 연구들에 비해 높은 분류 성능을 달성하였다.

데이터처리

  • 서브데이터 추출 과정은 10번 반복 수행하여 총 10회의 실험을 실시하고 평균값을 산출하여 결과를 분석하였다. 즉 10회 반복 실험을 진행하면서 사용된 서브데이터세트 는 모두 상이하며, 원본 데이터 전체는 아니지만 최대한 많은 수의 데이터가 실험에 사용될 수 있도록 노력하였다.
  • 초도 실험에서는 XGBoost, LightGBM, KNN, SVM 및 Random Forest 총 5가지의 분류모델을 적용하여 실험을 진행하였으나, XGBoost는 LightGBM에 비해 탐지 성능이 많이 저하되었으며 SVM 또한 만족할만큼의 탐지 성능이 관찰되지 않았다. 이러한 이유로 본 실험은 LightGBM, Random Forest 및 KNN 3가지의 분류모델만 적용하여 진행하고 결과를 분석하였다.
본문요약 정보가 도움이 되었나요?

참고문헌 (14)

  1. Statista Research Department, Global market share smartphone operating systems of unit shipments 2014-2023, https:// www.statista.com/statistics/272307/market-share-forecast-forsmartphone-operating-systems/ 

  2. Statcounter, Mobile Operating System Market Share Worldwide, https://gs.statcounter.com/os-market-share/mobile/south-korea/#monthly-202108-202208 

  3. Zimperium, Financially Motivated Mobile Scamware Exceeds 100M Installations, https://blog.zimperium.com/dark-herringandroid-.scamware-exceeds-100m-installations 

  4. H. Abdi and L. J. Williams, Principal component analysis, Wiley interdisciplinary reviews: computational statistics 2 (4), 433-459, 2010. 

  5. L. Shilpa, J. Sini, and V. Bhupendra, "Feature Reduction using Principal Component Analysis for Anomaly-Based Intrusion Detection on NSL-KDD", International Journal of Engineering Science and Technology, Vol. 2, No. 6, pp.1790-1799, July. 2010, DOI: 10.1.1.168.1957 

  6. Y. Liu, L. Zhang, and Y. Guan, "Sketch-based streaming PCA algorithm for network-wide traffic anomaly detection ", 2010 IEEE 30th International Conference on Distributed Computing Systems, pp.807-816, Jun. 2010, DOI: 10.1109/ ICDCS.2010245 

  7. Hyoseon Kyew and Minhae Kwon, "PCA-Based Low-Complexity Anomaly", KCIS, Vol. 46, No. 6, pp.941-955, June. 2021, DOI: 10.7840/kics.2021.46.6.941 

  8. W. Subhash, L. Parashar, and U. Singh. "Intrusion detection system using PCA with random forest approach", 2020 International Conference on Electronics and Sustainable Communication Systems (ICESC), IEEE, pp.803-808, Aug. 2020, DOI: 10.1109/ICESC48915.2020.9155656 

  9. Dissanayake, Maheshi B. "Feature Engineering for Cyber-attack detection in Internet of Things.", I.J Wireless and Microwave Technologies, Vol. 6, pp.46-54, Dec. 2021, DOI: 10.5815/ijwmt.2021.06.05. 

  10. A. Rahali, A. H. Lashkari, G. Kaur, L. Taheri, F. Gagnon, and F. Massicotte, "DIDroid: Android Malware Classification and Characterization Using Deep Image Learning", Proc. of the 10th International Conference on Communication and Network Security (ICCNS2020), pp.70-82, Nov. 2020, DOI: 10.1145/3442520.3442522 

  11. N. Peiravian and X. Zhu, "Machine Learning for Android Malware Detection Using Permission and API Calls", Proc. of the 2013 IEEE 25th International Conference on Tools with Artificial Intelligence, pp.300-305, Feb. 2014, DOI: 10.1109/ICTAI.2013.53 

  12. A. D. Lorenzo, F. Martinelli, E. Medvet, F. Mercaldo and A. Santone, "Visualizing the outcome of dynamic analysis of Android malware with VizMal", Journal of Information Security and Applications, Vol. 50, Feb. 2020, DOI: 10.1016/j.jisa.2019.102423 

  13. D. S. Keyes, B. Li, G. Kaur, A. H. Lashkari, F. Gagnon and F. Massicotte, "EntropLyzer: Android Malware Classification and Characterization Using Entropy Analysis of Dynamic Characteristics", Proc. of the 2021 Reconciling Data Analytics, Automation, Privacy, and Security: A Big Data Challenge (RDAAPS), pp.1-8, May. 2021, DOI: 10.1109/RDAAPS48126.2021.9452002 

  14. Hee-Jin Hwang and Soojin Lee, "Dimensionality Reduction of Feature Set for API Call based Android Malware Classification", Journal of The Korea Society of Computer and Information, Vol. 26, No. 11, pp.41-49, Nov. 2010, DOI: 10.9708/jksci.2021.26.11.041 

관련 콘텐츠

오픈액세스(OA) 유형

FREE

Free Access. 출판사/학술단체 등이 허락한 무료 공개 사이트를 통해 자유로운 이용이 가능한 논문

저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로