• 제목/요약/키워드: 코드 재사용

검색결과 476건 처리시간 0.035초

스택 영역에서의 코드 재사용 공격 탐지 메커니즘 (Detection Mechanism against Code Re-use Attack in Stack region)

  • 김주혁;오수현
    • 한국산학기술학회논문지
    • /
    • 제15권5호
    • /
    • pp.3121-3131
    • /
    • 2014
  • 메모리 관련 취약점은 컴퓨터 시스템 상에서의 가장 위협적인 공격이며 메모리 취약점을 이용한 실제 공격의 또한 증가하고 있다. 따라서 다양한 메모리 보호 메커니즘이 연구되고 운영체제 상에서 구현되었지만, 보호 시스템들을 우회하기 위한 새로운 공격 기법들이 함께 발전하고 있다. 특히, 메모리 관련 공격 기법 중 버퍼 오버플로우 공격은 코드 재사용 공격이라 불리는 Return-Oriented Programming(ROP), Jump-Oriented Programming(JOP)등으로 발전하여 운영체제가 포함하는 메모리 보호 메커니즘을 우회하고 있다. 본 논문에서는 코드 재사용 공격 기법의 특징을 분석하고, 분석된 결과를 이용하여 바이너리 수준에서의 코드 재사용 공격을 탐지할 수 있는 메커니즘을 제안하며, 실험을 통해 제안하는 메커니즘이 코드 재사용 공격을 효율적으로 탐지할 수 있음을 증명한다.

프레임워크 기반 RAD 도구의 설계 (A Design of Framwork-based RAD Tools)

  • 정효택;김흥남;양영종;김동관
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1998년도 가을 학술발표논문집 Vol.25 No.2 (1)
    • /
    • pp.629-631
    • /
    • 1998
  • 점차적으로 소프트웨어의 복잡성이 증가함에 따라 소프트웨어의 재사용에 대한 요구가 증가하고 있다. 객체 지향 패러다임에서는 표준 인터페이스나 상속을 통하여 코드에 대한 재사용의 증가를 가져 왔다. 재사용이 가능한 부품들로 잘 정의된 클래스 라이브러리들은 코드의 재사용성은 매우 뛰어나지만 분석과 설계에 대한 재사용은 지원하지 못한다. 코드는 물론 분석과 설계의 재사용을 위하여 프레임워크의 개념이 생겨났으며 이를 상업적으로 구현한 제품이 등장하고 있다. 본 논문에서는 특정 애플리케이션 도메인에서 소프트웨어 재사용을 위해 프래임워크를 이용한 애플리케이션 개발을 지원하는 RAD(Rapid Application Development) 도구의 모형을 제안하고 각 서브 모듈의 기능과 데이터 흐름을 정의함으로써, 프레임워크를 이용한 애플리케이션 개발 도구의 구현을 위한 사전 설계 작업을 소개한다.

특성 모델과 XML을 이용한 컴포넌트 코드 생성기 (Component Code Generator Using the Feature Model and XML)

  • 권미옥;최승훈
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2002년도 봄 학술발표논문집 Vol.29 No.1 (B)
    • /
    • pp.418-421
    • /
    • 2002
  • 최근 소프트웨어 위기를 극복하기 위한 객체지향 개발 방법론의 한계성이 나타남에 따라, 컴포넌트 기반의 소프트웨어 공학에 대한 연구가 활발히 진행되고 있다. 효율적인 컴포넌트 재사용을 위해서는, 컴포넌트 개발 시 하나의 컴포넌트 개발에 집중하기보다는 공통된 특징을 공유하는 컴포넌트 패밀리 개발에 초점 을 맞추어 야 한다. 본 논문에서 는 컴포넌트 패밀리 구축을 위한 도메인 공학과 특성 모델(Feature Model)을 기반으로, XML 명세서를 받아들여 사용자가 원하는 컴포넌트를 자동 생성하는 컴포넌트 코드 생성기와 재사용 프로세스를 제안한다. 컴포넌트 재사용자가 특정 컴포넌트 패밀리 의 특성 모델에 서 필요한 특성을 선택하면 컴포넌트 코드 생성기는 재사용자의 목적과 환경 에 적합한 코드를 자동 생성한다.

  • PDF

