• Title/Summary/Keyword: Fuzzing

Search Result 63, Processing Time 0.026 seconds

Software Vulnerability Prediction System Using Machine Learning Algorithm (기계학습 알고리즘을 이용한 소프트웨어 취약 여부 예측 시스템)

  • Choi, Minjun;Kim, Juhwan;Yun, Joobeom
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.28 no.3
    • /
    • pp.635-642
    • /
    • 2018
  • In the Era of the Fourth Industrial Revolution, we live in huge amounts of software. However, as software increases, software vulnerabilities are also increasing. Therefore, it is important to detect and remove software vulnerabilities. Currently, many researches have been studied to predict and detect software security problems, but it takes a long time to detect and does not have high prediction accuracy. Therefore, in this paper, we describe a method for efficiently predicting software vulnerabilities using machine learning algorithms. In addition, various machine learning algorithms are compared through experiments. Experimental results show that the k-nearest neighbors prediction model has the highest prediction rate.

A Methodology for Security Vulnerability Assessment Process on Binary Code (실행코드 취약점 분석 프로세스 방법론)

  • Hwang, Seong-Oun
    • The Journal of the Institute of Internet, Broadcasting and Communication
    • /
    • v.12 no.5
    • /
    • pp.237-242
    • /
    • 2012
  • Cyber attacks have rapidly increased by exploiting the underlying vulnerabilities in the target software. However, identifying and correcting these vulnerabilities are extremely difficult and time consuming tasks. To address these problems efficiently, we propose a systematic methodology for security vulnerability assessment process on binary code in the paper. Specifically, we first classified the existing vulnerabilities based on whether the target software run in a Web environment and features of the software. Based on the classification, we determined the list and scope of the vulnerabilities. As our future research direction, we need to further refine and validate our methodology.

Icefex: Protocol Format Extraction from IL-based Concolic Execution

  • Pan, Fan;Wu, Li-Fa;Hong, Zheng;Li, Hua-Bo;Lai, Hai-Guang;Zheng, Chen-Hui
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • v.7 no.3
    • /
    • pp.576-599
    • /
    • 2013
  • Protocol reverse engineering is useful for many security applications, including intelligent fuzzing, intrusion detection and fingerprint generation. Since manual reverse engineering is a time-consuming and tedious process, a number of automatic techniques have been proposed. However, the accuracy of these techniques is limited due to the complexity of binary instructions, and the derived formats have missed constraints that are critical for security applications. In this paper, we propose a new approach for protocol format extraction. Our approach reasons about only the evaluation behavior of a program on the input message from concolic execution, and enables field identification and constraint inference with high accuracy. Moreover, it performs binary analysis with low complexity by reducing modern instruction sets to BIL, a small, well-specified and architecture-independent language. We have implemented our approach into a system called Icefex and evaluated it over real-world implementations of DNS, eDonkey, FTP, HTTP and McAfee ePO protocols. Experimental results show that our approach is more accurate and effective at extracting protocol formats than other approaches.

Deduplication and Exploitability Determination of UAF Vulnerability Samples by Fast Clustering

  • Peng, Jianshan;Zhang, Mi;Wang, Qingxian
    • KSII Transactions on Internet and Information Systems (TIIS)
    • /
    • v.10 no.10
    • /
    • pp.4933-4956
    • /
    • 2016
  • Use-After-Free (UAF) is a common lethal form of software vulnerability. By using tools such as Web Browser Fuzzing, a large amount of samples containing UAF vulnerabilities can be generated. To evaluate the threat level of vulnerability or to patch the vulnerabilities, automatic deduplication and exploitability determination should be carried out for these samples. There are some problems existing in current methods, including inadequate pertinence, lack of depth and precision of analysis, high time cost, and low accuracy. In this paper, in terms of key dangling pointer and crash context, we analyze four properties of similar samples of UAF vulnerability, explore the method of extracting and calculate clustering eigenvalues from these samples, perform clustering by fast search and find of density peaks on a large number of vulnerability samples. Samples were divided into different UAF vulnerability categories according to the clustering results, and the exploitability of these UAF vulnerabilities was determined by observing the shape of class cluster. Experimental results showed that the approach was applicable to the deduplication and exploitability determination of a large amount of UAF vulnerability samples, with high accuracy and low performance cost.

Software Vulnerability Prediction System Using Neural Network (신경망을 이용한 소프트웨어 취약 여부 예측 시스템)

  • Choi, Minjun;Koo, Dongyoung;Yun, Joobeom
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.29 no.3
    • /
    • pp.557-564
    • /
    • 2019
  • As the number and type of software increases, those security vulnerabilities are also increasing. Various types of software may have multiple vulnerabilities and those vulnerabilities as they can cause irrecoverable significant damage must be detected and deleted quickly. Various studies have been carried out to detect the vulnerability of the current software, but it is slow, and prediction accuracy is low. Therefore, in this paper, we describe a method to efficiently predict software vulnerability by using neural network algorithm and compare prediction accuracy with conventional system using machine learning algorithm. As a result of the experiment, the prediction system proposed in this paper showed the highest prediction rate.

