• Title/Summary/Keyword: 소스 코드 분석

Search Result 336, Processing Time 0.034 seconds

Analysis of Detection Ability Impact of Clang Static Analysis Tool by Source Code Obfuscation Technique (소스 코드 난독화 기법에 의한 Clang 정적 분석 도구의 성능 영향 분석)

  • Jin, Hongjoo;Park, Moon Chan;Lee, Dong Hoon
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.28 no.3
    • /
    • pp.605-615
    • /
    • 2018
  • Due to the rapid growth of the Internet of Things market, the use of the C/C++ language, which is the most widely used language in embedded systems, is also increasing. To improve the quality of code in the C/C++ language and reduce development costs, it is better to use static analysis, a software verification technique that can be performed in the first half of the software development life cycle. Many programs use static analysis to verify software safety and many static analysis tools are being used and studied. In this paper, we use Clang static analysis tool to check security weakness detection performance of verified test code. In addition, we compared the static analysis results of the test codes applied with the source obfuscation techniques, layout obfuscation, data obfuscation, and control flow obfuscation techniques, and the static analysis results of the original test codes, Analyze the detection ability impact of the Clang static analysis tool.

Development of bio-signal analysis system applying source code based on various algorithm development tools (다양한 알고리즘 개발 툴 기반의 소스 코드를 적용한 생체신호 분석 시스템 개발)

  • Ju, Mun-Il;Kim, Won-Il;Kim, Hui-Cheol
    • Proceedings of the Korean Institute of Information and Commucation Sciences Conference
    • /
    • 2018.10a
    • /
    • pp.238-240
    • /
    • 2018
  • Recently, healthcare services have been developed and studied using various bio-signal analysis tools. Most bio-signal analysis studies utilize Matlab and R Programming. However, in order to apply the algorithm developed by Matlab and R Programming to the system, it is necessary to convert the source code. This paper proposes a smart interface that can skip source code conversion.

  • PDF

Automatic malware generation system design using EA (진화알고리즘을 이용한 악성코드 자동생성 시스템 설계)

  • Kwon, Se-Hoon;Kown, Jae-Yeong;Lee, Seung-Hun;Lee, Hyun-Woo;Lee, Jong-Rak;Won, Il-Yong
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2017.11a
    • /
    • pp.193-196
    • /
    • 2017
  • 본 연구는 기존의 변종 악성코드와는 달리 진화알고리즘을 기반으로 한 악성코드 자동 생성 프레임워크에 대한 것이다. 우리가 제안하는 시스템은 소스가 알려지지 않는 바이너리 상태의 악성코드를 역공학적 기법을 이용하여 소스 상태로 복원하고 복원된 소스를 이용하여 다양한 변종 악성코드를 생성하는 것이다. 진화 연산을 적용하기 위해 평가함수의 설계가 중요한데, 우리는 행동 기반 분석 기반의 평가 함수를 포함하는 프레임워크를 제안하였다.

A Tool for Signature-Based Identification of Safe Open-Source Functions Toward Efficient Malware Analysis (악성코드의 효율적인 분석을 위한 안전한 오픈소스 함수에 대한 시그니처 기반 식별 도구)

  • Lee, Seoksu;Yang, Jonghwan;Jung, Woosik;Kim, Yeongcheol;Cho, Eun-Sun
    • Journal of the Korea Institute of Information Security & Cryptology
    • /
    • v.27 no.4
    • /
    • pp.721-729
    • /
    • 2017
  • In order to take rapid action against malware, efficiency in malware analysis is essential. For instance, it would be helpful to identify and eliminate open-source function bodies or other safe portions out of the target binary codes. In this paper, we propose an tool to create open source dynamic link library files in Windows environment, extract signature information by opensource and compiler version, and compare open source function information to find suspicious function. In addition, the tool can save the information used in the comparison to the DB and use it later, reducing the analysis time overhead.

A Plagiarism Detection Technique for Source Codes Considering Data Structures (데이터 구조를 고려한 소스코드 표절 검사 기법)

  • Lee, Kihwa;Kim, Yeoneo;Woo, Gyun
    • KIPS Transactions on Computer and Communication Systems
    • /
    • v.3 no.6
    • /
    • pp.189-196
    • /
    • 2014
  • Though the plagiarism is illegal and should be avoided, it still occurs frequently. Particularly, the plagiarism of source codes is more frequently committed than others since it is much easier to copy them because of their digital nature. To prevent code plagiarism, there have been reported a variety of studies. However, previous studies for plagiarism detection techniques on source codes do not consider the data structures although a source code consists both of data structures and algorithms. In this paper, a plagiarism detection technique for source codes considering data structures is proposed. Specifically, the data structures of two source codes are represented as sets of trees and compared with each other using Hungarian Method. To show the usefulness of this technique, an experiment has been performed on 126 source codes submitted as homework results in an object-oriented programming course. When both the data structures and the algorithms of the source codes are considered, the precision and the F-measure score are improved 22.6% and 19.3%, respectively, than those of the case where only the algorithms are considered.

