Program Behavior Analysis and Clustering using Performance Counters

Understanding the dynamic behavior of computer programs during normal working conditions is an important task, which has multiple security benefits such as the development of behavior-based anomaly detection, vulnerability discovery, and patching. Existing works achieved this goal by collecting and...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Kadiyala, Sai Praveen, Kartheek, Akella, Truong-Huu, Tram
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page
container_issue
container_start_page
container_title
container_volume
creator Kadiyala, Sai Praveen
Kartheek, Akella
Truong-Huu, Tram
description Understanding the dynamic behavior of computer programs during normal working conditions is an important task, which has multiple security benefits such as the development of behavior-based anomaly detection, vulnerability discovery, and patching. Existing works achieved this goal by collecting and analyzing various data including network traffic, system calls, instruction traces, etc. In this paper, we explore the use of a new type of data, performance counters, to analyze the dynamic behavior of programs. Using existing primitives, we develop a tool named perfextract to capture data from different performance counters for a program during its startup time, thus forming multiple time series to represent the dynamic behavior of the program. We analyze the collected data and develop a semi-supervised clustering algorithm that allows us to classify each program using its performance counter time series into a specific group and to identify the intrinsic behavior of that group. We carry out extensive experiments with 18 real-world programs that belong to 4 groups including web browsers, text editors, image viewers, and audio players. The experimental results show that the examined programs can be accurately differentiated based on their performance counter data regardless of whether programs are run in physical or virtual environments.
doi_str_mv 10.48550/arxiv.2104.01518
format Article
fullrecord <record><control><sourceid>arxiv_GOX</sourceid><recordid>TN_cdi_arxiv_primary_2104_01518</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2104_01518</sourcerecordid><originalsourceid>FETCH-LOGICAL-a678-aab9174425f33718ed3f9e76762d601f919f8717430a5e4b7fb71d84880a4b503</originalsourceid><addsrcrecordid>eNotj71OwzAUhb0woMIDMOEXSPCN7dgZW6v8SJXo0D26IXaxlDjVNanat6ctLOcM59ORPsaeQJTKai1ekE7xWFYgVClAg71nbkvTnnDkK_-NxzgRXyYczjlmjqnnbpjzj6eY9nzO19x6ChONmL48d9OcLmN-YHcBh-wf_3vBdq_rnXsvNp9vH265KbA2tkDsGjBKVTpIacD6XobGm9rUVV8LCA00wZoLIQVqrzoTOgO9VdYKVJ0WcsGe_25vFu2B4oh0bq827c1G_gIAAkRK</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype></control><display><type>article</type><title>Program Behavior Analysis and Clustering using Performance Counters</title><source>arXiv.org</source><creator>Kadiyala, Sai Praveen ; Kartheek, Akella ; Truong-Huu, Tram</creator><creatorcontrib>Kadiyala, Sai Praveen ; Kartheek, Akella ; Truong-Huu, Tram</creatorcontrib><description>Understanding the dynamic behavior of computer programs during normal working conditions is an important task, which has multiple security benefits such as the development of behavior-based anomaly detection, vulnerability discovery, and patching. Existing works achieved this goal by collecting and analyzing various data including network traffic, system calls, instruction traces, etc. In this paper, we explore the use of a new type of data, performance counters, to analyze the dynamic behavior of programs. Using existing primitives, we develop a tool named perfextract to capture data from different performance counters for a program during its startup time, thus forming multiple time series to represent the dynamic behavior of the program. We analyze the collected data and develop a semi-supervised clustering algorithm that allows us to classify each program using its performance counter time series into a specific group and to identify the intrinsic behavior of that group. We carry out extensive experiments with 18 real-world programs that belong to 4 groups including web browsers, text editors, image viewers, and audio players. The experimental results show that the examined programs can be accurately differentiated based on their performance counter data regardless of whether programs are run in physical or virtual environments.</description><identifier>DOI: 10.48550/arxiv.2104.01518</identifier><language>eng</language><subject>Computer Science - Cryptography and Security</subject><creationdate>2021-04</creationdate><rights>http://creativecommons.org/licenses/by/4.0</rights><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>228,230,776,881</link.rule.ids><linktorsrc>$$Uhttps://arxiv.org/abs/2104.01518$$EView_record_in_Cornell_University$$FView_record_in_$$GCornell_University$$Hfree_for_read</linktorsrc><backlink>$$Uhttps://doi.org/10.48550/arXiv.2104.01518$$DView paper in arXiv$$Hfree_for_read</backlink></links><search><creatorcontrib>Kadiyala, Sai Praveen</creatorcontrib><creatorcontrib>Kartheek, Akella</creatorcontrib><creatorcontrib>Truong-Huu, Tram</creatorcontrib><title>Program Behavior Analysis and Clustering using Performance Counters</title><description>Understanding the dynamic behavior of computer programs during normal working conditions is an important task, which has multiple security benefits such as the development of behavior-based anomaly detection, vulnerability discovery, and patching. Existing works achieved this goal by collecting and analyzing various data including network traffic, system calls, instruction traces, etc. In this paper, we explore the use of a new type of data, performance counters, to analyze the dynamic behavior of programs. Using existing primitives, we develop a tool named perfextract to capture data from different performance counters for a program during its startup time, thus forming multiple time series to represent the dynamic behavior of the program. We analyze the collected data and develop a semi-supervised clustering algorithm that allows us to classify each program using its performance counter time series into a specific group and to identify the intrinsic behavior of that group. We carry out extensive experiments with 18 real-world programs that belong to 4 groups including web browsers, text editors, image viewers, and audio players. The experimental results show that the examined programs can be accurately differentiated based on their performance counter data regardless of whether programs are run in physical or virtual environments.</description><subject>Computer Science - Cryptography and Security</subject><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2021</creationdate><recordtype>article</recordtype><sourceid>GOX</sourceid><recordid>eNotj71OwzAUhb0woMIDMOEXSPCN7dgZW6v8SJXo0D26IXaxlDjVNanat6ctLOcM59ORPsaeQJTKai1ekE7xWFYgVClAg71nbkvTnnDkK_-NxzgRXyYczjlmjqnnbpjzj6eY9nzO19x6ChONmL48d9OcLmN-YHcBh-wf_3vBdq_rnXsvNp9vH265KbA2tkDsGjBKVTpIacD6XobGm9rUVV8LCA00wZoLIQVqrzoTOgO9VdYKVJ0WcsGe_25vFu2B4oh0bq827c1G_gIAAkRK</recordid><startdate>20210403</startdate><enddate>20210403</enddate><creator>Kadiyala, Sai Praveen</creator><creator>Kartheek, Akella</creator><creator>Truong-Huu, Tram</creator><scope>AKY</scope><scope>GOX</scope></search><sort><creationdate>20210403</creationdate><title>Program Behavior Analysis and Clustering using Performance Counters</title><author>Kadiyala, Sai Praveen ; Kartheek, Akella ; Truong-Huu, Tram</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-a678-aab9174425f33718ed3f9e76762d601f919f8717430a5e4b7fb71d84880a4b503</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2021</creationdate><topic>Computer Science - Cryptography and Security</topic><toplevel>online_resources</toplevel><creatorcontrib>Kadiyala, Sai Praveen</creatorcontrib><creatorcontrib>Kartheek, Akella</creatorcontrib><creatorcontrib>Truong-Huu, Tram</creatorcontrib><collection>arXiv Computer Science</collection><collection>arXiv.org</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Kadiyala, Sai Praveen</au><au>Kartheek, Akella</au><au>Truong-Huu, Tram</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Program Behavior Analysis and Clustering using Performance Counters</atitle><date>2021-04-03</date><risdate>2021</risdate><abstract>Understanding the dynamic behavior of computer programs during normal working conditions is an important task, which has multiple security benefits such as the development of behavior-based anomaly detection, vulnerability discovery, and patching. Existing works achieved this goal by collecting and analyzing various data including network traffic, system calls, instruction traces, etc. In this paper, we explore the use of a new type of data, performance counters, to analyze the dynamic behavior of programs. Using existing primitives, we develop a tool named perfextract to capture data from different performance counters for a program during its startup time, thus forming multiple time series to represent the dynamic behavior of the program. We analyze the collected data and develop a semi-supervised clustering algorithm that allows us to classify each program using its performance counter time series into a specific group and to identify the intrinsic behavior of that group. We carry out extensive experiments with 18 real-world programs that belong to 4 groups including web browsers, text editors, image viewers, and audio players. The experimental results show that the examined programs can be accurately differentiated based on their performance counter data regardless of whether programs are run in physical or virtual environments.</abstract><doi>10.48550/arxiv.2104.01518</doi><oa>free_for_read</oa></addata></record>
fulltext fulltext_linktorsrc
identifier DOI: 10.48550/arxiv.2104.01518
ispartof
issn
language eng
recordid cdi_arxiv_primary_2104_01518
source arXiv.org
subjects Computer Science - Cryptography and Security
title Program Behavior Analysis and Clustering using Performance Counters
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-24T14%3A19%3A11IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-arxiv_GOX&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Program%20Behavior%20Analysis%20and%20Clustering%20using%20Performance%20Counters&rft.au=Kadiyala,%20Sai%20Praveen&rft.date=2021-04-03&rft_id=info:doi/10.48550/arxiv.2104.01518&rft_dat=%3Carxiv_GOX%3E2104_01518%3C/arxiv_GOX%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true