Analogy를 기반으로 한 분석/설계 패턴의 재사용 (Reuse of Analysis/Design patterns Based on Analogy)

  • 김정아;김행곤
    • 한국정보처리학회논문지
    • /
    • 제6권4호
    • /
    • pp.916-931
    • /
    • 1999
  • 소프트웨어 재사용에서 코드 재사용은 다른 개발자에 의해 작성된 재사용 코드의 이해와 검색의 어려움 등 한계점을 갖는다. 코드 재사용 한계를 극복하기 위해서는 코딩 단계 이전의 설계 단계나 분석 단계의 산물을 재사용 할 수 있어야 한다. 본 연구에서는 객체 모델링 단계에서 이전의 경험을 재사용할 수 있는 환경을 제공하기 위해 질의와 컴포넌트에 대한 analogy를 판단하여 라이브러리의 모델과 패턴을 재사용 할 수 있는 방법을 제안하였다. Analogy 매칭 기법은 설계 패턴의 검색, 이해 그리고 조합 등에 적용되며 본 논문에서 연구된 내용은 다음과 같다. 1. 재사용 라이브러리로부터 유사 컴포넌트 검색 및 추출을 위한 analogical 매칭 함수 제안 2. analogical 매칭을 위해 라이브러리 내에 저장될 재사용 컴포넌트 표현 및 정의 3. 특정 도메인에 대한 의미적 정보의 라이브러리 설계 4. 사용자를 위한 analogical 매칭 에이전트 구축

  • PDF

의미망을 이용한 컴포넌트 기반 재사용 (Component-based Reuse using Semantic Network)

  • 한정수;김귀정
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2004년도 추계학술발표논문집(상)
    • /
    • pp.357-360
    • /
    • 2004
  • 본 논문은 소프트웨어의 효율적인 재사용을 위해 소스 코드 기반 컴포넌트 검색 방법을 제안하였다. 제안한 방법은 2단계로 이루어지는데, 먼저 라이브러리에 저장된 클래스를 기반으로 한 컴포넌트는 파싱 과정을 거쳐 의미망을 구성하고, 다음으로 사용자가 질의한 소스 코드를 이용하여 검색이 이루어진다. 소스 코드에서 추출된 식별자가 컴포넌트의 의미망을 활성화시켜 연관된 컴포넌트를 검색한다. 본 연구에서 제안한 검색방법은 프로그래머의 관심을 라이브러리 내에 있는 컴포넌트로 유도하여 재사용성을 높일 수 있으며, 프로그래밍 패턴을 제공함으로써 프로그래머로 하여금 프로그램의 가이드 라인으로 사용할 수 있도록 도움을 줄 수 있다.

  • PDF

영상처리 알고리즘 구현에서 소스코드 재사용을 위한 제너릭 프로그래밍 방법에 관한 연구 (A study of generic programming method for source code reuse in image processing algorithm implementation)

  • 이정헌;이준형
    • 한국컴퓨터정보학회논문지
    • /
    • 제10권3호
    • /
    • pp.19-34
    • /
    • 2005
  • 영상처리 알고리즘 연구에 있어서 가장 어려운 부분 중 하나가 기존 알고리즘과의 성능 비교이다. 그러므로 재사용이 가능한 코드의 형태로 알고리즘을 표현하고 구현하는 것이 영상처리 연구에서는 매우 중요하다. 기존의 영상처리 시스템들은 소스코드 측면에서의 재사용을 위한 모든 조건을 지원하지 못했다. 이러한 문제를 해결하기 위하여 본 연구에서는 제너릭(generic) 프로그래밍 방법을 영상처리 알고리즘구현에 적용함으로써 소스코드 측면에서의 재사용 문제를 해결하는 방법을 제안하였다. 제안한 방법은 다른 다양한 영상 형식이 적용되더라도 같은 알고리즘 구현이 가능하도록 영상처리 알고리즘들과 알고리즘 구현을 위한 기초적인 자료 구조를 연결하는 이차원 iterator를 정의하여 사용하는 방법이다. 그리고 제안 방법의 간결함과 효율성을 확인하기 위하여 몇 개의 예제와 기존의 영상처리 알고리즘 통합 개발 환경에 이식하여 기존의 방법과 비교하였다.

  • PDF

설계패턴 추출에 관한 연구 (A Study on the Extraction Design Pattern)

  • 이상식;송영재
    • 한국정보처리학회:학술대회논문집
    • /
    • 한국정보처리학회 2001년도 추계학술발표논문집 (상)
    • /
    • pp.425-428
    • /
    • 2001
  • 소프트웨어 역공학은 기존 원시코드에서 구성요소와 그들의 관계 파악을 통하여 설계요소를 추출함으로써 논리적이고 구현에 독립된 추상화된 설계정보를 제공하고 재사용 하게 함으로써 그 역할이 중요시되어왔다. 최근 패턴구조 컴포넌트의 재사용은 기존의 클래스 단위의 재사용 시스템에 비하여 시스템 설계 및 구현단계에서 개발비용의 절감과 개발기간의 단축에 도움을 줄 수 있으며, 이를 통해 개발되는 시스템의 생산성과 안정성을 보다 향상시킬 수 있다. 본 연구는 기존의 소스코드를 분석하여 재사용 가능한 객체를 추출하고 클래스와 클래스들 간의 관련성을 찾아내어 패턴정보를 추출하고 그 정보를 저장하기 위한 데이터베이스 스키마를 설계하였다.

  • PDF

