• 제목/요약/키워드: Binary code

검색결과 507건 처리시간 0.023초

임베디드 기기 바이너리 취약점 분석 효율성 제고를 위한 중간어 변환 기술 (Intermediate-Representation Translation Techniques to Improve Vulnerability Analysis Efficiency for Binary Files in Embedded Devices)

  • 정병호;김용혁;배성일;임을규
    • 스마트미디어저널
    • /
    • 제7권1호
    • /
    • pp.37-44
    • /
    • 2018
  • 임베디드 기기는 시퀀스 제어 기능과 수치연산 기능을 활용하여 제어 프로그램에 따라 산업현장의 기기 등 다양한 자동화 시스템에 활용된다. 현재 임베디드 기기는 기업의 산업현장, 원전, 대중교통 같은 국가기반시설에서 제어 시스템으로 활용되고 있다. 따라서 임베디드 기기를 대상으로 하는 공격은 큰 경제적 손실과 사회적 손실을 야기할 수 있다. 임베디드 기기를 대상으로 하는 공격은 대부분 데이터, 코드 변조로서 제어 프로그램을 대상으로 이루어진다. 산업 자동화 임베디드 기기의 제어 프로그램은 일반적인 프로그래밍 언어와 달리 회로 구조를 표현하기 위하여 설계되었고, 대부분의 산업 자동화 제어 프로그램은 그래픽 기반 언어인 LAD로 설계되어있어 정적분석이 용이하지 않다. 이러한 특징으로 인하여 산업 자동화 제어 프로그램에 대한 취약점 분석 및 보안 관련 연구는 정형 검증, 실시간 모니터링 수준에 그친다. 또한 사전에 취약점을 탐지하고 공격에 대한 대비가 가능한 산업 자동화 제어 프로그램 정적분석 연구는 매우 저조한 실정이다. 따라서 본 연구에서는 산업 자동화 임베디드 프로그램에 대한 정적분석 효율성 증대를 위하여 회로 구조를 표현하기 위해 설계된 산업 자동화 제어 프로그램을 논리식으로 표현하기 위한 방법을 제시한다. 또한 다양한 제조사의 산업 자동화 제어 프로그램을 통합적으로 분석하기 위하여 LLVM IR을 활용한 중간어 변환 기술을 제안한다. LLVM IR을 활용함으로서 동적 분석에 대한 통합분석이 가능하다. 본 연구에서는 해당 방법에 대한 검증을 위하여 S 사(社)의 제어 프로그램을 대상으로 하여 논리식 형태의 중간어로 변환하는 프로그램의 시제품을 개발하였다.

DCT 맵 FSVQ와 단방향 분포 허프만 트리를 이용한 영상 압축 (Image Compression Using DCT Map FSVQ and Single - side Distribution Huffman Tree)

  • 조성환
    • 한국정보처리학회논문지
    • /
    • 제4권10호
    • /
    • pp.2615-2628
    • /
    • 1997
  • 본 논문에서는 영상 전송을 위한 벡터 양자화기를 설계할 때 2차원 DCT에 근거한 DCT 맵과 유한상태 벡터 양자화를 이용하는 새로운 부호책(codebook) 설계 알고리듬을 제안한다. 영상을 윤곽선이 많은 부분과 적은 부분으로 나누어 맵을 만들고 이 맵에 따라 영상의 중요한 특징들을 2차원 DCT로 추출한다. 유한상태 벡터 양자화기의 마스터 부호책은 트리 구조에 근거한 2진 트리를 사용하여 두 영역을 따로 학습세트로 나눔으로서 만들어진다. 이와 같이 작성된 마스터 부호책으로부터 상태 부호책을 작성하여 입력 벡터에 대하여 마스터 부호책이 아닌 상태 부호책으로부터 부호단어를 찾는다. 또한 인덱스의 부호화는 고속 디지털 전송에 중요한 부분이기 때문에 고정길이의 부호를 엔트로피 부호화 법칙에 따라 가변 길이의 부호로 바꾸어 수행한다. 즉, 설계한 부호책에서 각 부호에 전송 부호 할당은 허프만 부호화를 수행하는데, 허프만 트리에서의 허프만 코드의 생성을 빠르게 하기 위해 본 논문에서는 트리의 단방향 분포 허프만 트리 알고리듬을 제안한다. Einstein과 Bridge 영상에 대하여 본 알고리듬으로 영상을 부호화했을 때 PNN 알고리듬보다는 각각 2.94 dB과 2.48 dB만큼, CVQ 알고리듬보다 각각 약 1.75 dB과 0.99dB만큼 더 좋은 영상의 화질을 얻을 수 있었다.

  • PDF

