정보시스템감리사/보안
[감리사] [2021년 기출풀이] [보안] 101번
learning aid
2022. 5. 15. 12:38
101. 다음에서 설명하는 것으로 가장 적절한 것은?
장치나 시스템 구조를 분석하여 원리를 발견하는 과정을 의미하며, 이미 만든 프로그램의 동작원리를 이해하여 유사한 프로그램을 만드는 데 사용하기도 하고 프로그램의 보안 문제, 동작 문제, 오류 등을 제거/검토하는데 사용하기도 한다. |
① 백도어(backdoor)
② 포맷 스트링(format string)
③ 문맥교환(context switching)
④ 리버스 엔지니어링(reverse engineering)
[해설]
▣ 리버스 엔지니어링(reverse engineering)
1) 기본 개념
- 역공학이라 번역되며, 장치나 시스템의 구조를 분석하여 원리를 발견하는 과정을 말함
- 상업적이나 군사적으로 하드웨어를 분석하는 것에서 시작됨
- 또한, 어떤 대상을 생산하기 위한 지식이나 절차가 거의 없는 상태에서 최종 제품을 통해 설계하는 과정을 역추론하는 것이 리버스 엔지니어링의 목적임
2) 리버스 엔지니어링 공격
- 공격자는 공격대상 시스템 또는 응용프로그램에 대한 분석을 수행
- 분석 후 해당 시스템이나 응용프로그램이 갖고 있는 취약점을 찾을 수 있으며 이 취약점을 공격할 수 있는 코드를 생성 가능
3) 대응책
- 난독화 : 프로그램 코드를 읽기 어렵게 함(소스코드 난독화, 바이너리 난독화)
▣ 그 외 문제에서 제시된 용어
- 백도어 : 인증되지 않은 사용자에 의해 컴퓨터의 기능이 무단으로 사용될 수 있도록 컴퓨터에 몰래 설치된 통신 연결 기능으로서, 정상적인 인증 절차를 거치지 않고 컴퓨터와 암호 시스템 등에 접근할 수 있도록 하는 방법
- 포맷 스트링 : 데이터의 형태와 길이에 대한 불명확한 정의로 인한 문제점, 포맷 스트링을 이용하여 버퍼 오버플로우와 같이 메모리에 셸을 띄워 놓고, ret 값을 변조하여 관리자 권한을 획득하는 것
- 문맥교환 : 하나의 프로세스가 사용 중인 상태에서 다른 프로세스사용하도록 하기 위해, 이전의 프로세스의 상태(문맥)를 보관하고 새로운 프로세스의 상태를 적재하는 작업
[관련 기출] – 국가공무원 9급(정보시스템 보안) 2020년
문 5. 리버스 엔지니어링에 대한 설명으로 옳지 않은 것은?
① 안티 디버거는 안티 리버싱의 방법이다.
② 안티 리버싱은 리버스 엔지니어링을 쉽게 만드는 기술이다.
③ 리버스 엔지니어링에서 이용하는 도구는 OlyDbg와 IDA가 있다.
④ 완성된 소프트웨어를 역으로 분석하는 방법이다.
반응형