http://chineseinput.net/에서 pinyin(병음)방식으로 중국어를 변환할 수 있습니다.
변환된 중국어를 복사하여 사용하시면 됩니다.
패딩 오라클 공격에 따른 다양한 패딩방법의 안전성 분석
김기문(Kim-Kimoon),박명서(Park-Myungseo),김종성(Kim-Jongsung),이창훈(Lee-Changhoon),문덕재(Moon-Dukjae),홍석희(Hong-Seokhee) 한국정보보호학회 2015 정보보호학회논문지 Vol.25 No.2
인터넷 뱅킹이나 전자상거래 같은 응용 환경에서 개인정보 및 민감한 정보를 보호하기 위해서 다양한 암호 알고리즘들을 사용한다. 하지만 안전성이 검증된 암호 알고리즘을 사용하여 중요 정보를 암호화 하더라도 운영모드, 패딩방법 등 암호화를 적용하는 방법이 올바르지 못하면 암호화된 중요 정보들이 노출 된다는 연구결과와 방법들이 소개되고 있다. 이러한 공격방법 중 대표적인 사례가 패딩 오라클 공격(Padding Oracle Attack)이다. 본 논문에서는 블록암호의 CBC(Cipher Block Chainning) 운영모드에 적용 가능한 12가지 패딩방법에 대하여 패딩오라클 공격의 가능성을 분석하였다. 그 결과, 3가지의 안전한 패딩방법과 9가지의 안전하지 않은 패딩방법으로 분류할 수 있다. 3가지의 안전한 패딩방법 분석을 통해 패딩 오라클 공격에 내성을 가질 수 있도록 안전한 패딩방법 설계 시 고려해야 할 5가지 사항에 대하여 제안하고자 한다. We use various types of cryptographic algorithms for the protection of personal and sensitive informations in the application environments, such as an internet banking and an electronic commerce. However, recent researches were introduced that if we implement modes of operation, padding method and other cryptographic implementations in a wrong way, then the critical information can be leaked even though the underlying cryptographic algorithms are secure. Among these attacking techniques, the padding oracle attack is representative. In this paper, we analyze the possibility of padding oracle attacks of 12 kinds of padding techniques that can be applied to the CBC operation mode of a block cipher. As a result, we discovered that 3 kinds were safe padding techniques and 9 kinds were unsafe padding techniques. We propose 5 considerations when designing a safe padding techniques to have a resistance to the padding oracle attack through the analysis of three kinds of safe padding techniques.
CAN 기반 분산 내장형 시스템을 위한 CORBA의 설계
김기문(Kimoon Kim),김세화(Saehwa Kim),홍성수(Seongsoo Hong) 한국정보과학회 2000 한국정보과학회 학술발표논문집 Vol.27 No.2Ⅰ
본 논문에서는 CAN 기반의 분산 제어 시스템을 위한 환경에 특화된 CORBA인 CAN-CORBA의 설계와 구현에 대하여 기술한다. CAN-CORBA는 예약 구독 기반의 그룹 통신과 CORBA의 전통적인 연결 기반 점대점 통신을 모두 지원한다. 또한 내장형 ORB간 통신 프로토콜인 EIOP를 사용하여 메시지 전송량을 획기적으로 줄였다. CAN-CORBA는 서울대학교에서 개발한 실시간 운영체제 mArx에 완전히 구현되었다. 다양한 경험과 실험 결과는 CAN-CORBA가 극심한 자원 제약 한계를 갖는 분산 내장형 제어 시스템을 개발하는 데 적합함을 보여주었다.
김기문(Kimoon Kim),김선일(Sunil Kim),김태형(Taehyung Kim),전광일(Gwangil Jeon),홍성수(Seongsoo Hong) 한국정보과학회 1999 한국정보과학회 학술발표논문집 Vol.26 No.2Ⅲ
많은 내장형 시스템이 분산 제어 방식을 채용하고 있는 현재, 소프트웨어 개발자들이 이기종으로 구성된 시스템의 설계 및 관리에 많은 어려움을 겪고 있다. 이에 따라 범용 통신 미들웨어인 CORBA, DCOM 등을 내장형 시스템에 사용하고자 하는 요구가 높아지고 있으나 이들은 분산 내장형 시스템의 고유한 제약 조건을 만족하지 못해 내장형 시스템에 사용된 전례가 드물다. 본 논문은 표준 CORBA의 ORB 프로토콜인 GIOP가 CAN 네트워크와 같은 내장형 콘트롤러 네트워크에 적용되었을 때 드러나는 문제점을 살펴보고, 이러한 고찰의 결과에 근거해 내장형 시스템 환경에 최적화된 새로운 ORB 프로토콜, EIOP (Embedded Inter-ORB Protocol)을 제안한다.
CAN Bus를 위한 내장형 CORBA에서 접속 지향과 가입 기반의 통합 통신 기법
김기문(Kimoon Kim),김태형(Taehyung Kim) 한국정보과학회 2001 정보과학회논문지 : 소프트웨어 및 응용 Vol.28 No.2
본 논문에서는 CAN 기반 분산 제어 시스템을 위한 환경 명세 CORBA인 CAN-CORBA를 설계한다. CAN-CORBA의 ORB core는 다음과 같은 특성을 지닌다. (1) 기존의 접속 지향 점대점 통신 뿐만 아니라 가입 기반(subscription-based)의 그룹 통신을 지원한다. 이를 통해, 결과적으로 전형적인 제어 시스템의 데이터 멀티캐스팅(multicasting) 요구를 한층 충족시킨다. (2) CORBA 메소드(method) 호출에 필요한 메시지 전송량을 크게 감소시킨다. CAN 같은 저속 브로드케스트(broadcast) 버스에서도 CORBA 메소트 호출의 오버헤드를 감당 할 수 있게 한다. 자연스럽게 두 종류의 통신 방법을 본 논문에서 제안한 매우 작은 크기의 ORB에 통합하기 위하여, 최대 4가지의 상위 통신규약을 지원할 수 있는 CAN의 전송층(Transport layer) 통신규약을 설계한다. 또한 서울대학교에서 이미 개발된 mArx라는 실시간 운영체제 환경에서 CAN-CORBA를 구현하였다. 성능 평가를 통하여 매우 제한적인 자원을 지니는 분산 내장형 제어 시스템 개발에 CORBA를 사용하는 것이 매우 적합하다는 결과를 보인다 In this paper, we present the design of CAN-CORBA, an environment-specific CORBA for CAN based distributed control systems. The ORB core of the CAN-CORBA has the following properties. (1) It supports subscription-based group communication as well as the classical connection-oriented point-to-point communication of CORBA; as a result, it better services the data multicasting requirement of typical control systems. (2) It significantly lowers the amount of message traffic required for each CORBA method invocation so that even the slow broadcast bus of the CAN can tolerate the overhead of CORBA method invocations. To seamlessly integrate two communication schemes into our extremely light-weight ORB, we design a transport layer protocol on the CAN that can support up to four different upper level protocols. We have implemented the CAN-CORBA on the mArx real-time operating system we have developed at Seoul National University. Our experiments clearly demonstrate that it is feasible to use CORBA in developing distributed embedded control systems possessing severe resource limitations.
키 재사용 공격을 통한 Ragnar Locker 랜섬웨어 감염 파일 복호화 및 활용 방안 연구
강수진(Soojin Kang),이세훈(Sehoon Lee),김소람(Soram Kim),김대운(Daeun Kim),김기문(Kimoon Kim),김종성(Jongsung Kim) 한국정보보호학회 2021 정보보호학회논문지 Vol.31 No.2
랜섬웨어는 악성 소프트웨어로 컴퓨터에 저장된 데이터를 암호화하여 접근을 제한하고, 사용자에게 접근 권한을 대가로 금전을 요구한다. 최근 랜섬웨어는 대칭키 또는 스트림 암호 알고리즘을 사용하여 피해자의 파일을 암호화하고, 해당 암호키를 공격자의 공개키로 암호화하는 하이브리드 암호 시스템을 사용한다. 대부분 랜섬웨어는 파일 암호화 시 안전하다고 알려진 AES 알고리즘을 사용하며, 일부 랜섬웨어에서 Salsa20과 같은 스트림 암호를 사용한 경우도 발견된다. 모두 안전성이 확인된 알고리즘이지만, 공격자가 잘못 설계하는 경우 암호학적 취약점이 발생한다. 2019년 하반기에 등장한 Ragnar Locker 랜섬웨어는 하이브리드 암호 시스템을 사용하지만, 파일 암호화 시 스트림 암호에 동일한 키를 반복 사용함으로 취약점이 발생했다. 본 논문에서는 키 재사용 공격을 활용하여 공격자의 개인키 없이 감염된 데이터의 복호화 방안과 해당 취약점을 활용할 수 있는 방안을 제시한다. Ransomware is malicious software that restricts access by encrypting data stored in a computer, and demands money in return for access rights. Ransomware has recently been using a hybrid encryption scheme that combines both symmetric and asymmetric algorithms. The symmetric system is for the encryption of files of a target system and the asymmetric system is used to encrypt the symmetric key. Most ransomware uses the AES algorithm but some use a stream cipher such as the Salsa20. These algorithms are secure however the vulnerability is caused by cryptographic design flaws. Ragnar Locker Ransomware, which appeared in the second half of 2019, uses a hybrid cryptographic system, however, it is vulnerable by reusing the same key when encrypting the files. In this paper, we propose a method of decrypting infected data without a private key of the attacker by utilizing a key reuse attack and a way to apply for other applications.
CUTIG : 정적 분석을 이용한 C언어 단위 테스트 데이타 추출 자동화 도구
김택수(Taeksu Kim),박복남(Boknam Park),이춘우(Chunwoo Lee),김기문(Kimoon Kim),서윤주(Yunju Seo),우치수(Chisu Wu) 한국정보과학회 2009 정보과학회논문지 : 소프트웨어 및 응용 Vol.36 No.1
As unit testing should be performed repeatedly and continuously, it is a high-cost software development activity. Although there are many studies on unit test automation, there are less studies on automated test case generation which are worthy of note. In this paper, we discuss a study on automated test data generation from source codes and indicate algorithms for each stage. We also show some issues of test data generation and introduce an automated test data generating tool: CUTIG. As CUTIG generates test data not from require specifications but from source codes, software developers could generate test data when specifications are insufficient or discord with real implementation. Moreover we hope that the tool could help software developers to reduce cost for test data preparation. 단위 시험은 지속적이고 반복적으로 수행되어야 하기 때문에 높은 비용을 필요로 하는 작업이다. 단위 시험의 자동화에 대한 많은 연구가 있었으나 테스트 데이타의 자동 추출에 대한 연구는 큰 성과를 이루지 못하고 있다. 본 연구에서는 소프트웨어의 소스 코드로부터 테스트 데이타를 자동으로 추출하는 방안에 대해 논의하고 각 단계의 알고리즘을 제시하였다. 또한 테스트 데이타 추출 자동화에 관한 이슈를 소개하고 테스트 데이타 추출 자동화 도구 CUTIG를 소개한다. CUTIG는 실제 소스코드를 이용하여 테스트 데이타를 추출하므로 소프트웨어의 요구사항 명세가 잘 작성되어 있지 않거나 실제 구현과 차이가 있는 경우에도 테스트 데이타를 생성할 수 있다. 또한 이 도구를 통해 개발자가 직접 테스트 데이타를 작성하는 데 소요되는 비용을 절감할 수 있기를 기대한다.