PLC용 uC/OS-II 운영체제 기반 펌웨어에서 발생 가능한 취약점 패턴 탐지 새니타이저 (A Sanitizer for Detecting Vulnerable Code Patterns in uC/OS-II Operating System-based Firmware for Programmable Logic Controllers)

  • 한승재;이건용;유근하;조성제
    • 한국소프트웨어감정평가학회 논문지
    • /
    • 제16권1호
    • /
    • pp.65-79
    • /
    • 2020
  • 산업제어 시스템에서 많이 사용되는 PLC(Programmable Logic Controller)는 마이크로 컨트롤러, 실시간 운영체제, 통신 기능들과 통합되고 있다. PLC들이 인터넷에 연결됨에 따라 사이버 공격의 주요 대상이 되고 있다. 본 논문에서는, 데스크톱에서 개발한 uC/OS-II 기반 펌웨어를 PLC로 다운로드 하기 전, 펌웨어 코드의 보안성을 향상시켜 주는 새니타이저를 개발한다. 즉, PLC용 임베디드 펌웨어를 대상으로 버퍼의 경계를 넘어선 접근을 탐지하는 BU 새니타이저(BU sanitizer)와 use-after-free 버그를 탐지하는 UaF 새니타이저(UaF sanitizer)를 제안한다. BU 새니타이저는 대상 프로그램의 함수 호출 그래프와 심볼 정보를 기반으로 제어 흐름 무결성 위배도 탐지할 수 있다. 제안한 두 새니타이저를 구현하고 실험을 통해 제안 기법의 유효성을 보였으며, 기존 연구와의 비교를 통해 임베디드 시스템에 적합함을 보였다. 이러한 연구결과는 개발 단계에서 의도하지 않은 펌웨어 취약점을 탐지하여 제거하는데 활용할 수 있다.

Schizosaccharomyces bombe 포자형성 유전자(spo5)의 Cloning 및 전사조절 (Cloning and Transcription Analysis of Sporulation Gene (spo5) in Schizosaccharomyces pombe)

  • 김동주
    • 한국식품영양학회지
    • /
    • 제15권2호
    • /
    • pp.112-118
    • /
    • 2002
  • 분열효모 S. pombe의 포자형성은 배지상의 질소원 고갈에 의해 유도되어지며 감수분열로부터 포자형성에 도달하는 과정에는 다수의 특이적인 유전자들이 관여하고 있다. 본 실험에서는 S. pombe genomic library 형질 전환법으로 spo5 유전자를 상보하는 clone을 screening한 후, sport 유전자를 단리하였다$^{8)}$ . 전포자막 구축에 필수적인 sport 유전자를 보유하는 약 5kb의 DNA 단편을 대장균, 효모 shuttle vector pTB248'의 Hind III 부위에 subclonning하였다. 그리고 이 DNA단편으로부터 제한 효소 지도를 작성하여(Fig. 2), spo5 변이체의 상보 능력을 조사하였다 (Fig. 3). 결과에서 서술한 바와 같이 상보능력은 동일하였으며, 이러한 상보성 실험 결과로부터 삽입된 단편상의 유전자 발현은 벡터의 promoter로부터 전사가 일어나는 것이 아니라, 삽입 단편상의 효모 고유의 promoter 에 의해서 전사가 일어나는 것으로 확인되었다. 따라서 clone화 한 DNA 단편 배열상에는 변역영역뿐만 아니라 promoter 영역이 포함된 것으로 판단되었다. 결실변이 도입 해석으로부터, spo5 유전자는 Sma I 부터 Hind m의 3kb 영역에 존재하였고 (Fig. 3), Nor-thern분석에 의해서 spo5 유전자의 전사를 조사한 결과, spo5 -mRNA는 Sma I 부터 Hind III 의 3kb 영 역에서 약2.5kb 크기로 검출되었다. 이 단편의 유전해석으로 부터 약 2.5kb의 전사산물은 최대 800개의 아미노산 잔기를 code하는 단백질로 판단되었다(Fig. 4). 그리고, Northern 분석법에 의해서 spo5 유전자의 전사를 조사한 결과, 서술한 바와 같이, 이 유전자는 질소기아 조건하에서만 유전자가 발현되는 것을 확인하였다(Fig. 4-2.5kb 단편).었다. 그리고 Edman법으로 결정한 PPIase의 39아미노산 잔기가 이 배열내에 완전히 보존되어 있었다. 이 결과로부터 이 ORF는PPIase구조 유전자의 1/3에 해당하는 단편임을 확인하였다. training system to a dangerous work like as "Interruption-free live-line work exchanging COS(Cut-Out-Switch)". In this program, the user works with a instruction on the window and speaker and can't work other tasks until each part of the task completed. The workers using this system can use their hands and viewpoint movement as he is in a real environment but the trainee can't use all parts and senses of a real body with the current VR technology. Despite of this weak point, when we consider the trends of improvement in electrical devices and communication technology, we can say that 3D graphic VR application has a high potentiality.) 야생화 초지(NWP, IWP)는 관행 혼파초지나 하번초 혼파초지에 비하여 동물상이 다양하고 많게 분포되었으며 그중 외국산 야생화초지의 동물 개체수가 가장 많게 나타났다. 이상의 결과를 종합할 때, 야생화 초지는 봄부터 가을까지 야생화가 지속되었고, 양서류 및 곤충의 개체 수가 증가되었던 것으로 보아 야생화 초지의 공익적인 측면에서의 활용 가능성도 클 것으로 기대된다