Survey on Advances in Test Case Generation and Reduction Algorithm of Fuzz Testing (퍼징 테스트 케이스 생성 및 축약 알고리즘 발전에 대한 연구)

  • Bae, Hyo-Bin;Eom, Jung-Ho;Kim, Hyun-Joo;Kim, Ik-Kyun;Chung, Tai-Myoung
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2013.11a
    • /
    • pp.831-834
    • /
    • 2013
  • 최근 퍼징(Fuzzing, Fuzz Testing)이 소프트웨어의 취약점을 찾아내기 위한 방법으로 활발하게 사용되고 있다. 퍼징은 반복적으로 비정상적인 데이터를 무작위로 생성하여 대상 소프트웨어에 입력 값으로 전달해 오작동을 유도하고, 오작동의 원인을 분석하여 소프트웨어의 취약성을 찾아낸다. 퍼징에서 사용되는 입력 값인 테스트 케이스에 따라서 취약점 탐지율 및 탐지 시간이 결정된다. 따라서 어떻게, 어떤 테스트 케이스를 생성하여 퍼징을 실행 할 것인지가 퍼징 연구의 핵심이다. 퍼징을 위해 생성하는 테스트 케이스는 숫자가 굉장히 많기 때문에 최근에 테스트 케이스의 크기를 축약하여 퍼징 결과 분석을 위해 소요되는 시간을 줄이는 연구가 발하게 진행되고 있다. 본 논문에서는 테스트 케이스 축약에 이용되는 다양한 알고리즘들에 대해 소개하고, 그 각각을 비교 분석하여 향후 퍼징의 테스트 케이스 축약에 관한 연구에 기여하고자 한다.

Automatic Detection and Analysis of Desktop Bus'(D-Bus) Privilege Bypass in Tizen (타이젠 용 데스크톱 버스 (D-Bus) 권한 우회 취약점 분석 및 자동 탐지)

  • Kim, Dongsung;Choi, Hyoung-Kee
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.30 no.6
    • /
    • pp.1023-1030
    • /
    • 2020
  • Wearable devices, such as a smart watch and a wrist band, store owner's private information in the devices so that security in a high level is required. Applications developed by third parties in Tizen request for an access to designated services through the desktop bus (D-Bus). The D-Bus verifies application's privileges to grant the request for an access. We developed a fuzzing tool, so-called DAN (the D-bus ANalyzer), to detect errors in implementations for privilege verifications and access controls within Tizen's system services. The DAN has found a number of vulnerable services which granted accesses to unauthorized applications. We built a proof-of-concept application based on those findings to demonstrate a bypass in the privilege examination.

Enhancement of Accuracy of Exploitability Analysis Tools for Crashes (크래시의 위험도에 대한 분석 도구의 정교성 향상)

  • Jeon, Hyeon-gu;Eom, Ki-Jin;Mok, Seong-Kyun;Cho, Eun-Sun
    • KIISE Transactions on Computing Practices
    • /
    • v.22 no.4
    • /
    • pp.178-183
    • /
    • 2016
  • To enhance the reliability of programs, developers use fuzzing tools in test processes to identify vulnerabilities so that they can be fixed ahead of time. In this case, the developers consider the security-related vulnerabilities to be the most critical ones that should be urgently fixed to avoid possible exploitation by attackers. However, developers without much experience of analysis of vulnerabilities usually rely on tools to pick out the security-related crashes from the normal crashes. In this paper, we suggest a static analysis-based tool to help developers to make their programs more reliable by identifying security-related crashes among them. This paper includes experimental results, and compares them to the results from MSEC !exploitable for the same sets of crashes.

Vulnerability Analysis on the Mobile Core Network using OpenAirInterface (OpenAirInterface를 통한 모바일 코어네트워크 보안위협 분석)

  • Oh, In Su;Park, Jun Young;Jung, Eun Seon;Yim, Kang Bin
    • Smart Media Journal
    • /
    • v.9 no.3
    • /
    • pp.71-79
    • /
    • 2020
  • Mobile network is used by many users worldwide for diverse services, including phone-call, messaging and data transfer over the Internet. However, this network may experience massive damage if it is exposed to cyber-attacks or denial-of-service attacks via wireless communication interference. Because the mobile network is also used as an emergency network in cases of disaster, evaluation or verification for security and safety is necessary as an important nation-wide asset. However, it is not easy to analyze the mobile core network because it's built and serviced by private service providers, exclusively operated, and there is even no separate network for testing. Thus, in this paper, a virtual mobile network is built using OpenAirInterface, which is implemented based on 3GPP standards and provided as an open source software, and the structure and protocols of the core network are analyzed. In particular, the S1AP protocol messages captured on S1-MME, the interface between the base station eNodeB and the mobility manager MME, are analyzed to identify potential security threats by evaluating the effect of the messages sent from the user terminal UE to the mobile core network.

An Implementation of JTAG API to Perform Dynamic Program Analysis for Embedded Systems (임베디드 시스템 동적 프로그램 분석을 위한 JTAG API 구현)

  • Kim, Hyung Chan;Park, Il Hwan
    • KIPS Transactions on Computer and Communication Systems
    • /
    • v.3 no.2
    • /
    • pp.31-42
    • /
    • 2014
  • Debugger systems are necessary to apply dynamic program analysis when evaluating security properties of embedded system software. It may be possible to make the use of software-based debugger and/or DBI framework if target devices support general purpose operating systems, however, constraints on applicability as well as environmental transparency might be incurred thereby hindering overall analyzability. Analysis with JTAG (IEEE 1149.1) debugging devices can overcome these difficulties in that no change would be involved in terms of internal software environment. In that sense, JTAG API can facilitate to practically perform dynamic program analysis for evaluating security properties of target device software. In this paper, we introduce an implementation of JTAG API to enable analysis of ARM core based embedded systems. The API function set includes the categories of debugger and target device controls: debugging environment and operation. To verify API applicability, we also provide example analysis tool implementations: our JTAG API could be used to build kernel function fuzzing and live memory forensics modules.