자바스크립트 적시 컴파일러를 위한 생성 코드 재사용 (Reuse of the Generated Code for JavaScript Just-in-Time Compiler)

  • 오형석;문수묵
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2010년도 한국컴퓨터종합학술대회논문집 Vol.37 No.1(C)
    • /
    • pp.540-544
    • /
    • 2010
  • 모바일 환경에서 웹 브라우저 활용이 늘어나고 웹 페이지를 통한 다양한 서비스가 제공되면서 브라우저에서의 자바스크립트 성능이 중요한 요소가 되었다. 자바스크립트 엔진의 성능 개선을 위해 기존에 사용하던 인터프리터 대신에 머신 코드를 실행 시간에 생성하는 적시 컴파일러(JITC)가 도입되었다. 특히 모바일 환경에서 WebKit의 자바스크립트 엔진인 SquirrelFish Extreme(SFX)이 많이 사용되고 있다. 본 논문에서는 SFX의 성능 향상을 위하여 적시 컴파일러를 통해 생성된 머신 코드를 파일 시스템을 활용하여 파일에 저장하였다가 재사용하는 클라이언트 AOTC(ahead-of-time compilation) 방식을 제시하고 초기 실험 결과를 제시한다.

  • PDF

ADL을 이용한 프레인워크의 소프트웨어 아키텍쳐 표현에 관한 연구 (A Study on the Software Architecture Representation of Framework Using the ADL)

  • 김태균;김강태;이경환
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 1999년도 가을 학술발표논문집 Vol.26 No.2 (1)
    • /
    • pp.447-449
    • /
    • 1999
  • 프레임워크는 객체 지향 재사용 방법중의 하나로서 사용되고 있다. 프레임워크는 소스 코드의 재사용뿐만 아니라 지식의 재사용이라는 측면에서 보다 높은 수준의 재사용이다. 여기서 소스코드의 재사용이 객체 지향 중심에서 컴포넌트 기반으로 바뀌어 가는 추세에 맞추어 프레임워크 역시 객체 지향 프레임워크에서 컴포넌트 프레임워크로 바뀌어 가고 있다. 컴포넌트 프레임워크는 객체지향 프레임워크와는 달리 컴포넌트들의 컴포지션에 의한 어플리케이션 개발로서, 컴포넌트간의 연결성을 명세함으로써 프레임워크의 아키텍쳐를 보다 상세하게 표현할 필요가 있다. 본 논문은 이러한 컴포넌트 컴포지션에 필요한 프레임워크의 아키텍쳐 정보를 표현하는 한가지 방법으로서 ADL을 통해 통해 프레임워크의 아키텍쳐를 표현하고, 이 ADL을 다른 프레임워크 보조 도구와 함께 사용하면서 컴포넌트 컴포지션을 보다 용이하게 함으로써, 어플리케이션을 개발하는 것과 보다 높은 수준의 재사용을 가능하게 하고자 한다.

  • PDF

레거시 Java Code로부터 디자인 패턴 추출을 위한 AOL 기반 프로세스 (AOL-Based Process for Design Patterns Extraction from Legacy Java Code)

  • 이창목;이정열;김정옥;유철중;장옥배
    • 한국정보과학회:학술대회논문집
    • /
    • 한국정보과학회 2002년도 가을 학술발표논문집 Vol.29 No.2 (2)
    • /
    • pp.127-129
    • /
    • 2002
  • 객체지향 디자인 패턴은 아주 작은 재사용 구조로서 객체지향 방법론의 가장 큰 장점인 재사용성과 모듈성을 극대화시켜 실제 구현 과정에서 해결 방안으로 제시 가능한 것으로 이를 적용하면 시스템 개발은 물론 유지 보수에도 큰 효과가 있다. 순공학에서는 디자인 패턴을 이용하는 이점이 명확하지만, 소프트웨어 인공물들 즉, 디자인이나 코드 등에서 디자인 패턴의 사례를 발견하기 위해 사용하는 역공학 기술은 프로그램의 이해, 디자인을 코드로 변환하는 변환성, 코드의 질적 평가 등의 핵심 영역에서 유용하다. 본 논문은 Java 소스 코드를 AOL(Abstract Object Language)이라는 추상객체언어를 이용하여 클래스 특성 추출기 및 패턴 식별기라는 단계를 통해 구조적 디자인 패턴을 추출하는 프로세스에 대하여 기술한다.

  • PDF