Detection of Source Code Security Vulnerabilities Using code2vec Model (code2vec 모델을 활용한 소스 코드 보안 취약점 탐지)

  • Yang, Joon Hyuk;Mo, Ji Hwan;Hong, Sung Moon;Doh, Kyung-Goo
    • Journal of Software Assessment and Valuation
    • /
    • v.16 no.2
    • /
    • pp.45-52
    • /
    • 2020
  • Traditional methods of detecting security vulnerabilities in source-code require a lot of time and effort. If there is good data, the issue could be solved by using the data with machine learning. Thus, this paper proposes a source-code vulnerability detection method based on machine learning. Our method employs the code2vec model that has been used to propose the names of methods, and uses as a data set, Juliet Test Suite that is a collection of common security vulnerabilities. The evaluation shows that our method has high precision of 97.3% and recall rates of 98.6%. And the result of detecting vulnerabilities in open source project shows hopeful potential. In addition, it is expected that further progress can be made through studies covering with vulnerabilities and languages not addressed here.

A Study on Deep Learning model for classifying programs by functionalities (기능성에 따른 프로그래밍 소스코드 분류를 위한 Deep Learning Model 연구)

  • Yoon, Joo-Sung;Lee, Eun-Hun;An, Jin-Hyeon;Kim, Hyun-Cheol
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2016.10a
    • /
    • pp.615-616
    • /
    • 2016
  • 최근 4차 산업으로 패러다임이 변화함에 따라 SW산업이 더욱 중요하게 되었다. 이에 따라 전 세계적으로 코딩 교육에 대한 수요도 증가하게 되었고 기업에서도 SW를 잘 만들기 위한 코드 관리 중요성도 증가하게 되었다. 많은 양의 프로그래밍 소스코드를 사람이 일일이 채점하고 관리하는 것은 사실상 불가능하기 때문에 이러한 문제를 해결할 수 있는 코드 평가 시스템이 요구되고 있다. 하지만 어떤 코드가 좋은 코드인지 코드를 어떻게 평가해야하는지에 대한 명확한 기준은 없으며 이에 대한 연구도 부족한 상황이다. 최근에 주목 받고 있는 Deep Learning 기술은 이미지 처리, 자연어 처리등 기존의 Machine Learning 알고리즘이 냈던 성과보다 훨씬 뛰어난 성과를 내고 있다. 하지만 Programming language 영역에서는 아직 깊이 연구된 바가 없다. 따라서 본 연구에서는 Deep Learning 기술로 알려진 Convolutional Neural Network의 변형된 형태엔 Tree-based Convolutional Neural Network를 사용하여 프로그래밍 소스코드를 분석, 분류하는 알고리즘 및 코드의 Representation Learning에 대한 연구를 진행함으로써 이러한 문제를 해결하고자 한다.

Implementing A Code Static Anaylsis based on the Java Parser (기존 자바 파서 확장 기반의 코드 정적 분석기 구현)

  • Park, Jihoon;Park, Bokyung;Yi, Keunsang;Kim, R. Youngchul
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2017.04a
    • /
    • pp.641-644
    • /
    • 2017
  • 현재 많은 테스팅 기법으로도 생산되는 결과물들의 잠재적 오류 발생을 예측하기 힘들다. 기존 오픈 소스 정적 분석 도구들(Source Navigator)은 불충분한 정보를 제공하여 원하는 내부 정보를 축출하기 어렵다. 이를 해결하기 위해, 기존 오픈 소스의 자바 파서의 개선을 통해, 코드 내부 품질 측정을 고려하고자 한다. 즉 기존 자바 파서 개선 기반의 "추상구문트리로 변환된 코드"에서 "직접 코드 정보 추출" 방안의 구현이다. 이를 통해, 기존의 SNDB보다 더 많은 코드 정보 추출로 코드 내부 품질 측정이 더 수월할 것을 기대한다.

A Study of LLVM-based Embedded System Performance Analyzer (LLVM 기반의 임베디드 시스템 성능 분석기의 연구)

  • Cho, Doosan
    • The Journal of the Convergence on Culture Technology
    • /
    • v.8 no.1
    • /
    • pp.577-582
    • /
    • 2022
  • For developing a new embedded system, an application program/an emulator and a compiler are developed simultaneously. In order to provide the optimal performance of all system components, local optimization should be carried out for the developing process. For this purpose, if a source-level performance analyzer is developed, it is possible to optimize the application program's source code by the performance evaluation. In general, the performance of an application program is determined in the loop iterations. The Intermediate Representation (IR) code generator generates IR code from the source code, and evaluates the execution time with the instructions in the intermediate representation code. If the source code is improved based on the evaluated result, better results can be obtained in the final application code. This study describes the source-level performance analyzer that can be used during the simultaneous development of the new embedded system and its application programs. The performance analyzer makes it possible to more quickly optimize the performance of the new embedded system.

A Design of Exploit Infringement Decision Module through Open-Source Software Vulnerability Analysis (오픈소스 소프트웨어 취약점 분석 기술을 통한 취약점 침해여부 판정 모듈 설계)

  • Park, Sanghyeon;Chung, Hague;Jun, Moon-Seog
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2016.10a
    • /
    • pp.286-287
    • /
    • 2016
  • 오픈소스 소프트웨어는 소스코드를 공개해 누구나 제약 없이 소스코드를 보고 사용할 수 있는 오픈소스 라이선스를 만족하는 소프트웨어다. 오픈소스 소프트웨어의 장점은 라이선스 비용절감, 특정 소프트웨어 및 하드웨어의 종속성 탈피, 유연한 연동성, 수 많은 개발자의 참여로 인한 빠른 발전 속도와 신뢰성에 있다. 단점으로는 체계적이지 못하고, 유지보수가 어렵다는 문제가 있다. 본 논문에서 제안한 취약점 침해여부 모델을 이용하게 된다면 오픈소스의 단점을 보완할 수 있다.