AMOLED 컬럼 구동회로 응용을 위한 시분할 기법 기반의 면적 효율적인 10b DAC (An Area-Efficient Time-Shared 10b DAC for AMOLED Column Driver IC Applications)

  • 김원강;안태지;이승훈
    • 전자공학회논문지
    • /
    • 제53권5호
    • /
    • pp.87-97
    • /
    • 2016
  • 본 논문에서는 시분할 기법을 적용하여 AMOLED 컬럼 구동회로용 DAC의 유효 채널 면적을 최소화한 2단 저항 열 기반의 10비트 DAC를 제안한다. 제안하는 DAC는 시분할 기법 기반의 DEMUX, 6비트 및 4비트의 2단 저항 열 구조를 기반으로 하는 롬 구조의 디코더를 2단계로 사용하여 기존의 디스플레이용 DAC보다 빠른 변환속도를 가지는 동시에 하나의 패널 컬럼 구동을 위한 DAC의 유효 면적을 최소화하였다. 두 번째 단 4비트 저항 열에서는 DAC 채널의 면적과 부하 영향을 줄이는 동시에 버퍼 증폭기로 인한 채널 간 오프셋 부정합을 제거하기 위해 기존의 단위-이득 버퍼 대신 간단한 구조의 전류원으로 대체하였다. 제안하는 1:24 DEMUX는 하나의 클록과 5비트 2진 카운터만을 사용하여, 하나의 DAC 채널이 24개의 컬럼을 순차적으로 구동할 수 있도록 하였다. 각 디스플레이 컬럼을 구동하는 출력 버퍼 입력 단에는 0.9pF의 샘플링 커패시터와 작은 크기의 source follower를 추가하여 top-plate 샘플링 구조를 사용하면서 채널 전하 주입에 의한 영향을 최소화하는 동시에 출력 버퍼의 신호정착 정확도를 향상시켰다. 제안하는 DAC는 $0.18{\mu}m$ CMOS 공정으로 제작하였으며, DAC 출력의 정착 시간은 입력을 '$000_{16}$'에서 '$3FF_{16}$'으로 인가했을 때 62.5ns의 수준을 보인다. 제안하는 DAC 단위 채널의 면적 및 유효 채널 면적은 각각 $0.058mm^2$$0.002mm^2$이며, 3.3V의 아날로그 및 1.8V의 디지털 전원 전압에서 6.08mW의 전력을 소모한다.

