2011년 3월 4일 금요일

백업] 삼성 16

소스를 분석하는데 최고의 툴은 없는 것 같다.

여러가지를 함께 써야 한다.

우선 소스 인사이트가 메인이며, 이클립스, KSCOPE, GREP, FIND, VIM+CTAGS+CSCOPE 를 병행해서 쓴다.

그 중 소스 인사이트와 grep은 강력한 조합니다.

Grep -Risn -A 2 -B 2 "찾을 문자열" *

R은 하위 폴더 i는 대소문자 구별x, s는 에러 안나오게, n은 라인넘버 출력 A와 B는 합쳐 위 아래 2둘씩 더 보여주게 다.

grep을 이용하며 공용 라이브러리나 바이너리 안의 심볼도 검색해 주는 것 같아서 좀 더 커널단과 프레임웍단의 역분석이 더 쉽다.

리버싱에 별 관심이 없었는데.

요즈음에는 리버스 엔지니어링에 다시 관심을 가지게 되었다.

그리고 꿈과 목표를 정했다.

리버스 엔지니어. 물론, 매니지먼트도 포함한다.

새롭게 정립해 보려고 한다.

위키백과에서 무단으로 배껴 옮.

리버스 엔지니어링

위키백과 ― 우리 모두의 백과사전.
리버스 엔지니어링(영어: reverse engineering, RE) 또는 역공학(逆工學)은 장치 또는 시스템의 기술적인 원리를 그 구조분석을 통해 발견하는 과정이다. 이것은 종종 대상(기계 장치, 전자 부품, 소프트웨어 프로그램 등)을 조각내서 분석하는 것을 포함한다. 그리고 유지 보수를 위해, 또는 같은 기능을 하는 새 장치를 원본의 일부를 이용하지 않고 만들기 위해 대상의 세부적인 작동을 분석하는 것을 포함한다.
리버스 엔지니어링의 기원은 상업적 또는 군사적으로 하드웨어를 분석한 것에서 시작되었다. 목적은 원본 생산의 절차에 관한 지식이 거의 없는 상태에서, 최종 제품을 가지고 디자인 결정과정을 추론하는 것이다. 같은 기술이 레거시 소프트웨어 시스템을 응용하기 위해 현재 연구되고 있는데, 산업이나 국방이 아니고, 오류, 미완성, 접근 불가인 문서를 수정하기 위함이다.

사용 이유 [편집]

  • 소프트웨어 간의 상호 운용성
  • 사라진 문서
  • 상품 분석
  • 디지털 업데이트/수정
  • 안전 감사
  • 군사 또는 산업 간첩
  • 복제 보호 해제
  • 허가되지 않은 불법 복제의 생성
  • 소프트웨어 불법 정품 인증 및 시리얼 코드 생성
  • 소프트웨어 키젠크랙 생성
  • 학술/학문적 추구
  • 호기심
  • 경쟁사의 기술 정보 분석
  • 악성코드 분석
  • 소프트웨어 보안성 테스트

대표적인 도구 [편집]

소프트웨어 리버스 엔지니어링을 위해 IDA ProOllydbg 등의 도구들이 사용된다. 이 도구들은 어셈블리 언어들을 분석하기 쉽게 하도록 분석하는 기능과 코드를 변형하는 기능등을 제공한다.

리버스 엔지니어링에 대한 오해 [편집]

대한민국과 같은 일부 국가에서는 리버스 엔지니어링을 금지하고 있다. 그런데 이때 금지하는 것은 이진 코드로 이루어진 실행 파일(또는 실행 루틴)의 리버스 엔지니어링을 금지하고 있을 뿐, 실행 결과로써 만들어진 파일이나, 그 파일의 형식을 리버스 엔지니어링 하는 것을 금지하지는 않는다.

------
마지막에 누가 편집한거양~ 우리나라에선 인정 못받낭...ㅠ. 정말? 정말?

댓글 없음:

댓글 쓰기

국정원의 댓글 공작을 지탄합니다.

UPBIT is a South Korean company, and people died of suicide cause of coin investment.

 UPBIT is a South Korean company, and people died of suicide cause of coin. The company helps the people who control the market price manipu...