다양한 다분류 SVM을 적용한 기업채권평가 (Corporate Bond Rating Using Various Multiclass Support Vector Machines)

  • 안현철;김경재
    • Asia pacific journal of information systems
    • /
    • 제19권2호
    • /
    • pp.157-178
    • /
    • 2009
  • Corporate credit rating is a very important factor in the market for corporate debt. Information concerning corporate operations is often disseminated to market participants through the changes in credit ratings that are published by professional rating agencies, such as Standard and Poor's (S&P) and Moody's Investor Service. Since these agencies generally require a large fee for the service, and the periodically provided ratings sometimes do not reflect the default risk of the company at the time, it may be advantageous for bond-market participants to be able to classify credit ratings before the agencies actually publish them. As a result, it is very important for companies (especially, financial companies) to develop a proper model of credit rating. From a technical perspective, the credit rating constitutes a typical, multiclass, classification problem because rating agencies generally have ten or more categories of ratings. For example, S&P's ratings range from AAA for the highest-quality bonds to D for the lowest-quality bonds. The professional rating agencies emphasize the importance of analysts' subjective judgments in the determination of credit ratings. However, in practice, a mathematical model that uses the financial variables of companies plays an important role in determining credit ratings, since it is convenient to apply and cost efficient. These financial variables include the ratios that represent a company's leverage status, liquidity status, and profitability status. Several statistical and artificial intelligence (AI) techniques have been applied as tools for predicting credit ratings. Among them, artificial neural networks are most prevalent in the area of finance because of their broad applicability to many business problems and their preeminent ability to adapt. However, artificial neural networks also have many defects, including the difficulty in determining the values of the control parameters and the number of processing elements in the layer as well as the risk of over-fitting. Of late, because of their robustness and high accuracy, support vector machines (SVMs) have become popular as a solution for problems with generating accurate prediction. An SVM's solution may be globally optimal because SVMs seek to minimize structural risk. On the other hand, artificial neural network models may tend to find locally optimal solutions because they seek to minimize empirical risk. In addition, no parameters need to be tuned in SVMs, barring the upper bound for non-separable cases in linear SVMs. Since SVMs were originally devised for binary classification, however they are not intrinsically geared for multiclass classifications as in credit ratings. Thus, researchers have tried to extend the original SVM to multiclass classification. Hitherto, a variety of techniques to extend standard SVMs to multiclass SVMs (MSVMs) has been proposed in the literature Only a few types of MSVM are, however, tested using prior studies that apply MSVMs to credit ratings studies. In this study, we examined six different techniques of MSVMs: (1) One-Against-One, (2) One-Against-AIL (3) DAGSVM, (4) ECOC, (5) Method of Weston and Watkins, and (6) Method of Crammer and Singer. In addition, we examined the prediction accuracy of some modified version of conventional MSVM techniques. To find the most appropriate technique of MSVMs for corporate bond rating, we applied all the techniques of MSVMs to a real-world case of credit rating in Korea. The best application is in corporate bond rating, which is the most frequently studied area of credit rating for specific debt issues or other financial obligations. For our study the research data were collected from National Information and Credit Evaluation, Inc., a major bond-rating company in Korea. The data set is comprised of the bond-ratings for the year 2002 and various financial variables for 1,295 companies from the manufacturing industry in Korea. We compared the results of these techniques with one another, and with those of traditional methods for credit ratings, such as multiple discriminant analysis (MDA), multinomial logistic regression (MLOGIT), and artificial neural networks (ANNs). As a result, we found that DAGSVM with an ordered list was the best approach for the prediction of bond rating. In addition, we found that the modified version of ECOC approach can yield higher prediction accuracy for the cases showing clear patterns.

운영 체제와 컴파일러에 따른 Geospatial Data Abstraction Library의 Hierarchical Data Format 형식 원격 탐사 자료 추출 속도 비교 (Comparison of the wall clock time for extracting remote sensing data in Hierarchical Data Format using Geospatial Data Abstraction Library by operating system and compiler)

  • 유병현;김광수;이지혜
    • 한국농림기상학회지
    • /
    • 제21권1호
    • /
    • pp.65-73
    • /
    • 2019
  • 지역이나 전구 규모의 농업 생태계를 감시하기 위해 HDF 형식으로 제공되는 MODIS 원격 탐사자료가 사용되어 왔다. 대개의 경우, 다량의 영상자료들이 처리되어야 하기 때문에, 이들 자료의 처리 성능을 향상시키는 것이 유리하다. 본 연구는 HDF 파일을 처리할 수 있는 GDAL과 같은 라이브러리가 운영 체제나 배포 방식 등에 따른 처리속도의 차이를 확인하여 원격 탐사 자료 처리 시스템 구축을 지원하고자 하였다. 이를 위해, GDAL이 시스템에 설치되는 주요 조건들에 따라 MODIS 영상자료 처리 시간을 측정하고 비교하였다. 운영 체제(Ubuntu 및 openSUSE), 컴파일러(GNU 및 Intel), 설치 옵션 및 바이너리 패키지 조건을 조합하여 GDAL성능 비교가 이루어졌다. 각 조건에 따라 설치된 GDAL을 사용하여 MODIS 영상 중 대기측정 자료(MOD07)의 2차원 변수와 3차원 변수에 해당하는 총 10 종의 자료를 추출하였다. 자료처리에 소요된 구동 시간은 각 변수 값을 시스템 메모리에 저장하는 작업이 끝난 직후 측정되었다. 가장 좋은 성능을 보인 설치 조건은 Ubuntu에서 Intel Compiler를 사용하여 컴파일 된 GDAL을 사용하는 것이었다. OpenSUSE에서는 GNU와 Intel 컴파일러가 각각 2차원 자료와 3차원 자료를 처리하기 위한 작업에 효과적인 것으로 나타났다. 한편 "--with-hdf4=no" 옵션으로 컴파일 된 GDAL과 RPM package manager 버전의 GDAL의 경우, 다른 조건에 비해 상당히 낮은 성능을 보였다. 이러한 결과는 운영 체제나 컴파일러, 설치 옵션 등을 조정하여 원격 탐사자료 처리 도구의 속도를 개선할 수 있다는 것을 암시하였다. 특히, 원격 탐사 자료의 경우 다양한 형식으로 배포되므로, 이를 처리하는 라이브러리들이 최고의 성능을 발휘할 수 있는 조건을 탐색하고 이러한 결과의 공유가 후속연구에서 진행되어야 할 것으로 보인다.