간편결제, 신용카드 청구할인
카카오페이 3,000원
(카카오페이 머니 결제시 최대할인 3천원 / 5만원 이상 결제, 기간 중 1회)
북피니언 롯데카드 30% (81,600원)
(최대할인 3만원 / 3만원 이상 결제)
EBS 롯데카드 20% (89,280원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 NEW 우리V카드 10% (100,440원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 현대카드 7% (103,790원)
(최대할인 3만원 / 3만원 이상 결제)
NH쇼핑&인터파크카드 20% (89,280원)
(최대할인 4만원 / 2만원 이상 결제)
Close

소프트웨어 취약점 분석을 위한 리버싱과 보안 평가 세트

소득공제

2013년 9월 9일 이후 누적수치입니다.

판매지수 47
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

124,000원

  • 111,600 (10%할인)

    6,200P (5%적립)

할인혜택
적립혜택
  • I-Point 적립은 출고완료 후 14일 이내 마이페이지에서 적립받기한 경우만 적립됩니다.
  • 추가혜택
    배송정보
    주문수량
    감소 증가
    • 이벤트/기획전

    • 연관도서(83)

    • 사은품(1)

    출판사 서평

    * 세트 구성: 전3권 *

    1) [소프트웨어 보안 평가 The Art of Software Security Assessment]
    2) [해킹의 꽃 디스어셈블링 Hacker Disassembling Uncovered: 보안 분석에 유용한 리버스 엔지니어링 기술]
    3) [리버싱: 리버스 엔지니어링 비밀을 파헤치다]

    [소프트웨어 보안 평가 The Art of Software Security Assessment] 소개

    이 책은 소프트웨어 보안 감사에 대하여 이전까지 쓰여진 어떤 책보다 상세하고, 정교하고 유용한 가이드를 제공한다. 능력 있는 보안 컨설턴트이자 VPN 같은 애플리케이션의 알려지지 않은 취약점을 개인적으로 연구하는 저자들의 특별한 경험을 바탕으로, 감지하기 어렵고 잘 숨겨진 보안 취약점들을 처음부터 끝까지 밝혀내는 방법을 소개한다. 이 책에서는 유닉스/리눅스와 윈도우 환경 모두에 대한 소프트웨어 취약점에 대한 모든 범위를 다룸으로써 네트워크와 웹 소프트웨어를 포함한 모든 종류의 애플리케이션과 함수에 대한 보안감사를 할 수 있게 해준다. 또한 과거 산업 전반에서 이목을 끌었던 취약점에 대한 소스코드 사례를 이용해 기술을 가르쳐준다.

    이 책에서 다루는 내용

    - 소스코드 감사: 이론, 실전, 방법론, 알려지지 않은 자료 교환
    - 보안 소프트웨어 디자인과 보안심사 간 불일치 조율
    - 구조 리뷰 수행
    - 메모리 관리, 데이터 타입, 비정상적인 데이터와 관련된 취약점 식별 방법
    - 유닉스/리눅스 평가: 권한, 파일 및 절차
    - 객체나 파일시스템을 포함한 윈도우 관련 이슈
    - 프로세스 간 통신, 동기화 및 상태 감사
    - 네트워크 소프트웨어 평가: IP 스택, 방화벽, 일반적인 애플리케이션 프로토콜
    - 웹 애플리케이션과 기술 감사

    이 책의 대상 독자

    이 책은 경험이 있는 개발자가 이해할 수 있게 작성됐다. 독자는 적어도 하나의 프로그래밍 언어에 능통해야 하며, 기본적인 C/C++ 프로그래밍에 익숙해야 한다. 이 책의 여러 단계에 걸쳐 인텔 어셈블리 언어가 사례로 사용됐지만, 최소한으로 사용했으며 최대한 C코드와 비슷하게 옮기려고 노력했다. 가장 일반적인 운영체제와 자주 사용되는 플랫폼을 사용했고, 최대한 플랫폼에 제약을 받지 않은 일반적인 내용을 포함하게 최선을 다해 만들었다. 필요에 따라 이 책에서 다루지 않는 배경 지식을 제공하기 위해 추가적인 리소스를 참조했다.

    [해킹의 꽃 디스어셈블링 Hacker Disassembling Uncovered] 소개

    이 책은 고급 해커의 필수 능력인 디스어셈블링 기법을 집중적으로 다룬다. 분석에 필요한 기본 도구와 어셈블리어 분석을 시작으로 각종 보안 메커니즘을 우회할 수 있는 방법을 설명한다. 디버깅, 디스어셈블링에 대한 기본 지식부터 커널 분석, 고급 패치 기술 등 분석 과정에서 마주칠 수 있는 깊이 있는 주제들을 다양한 관점과 예제를 통해 학습할 수 있는 훌륭한 분석 길잡이가 되어 줄 것이다.

    이 책에서 다루는 내용

    디스어셈블이 필요한 상황, 특정 언어 구조체를 분석하기 위한 시작점, 보호 메커니즘 개발자가 숨겨 놓은 트랩에 빠지지 않고 수백 메가에 육박하는 코드 밀림에서 길을 잃지 않는 방법을 알려주는 책이다. 특히 이 개정2판에서는 실제 디스어셈블링 기법에 관련된 내용이 추가됐다. 특히 메모리 덤프 분석, 합법적인 소프트웨어 보호 메커니즘, 악성 프로그램 관련 내용이 새로운 단원으로 추가됐다. 또한 관련 예제와 원리들은 최신 동향에 맞춰 수정했다. 안티디버깅 기법 우회, 패킹, 암호화, 다형성, 간단한 난독화 코드 극복과 관련된 내용에 주안점을 두고 작성했다.

    [리버싱] 소개

    소프트웨어를 해부해서 설계와 구현 내용, 심지어 소스코드까지도 알아낼 수 있어서 최근 보안업계의 화두로 떠오른 리버싱. 복제방지기술 무력화와 상용보안대책 무력화로 무장한 해커들의 리버싱 공격 패턴을 파악하기 위한 최신 기술을 담은 해킹 보안 업계 종사자의 필독서. 소프트웨어의 약점을 찾아내 보완하고, 해커의 공격이나 악성코드를 무력화하며, 더 좋은 프로그램을 개발할 수 있도록 프로그램의 동작 원리를 이해하는 데도 효율적인 리버스 엔지니어링의 비밀을 파헤친다.

    이 책에서 다루는 내용

    - IA-32 호환 프로세서용 컴파일러가 만든 어셈블리 언어 코드를 읽는 방법
    - 문서화되지 않은 파일 포맷이나 네트워크 프로토콜 해석
    - 리버스 엔지니어링이 합법인 경우와 불법인 경우, 그리고 불법일 때의 이유
    - 리버싱을 활용해 해커가 복사 방지 기술을 무력화하는 방법
    - 리버스 엔지니어링을 적용해 악성코드를 무력화하는 방법
    - 코드 리버싱을 막는 방어책과 효과적인 수행 방법
    - 닷넷 플랫폼 리버싱과 어셈블리 언어인 MSIL
    - 실제 악성코드 프로그램 분석 방법
    - 악성코드 프로그램을 이용해 공격자가 감염된 시스템 제어권을 획득하는 과정

    이 책의 대상 독자

    이 책은 여러 분야에 종사하는 사람들에게 도움이 되는 기술을 다양하게 다룬다. 운영체제, 어셈블리 언어, 컴파일 같은 소프트웨어의 다양한 로우레벨 측면을 알고 싶어 하는 소프트웨어 개발자는 특히 더 유용한 정보를 많이 찾을 수 있을 것이다. 운영체제나 소프트웨어 라이브러리, 특정 소프트웨어 컴포넌트 등 기존 코드를 빠르고 효과적으로 분석할 수 있는 기술을 향상시키려는 사람에게도 유용할 것이다. 이외에도 이 책은 보안이나 저작권 제어 등과 같은 다양한 주제도 들어 있으므로, 리버스 엔지니어링에 특별한 관심이 없더라도 이 책이 다루는 다양한 주제에서 흥미로운 내용을 찾을 수 있을 것이다.

    이 책을 읽기 전 선수 지식을 제공하기 위해 나는 비교적 최신의 기술 사항들을 가능한 한 모두 다루려고 노력했다. 따라서 1부는 이 책을 읽는 데 꼭 필요한 기본 지식을 설명하면서 시작한다. 하지만 이 책에서 정말로 많은 것을 얻기 원하는 독자라면 어느 정도의 소프트웨어 개발 경험이나 지식은 갖추는 편이 좋다. 전문적인 소프트웨어 개발 경험은 전혀 없지만 현재 컴퓨터 공학을 전공하는 학생이라면 이 책을 읽는 데 큰 문제는 없을 것이다. 반대로 컴퓨터를 전공한 적은 없지만 수년간 프로그래밍 작업을 수행해 온 사람이라면 이 책에서 더 많은 내용을 배울 수 있을 것이다.

    마지막으로 이 책은 로우레벨 소프트웨어와 리버스 엔지니어링 경험이 이미 있는 사람 중에서 흥미로운 고급 기술을 배우길 원하거나 기존 코드에서 상세한 정보를 추출하는 방법을 알고자 하는 사람들에게 도움이 많이 될 것이다.

    목차

    [소프트웨어 보안 평가 The Art of Software Security Assessment]

    1부 소프트웨어 보안 평가 소개

    1장 소프트웨어 기본 취약점

    소개
    취약점
    보안 정책
    보안 요구 사항
    감사의 필요성
    코드 감사와 블랙박스 테스트
    코드 감사와 개발 라이프 사이클
    취약점 분류
    설계 취약점
    구현 취약점
    운영 취약점
    구별의 애매모호함
    공통점
    입력과 데이터 흐름
    신뢰 관계
    가정과 잘못된 신뢰
    인터페이스
    환경 공격
    예외 조건
    정리

    2장 설계 검토

    소개
    소프트웨어 설계의 기본
    알고리즘
    추상화와 분해
    신뢰 관계
    소프트웨어 설계의 원칙
    설계 결함
    보안 정책 강화
    인증
    인가
    책임 추적성
    기밀성
    무결성
    가용성
    위협 모델링
    정보 수집
    애플리케이션 아키텍처 모델링
    위협 식별
    발견한 위협의 문서화
    구현 리뷰에 대한 우선순위 매기기
    정리

    3장 운영 검토

    소개
    취약점 노출
    공격 영역
    안전하지 않은 초기 설정
    접근 제어
    불필요한 서비스
    보안 채널
    스푸핑과 식별
    네트워크 프로파일
    웹과 관련된 고려 사항
    HTTP 요청 방법
    디렉토리 인덱싱
    파일 처리기
    인증
    기본 사이트 설치
    너무 자세한 에러 메시지
    대중화된 관리자 인터페이스
    보호 대책
    개발 대책
    호스트 기반 대책
    네트워크 기반 대책
    정리

    4장 애플리케이션 검토 프로세스

    소개
    애플리케이션 검토 프로세스의 개요
    근거
    프로세스 개요
    사전 평가
    범위 산정
    애플리케이션 접근
    정보 수집
    애플리케이션 검토
    단순 검토의 회피
    반복 프로세스
    초기 준비
    계획
    작업
    반영
    문서화와 분석
    보고와 치료 지원
    코드 탐색
    외부 흐름 민감도
    추적 방향
    코드 감사 전략
    코드 이해 전략
    후보 지점 전략
    설계 일반화 전략
    코드 감사 기법
    내부 흐름 분석
    서브시스템과 의존성 분석
    코드 다시 읽기
    탁상 검사
    테스트 케이스
    코드 감사자의 도구상자
    소스코드 탐색기
    디버거
    이진 탐색 도구
    퍼지 테스팅 도구
    사례 연구: OpenSSH
    사전 평가
    구현 분석
    고수준 공격
    결과의 문서화
    정리

    2부 소프트웨어 취약점

    5장 메모리 오염

    소개
    버퍼 오버플로우
    프로세스 메모리 레이아웃
    스택 오버플로우
    힙 오버플로우
    Off-by-One 에러
    전역, 정적 데이터 오버플로우
    셸코드
    코드 작성법
    메모리에서 코드 찾기
    보호 메커니즘
    스택 쿠키
    힙 구현 강화
    비실행 스택과 힙 보호
    주소 공간 구조 랜덤화
    SafeSEH
    함수 포인트 난독화
    메모리 오염의 영향 평가
    메모리에서 버퍼의 위치
    다른 데이터로 덮어쓰기 되는 것
    덮어쓰기가 가능한 바이트 수
    메모리를 오염시키는 데 사용될 수 있는 데이터
    메모리 블록의 공유
    적용해야 할 보호
    정리

    6장 C 언어 이슈

    소개
    C 언어 배경
    데이터 저장 개요
    바이너리 인코딩
    바이트 오더
    보편적 구현
    산술적 경계 조건
    부호 없는 정수 경계
    부호 있는 정수 경계
    형 변환
    개요
    변환 규칙
    단순 변환
    정수 승격
    정수 승격의 응용
    일반 산술 변환
    일반 산술 변환 응용
    형 변환 요약
    형 변환 취약점
    부호 있는/부호 없는 변환
    부호 확장
    절단
    비교
    연산자
    sizeof 연산자
    예상하지 못한 결과
    포인터 연산
    포인터 개요
    포인터 연산 개요
    취약점
    기타 C 특성
    연산 순서
    구조체 패딩
    우선순위
    매크로/전처리기
    오탈자
    정리

    7장 프로그램 구성 요소

    소개
    감사 변수의 사용
    변수의 관계
    구조체와 객체의 잘못된 처리
    변수 초기화
    산술 연산 경계
    변수 타입 혼동
    리스트와 테이블
    제어 흐름 감사
    반복문의 구조
    흐름 전환 구문
    Switch 구문
    함수 감사
    함수 감사 로그
    반환 값의 확인과 해석
    함수 부수 효과
    인자의 의미
    메모리 관리에 대한 감사
    ACC 로그
    할당 함수
    할당자의 스코어카드와 에러의 영역
    이중 메모리 해제
    정리

    8장 문자열과 메타문자

    소개
    C 언어의 문자열 처리
    범위가 제한되지 않은 문자열 함수
    범위를 제한하는 문자열 함수
    일반적인 이슈
    메타문자
    삽입된 구분자
    NUL 문자 주입
    절단
    일반적인 메타문자 형식
    경로 메타문자
    C 형식 문자열
    셸 메타문자
    펄 open()
    SQL 질의
    메타문자 필터링
    메타문자 제거
    이스케이프 메타문자
    메타문자 회피
    문자 집합과 유니코드
    유니코드
    윈도우 유니코드 함수
    정리

    9장 유닉스 I: 권한과 파일

    소개
    유닉스 기초
    사용자와 그룹
    파일과 디렉토리
    프로세스
    권한 모델
    권한 프로그램
    사용자 ID 함수
    그룹 ID 함수
    권한 취약점
    권한의 무모한 사용
    영구적인 권한 제거
    임시 권한 제거
    감사 권한 관리 코드
    권한 확장
    파일 보안
    파일 ID
    파일 권한
    디렉토리 권한
    파일 운영과 권한 관리
    파일 생성
    디렉토리 안정성
    파일명과 경로
    위험한 장소
    흥미로운 파일
    파일 내부
    파일 디스크립터
    inode
    디렉토리
    링크
    심볼릭 링크
    하드 링크
    경쟁 상태
    검사 시점과 사용 시점
    stat() 함수 계열
    돌아온 파일 경쟁
    권한 상승
    소유권 상승
    디렉토리 권한 획득
    임시 파일
    고유 파일 생성
    파일 재사용
    임시 디렉토리 청소
    표준 입출력 파일 인터페이스
    파일 열기
    파일에서 읽기
    파일에 쓰기
    파일 닫기
    정리

    10장 유닉스 II: 프로세스

    소개
    프로세스
    프로세스 생성
    fork() 변형 모델
    프로세스 종료
    fork()와 파일 오픈
    프로그램 호출
    직접 호출
    간접 호출
    프로세스 속성
    프로세스 속성 유지
    리소스 제한
    파일 디스크립터
    환경 배열
    프로세스 그룹, 세션, 터미널
    프로세스 간 통신
    파이프
    명명된 파이프
    시스템 V IPC
    유닉스 도메인 소켓
    원격 프로시저 호출
    RPC 정의 파일
    RPC 디코딩 경로
    인증
    정리

    11장 윈도우 I: 객체와 파일 시스템

    소개
    배경
    객체
    객체 네임스페이스
    객체 핸들
    세션
    보안 ID
    로그온 권한
    액세스 토큰
    보안 기술자
    액세스 마스크
    ACL 상속
    기술자 프로그래밍 인터페이스
    ACL 권한 감사
    프로세스와 스레드
    프로세스 로딩
    ShellExecute와 ShellExecuteEx
    DLL 로딩
    서비스
    파일 접근
    파일 권한
    파일 I/O API
    링크
    레지스트리
    키 권한
    키와 값 스쿼팅
    정리

    12장 윈도우 II: 프로세스 간 통신

    소개
    윈도우 IPC 보안
    리다이렉터
    가장
    윈도우 메시징
    윈도우 스테이션 객체
    데스크톱 객체
    윈도우 메시지
    섀터 공격
    DDE
    터미널 세션
    파이프
    파이프 권한
    명명된 파이프
    파이프 생성
    파이프에서의 가장
    파이프 스쿼팅
    메일슬롯
    메일슬롯 권한
    메일슬롯 스쿼팅
    원격 프로시저 호출
    RPC 연결
    RPC 전송
    마이크로소프트 인터페이스 정의 언어
    IDL 파일 구조
    애플리케이션 설정 파일
    RPC 서버
    RPC에서의 가장
    컨텍스트 핸들과 상태
    RPC에서의 스레드
    RPC 애플리케이션 감사
    COM
    COM: 빠른 지침서
    DCOM 설정 유틸리티
    DCOM 서브시스템 접근 권한
    DCOM 접근 제어
    DCOM에서의 가장
    MIDL 다시 살펴보기
    액티브 템블릿 라이브러리
    DCOM 애플리케이션 감사
    COM 등록 리뷰
    액티브X 보안
    정리

    13장 동기화와 상태

    소개
    동기화 문제
    재진입과 비동기 안전 코드
    경쟁 상태
    기아 상태와 교착 상태
    프로세스 동기화
    시스템 V 프로세스 동기화
    윈도우 프로세스 동기화
    내부 프로세스 동기화의 취약점
    신호
    신호 전송
    신호 처리
    위치 점프
    신호 취약점
    신호 스코어보드
    스레드
    PThreads API
    윈도우 API
    스레딩 취약점
    정리

    3부 소프트웨어 취약점 사례

    14장 네트워크 프로토콜

    소개
    인터넷 프로토콜
    IP 주소 기초
    IP 패킷의 구조
    IP 헤더 검증 기초
    IP 옵션 처리
    발신지 라우팅
    단편화
    UDP
    기본적인 UDP 헤더 검증
    UDP 이슈
    전송 제어 프로토콜
    기본적인 TCP 헤더 검증
    TCP의 옵션 처리
    TCP 커넥션
    TCP 스트림
    TCP 처리
    정리

    15장 방화벽

    소개
    방화벽 개요
    프록시와 패킷 필터
    공격 지점
    프록시 방화벽
    패킷 필터링 방화벽
    상태 비보존 방화벽
    TCP
    UDP
    FTP
    단편화
    간단한 상태 보존 방화벽
    TCP
    UDP
    방향성
    단편화
    상태 보존 인스펙션 방화벽
    계층화 이슈
    스푸핑 공격
    떨어진 곳에서의 스푸핑
    근거리에서의 스푸핑
    멀리 떨어진 곳에서의 유령 공격
    정리

    16장 네트워크 응용 프로토콜

    소개
    응용 프로토콜 감사
    문서 수집
    알려지지 않은 프로토콜의 요소 확인
    데이터 타입과 프로토콜 매치
    데이터 검증
    시스템 리소스 접근
    하이퍼텍스트 전송 규약
    헤더 해석
    리소스 접근
    유틸리티 함수
    데이터 포스팅
    인터넷 보안 연합과 키 관리 프로토콜
    페이로드
    페이로드 유형
    암호화 취약점
    추상 구문 기법(ASN.1)
    기본 인코딩 규칙
    표준 인코딩과 식별 인코딩
    BER, CER, DER 구현의 취약점
    묶음 인코딩 규칙(PER)
    XML 인코딩 규칙
    XER 취약점
    도메인 네임 시스템
    도메인 네임과 리소스 레코드
    네임 서버와 리졸버
    영역
    리소스 레코드 규약
    기본 사용 사례
    DNS 프로토콜 구조 입문
    DNS 네임
    길이 변수
    DNS 스푸핑
    정리

    17장 웹 애플리케이션

    소개
    웹 기술 개요
    기본
    정적 콘텐츠
    CGI
    웹 서버 API
    서버 측 인클루드
    서버 측 변환
    서버 측 스크립팅
    HTTP
    개요
    버전
    헤더
    메소드
    매개변수와 폼
    상태(State)와 HTTP 인증
    개요
    클라이언트 IP 주소
    레퍼러 요청 헤더
    HTML과 URL에 상태 삽입
    HTTP 인증
    쿠키
    세션
    아키텍처
    중복
    프레젠테이션 로직
    비즈니스 로직
    다층 구조
    비즈니스 계층
    웹 계층: 모델-뷰-컨트롤러
    문제 영역
    클라이언트 관점
    클라이언트 제어
    페이지 흐름
    세션
    인증
    인가와 접근 제어
    암호화와 SSL/TLS
    피싱과 위장
    일반 취약점
    SQL 인젝션
    운영체제와 파일 시스템 상호작용
    XML 인젝션
    XPath 인젝션
    크로스사이트 스크립팅
    스레딩 이슈
    C/C++ 문제
    웹의 척박한 현실
    점검 전략
    정리

    18장 웹 테크놀로지

    소개
    웹 서비스와 서비스 지향 아키텍처
    SOAP
    REST
    AJAX
    웹 애플리케이션 플랫폼
    CGI
    인덱스된 쿼리
    환경 변수
    경로 혼란

    SQL 인젝션
    파일 접근
    셸 호출
    파일 포함
    인라인 계산
    크로스사이트 스크립팅
    테인트 모드
    PHP
    SQL 인젝션
    파일 접근
    셸 호출
    파일 포함
    인라인 계산
    크로스사이트 스크립팅
    설정
    자바
    SQL 인젝션
    파일 접근
    셸 호출
    파일 포함
    JSP 파일 포함
    인라인 계산
    크로스사이트 스크립팅
    스레딩 이슈
    설정
    ASP
    SQL 인젝션
    파일 접근
    셸 호출
    파일 포함
    인라인 계산
    크로스사이트 스크립팅
    설정
    ASP.NET
    SQL 인젝션
    파일 접근
    셸 호출
    파일 포함
    인라인 계산
    크로스사이트 스크립팅
    설정
    ViewState
    정리

    [해킹의 꽃 디스어셈블링 Hacker Disassembling Uncovered]

    1부 해킹 툴의 소개

    1장 해킹 툴 입문

    디버거
    디스어셈블러
    디컴파일러
    헥스 편집기
    언패커
    덤퍼
    리소스 편집기
    스파이
    감시 프로그램
    수정 프로그램
    보호 CD 복사기

    2장 유닉스용 해킹 툴

    디버거
    디스어셈블러
    스파이
    헥스 편집기
    덤퍼
    자동화된 보호 툴

    3장 디버거 에뮬레이션과 에뮬레이터

    에뮬레이터 소개
    역사적 개요
    대표적인 에뮬레이터
    에뮬레이터 선택

    4장 어셈블러 소개

    어셈블리어의 철학
    C 예제로 어셈블리 개념 설명
    작업공간으로서 어셈블리 삽입
    사용 가능한 툴
    어셈블리 번역기의 개요와 비교

    2부 기본 해킹 기술

    5장 기본 해킹 기술 익히기

    비밀 키 유형에 따른 보호 메커니즘 분류
    보호 강도
    상용 솔루션의 단점
    사용 기술의 구현 에러
    심각한 결과를 야기하는 사소한 오류의 정리

    6장 시작 준비

    보호 기술 제작과 크랙
    디스어셈블러 익히기
    실전 크랙 예제
    정리

    7장 애플리케이션 디버깅 익히기

    디버깅 소개
    디스어셈블러와 디버거를 같이 사용
    API 함수에 브레이크 포인트 설정
    메시지에 브레이크 포인트 설정
    데이터에 브레이크 포인트 설정
    스택 역추적
    DLL 디버깅
    정리

    8장 유닉스와 리눅스 환경에서의 디버깅 특성

    GDB 기반의 Ptrace
    GDB에서 바이너리 파일 디버깅

    9장 Linice로 수행하는 커널 디버깅의 기초

    시스템 요구 사항
    Linice 컴파일과 설정
    시스템 부팅과 디버거 실행
    Linice로 작업할 때 지켜야 할 기본 원칙
    정리

    10장 고급 디버깅 주제

    소프트아이스를 로그 수집기로 사용
    무작위 브레이크 포인트로 해킹 트릭 사용
    범위 설정을 통한 크래킹
    정리

    3부 고급 디스어셈블링 기술

    11장 32비트 PE 파일 디스어셈블링

    다양한 실행 환경에서 PE 파일 구조의 특징
    일반적인 개념과 PE 파일의 요구 사항
    PE 파일 구조
    PE 파일에 코드를 삽입하거나 제거하는 기술
    정리

    12장 리눅스와 BSD에서 ELF 파일 디스어셈블링

    필요한 도구
    ELF 파일 구조
    ELF 파일에 외부 코드 삽입
    리눅스에서 간단한 크랙미 프로그램을 디스어셈블링
    정리

    13장 x86-64 아키텍처에서 수행하는 디스어셈블링

    소개
    필요한 도구
    x86-64 아키텍처의 개요
    64비트 모드로 전환
    x86-64 환경에서 만드는 'Hello, World' 프로그램
    정리

    14장 리눅스 커널 디스어셈블링과 해킹

    디스어셈블링 리눅스 커널
    커널 해킹의 비밀

    15장 고급 패칭 기법

    온라인 패칭의 비밀과 트릭
    클라이언트 프로그램을 크래킹하는 잘 알려지지 않은 방법
    윈도우 NT/2000/XP 커널 핵
    BSOD 이후의 세계가 존재하는가?
    참고 사이트
    정리

    16장 기타 형식의 파일 디스어셈블링

    PDF 파일 디스어셈블링
    정리

    4부 실제 코드 연구

    17장 윈도우에서의 숨바꼭질

    윈도우 환경을 위한 안티디버깅 기법
    윈도우 환경에서 사용되는 스텔스 기법
    정리

    18장 패커 극복법

    예비 분석
    언패킹과 대체 방안
    언패킹 알고리즘
    오리지널 진입점 검색
    보호된 애플리케이션을 덤프
    정리

    19장 난독화 극복법

    난독화 도구의 작동 원리
    난독화된 프로그램을 크랙하는 방법
    블랙박스 접근법
    가상머신 지하 감옥
    정리

    20장 리눅스와 BSD에서의 패커 극복법

    패커가 성능에 미치는 영향
    UPX
    Burneye
    Shiva
    패커 비교
    정리

    21장 악성코드 디버깅과 디스어셈블링
    디버거를 활용한 방첩 활동
    공격 코드 감사와 디스어셈블링
    참고 자료
    정리

    찾아보기

    [리버싱]

    1부 리버싱 101

    1장 기초

    리버스 엔지니어링
    소프트웨어 리버스 엔지니어링: 리버싱
    리버싱 적용
    보안 관련 리버싱
    악성코드 소프트웨어
    암호 알고리즘 리버싱
    디지털 저작권 관리
    프로그램 바이너리 감사
    소프트웨어 개발에서의 리버싱
    소프트웨어 간의 상호 운용
    경쟁 제품 분석
    소프트웨어의 품질과 안정성 측정
    로우레벨 소프트웨어
    어셈블리 언어
    컴파일러
    가상 머신과 바이트 코드
    운영체제
    리버싱 절차
    시스템 레벨 리버싱
    코드 레벨 리버싱
    사용 툴
    시스템 모니터링 툴
    디스어셈블러
    디버거
    디컴파일러
    리버싱은 합법적인 작업인가
    상호 운용성
    경쟁
    저작권법
    영업 비밀과 특허권
    디지털 밀레니엄 저작권법
    DMCA 사례
    사용권 계약
    예제 코드와 툴
    정리

    2장 로우레벨 소프트웨어

    하이레벨 관점
    프로그램 구조
    모듈
    공통 구성 요소
    데이터 처리
    변수
    사용자 정의 데이터 구조체
    리스트
    제어 흐름
    하이레벨 언어
    C
    C++
    자바
    C#
    로우레벨 관점
    로우레벨 데이터 처리
    레지스터
    스택

    실행 데이터 섹션
    제어 흐름
    어셈블리 언어 입문
    레지스터
    플래그
    명령 포맷
    기본 명령
    데이터 이동
    산술 연산
    비교 연산
    조건 분기
    함수 호출
    코드 예
    컴파일러 기초
    컴파일러란
    컴파일러 아키텍처
    프런트엔드
    중간 표현
    최적화기
    백엔드
    리스팅 파일
    사용 컴파일러
    실행 환경
    소프트웨어 실행 환경(가상 머신)
    바이트 코드
    인터프리터
    Just-in-Time 컴파일러
    리버싱 전략
    최신 프로세서에서의 하드웨어 실행 환경
    Intel NetBurst
    μops(Micro-Ops)
    파이프라인
    분기 예측
    정리

    3장 윈도우 기초

    컴포넌트와 기본 아키텍처
    간략한 역사
    특징
    지원 하드웨어
    메모리 관리
    가상 메모리와 페이징
    페이징
    페이지 폴트
    워킹 셋
    커널 메모리와 유저 메모리
    커널 모드 공간
    섹션 객체
    VAD 트리
    유저 모드 메모리 할당
    메모리 관리 API
    객체와 핸들
    네임드 객체
    프로세스와 스레드
    프로세스
    스레드
    컨텍스트 스위칭
    동기화 객체
    프로세스 초기화 과정
    애플리케이션 프로그래밍 인터페이스
    Win32 API
    네이티브 API
    시스템 콜 메커니즘
    실행 포맷
    기본 개념
    이미지 섹션
    섹션 정렬
    동적 링크 라이브러리
    헤더
    임포트와 익스포트
    디렉터리
    입력과 출력
    I/O 시스템
    Win32 서브시스템
    객체 관리자
    구조화된 예외 처리
    정리

    4장 리버싱 툴

    다양한 리버싱 방법
    오프라인 코드 분석(Dead-Listing)
    라이브 코드 분석
    디스어셈블러
    IDA Pro
    ILDasm
    디버거
    유저 모드 디버거
    OllyDbg
    WinDbg를 이용한 유저 모드 디버깅
    IDA Pro
    PEBrowse Professional Interactive
    커널 모드 디버거
    WinDbg를 이용한 커널 모드 디버깅
    Numega SoftICE
    가상 머신에서의 커널 디버깅
    디컴파일러
    시스템 모니터링 툴
    패치 툴
    Hex Workshop
    기타 리버싱 툴
    실행 이미지 덤프 툴
    DUMPBIN
    PEView
    PEBrowse Professional
    정리

    2부 리버싱 응용

    5장 리버싱 실전

    리버싱과 상호운용성
    기본 원칙
    문서화되지 않은 API를 찾는 방법
    찾고자 하는 것
    사례 연구: NTDLL.DLL의 Generic Table API
    RtlInitializeGenericTable
    RtlNumberGenericTableElements
    RtlIsGenericTableEmpty
    RtlGetElementGenericTable
    셋업과 초기화
    로직과 구조
    검색 루프 1
    검색 루프 2
    검색 루프 3
    검색 루프 4
    소스코드 추출
    RtlInsertElementGenericTable
    RtlLocateNodeGenericTable
    RtlRealInsertElementWorker
    Splay 트리
    RtlLookupElementGenericTable
    RtlDeleteElementGenericTable
    분석한 내용 종합
    정리

    6장 파일 포맷 분석

    Cryptex
    Cryptex 사용
    Cryptex 리버싱
    패스워드 검증 과정
    "Bad Password" 메시지 잡아내기
    패스워드 변환 알고리즘
    패스워드 해싱
    디렉터리 구조
    디렉터리 처리 코드 분석
    파일 엔트리 분석
    디렉터리 구조 덤프
    파일 추출 과정
    파일 목록 검색
    파일 복호화
    부동소수점 연산
    복호화 루프
    해시 값 검증
    정리
    좀 더 자세히
    결론

    7장 프로그램 바이너리 감사

    문제점 정의
    보안 취약점
    스택 오버플로우
    간단한 스택 보안 취약점
    내부 구현
    스택 검사
    비실행 가능 메모리
    힙 오버플로우
    문자열 필터
    정수 오버플로우
    사용자 입력 정수에 대한 산술 연산
    형 변환 에러
    사례: IIS 인덱싱 서비스 보안 취약점
    CVariableSet::AddExtensionControlBlock
    DecodeURLEscapes
    정리

    8장 악성코드 리버싱

    악성코드의 종류
    바이러스

    트로이 목마
    백도어
    모바일 코드
    애드웨어/스파이웨어
    스틱키 소프트웨어
    미래의 악성코드
    정보 탈취 웜
    바이오스/펌웨어 악성코드 331
    악성코드의 목적
    악성코드 취약점
    다형성
    변종
    안전한 리버싱 환경 구축
    Backdoor.Hacarmy.D
    실행 파일 언패킹
    최초 실행
    설치
    네트워크 연결
    서버에 연결
    채널에 접속
    백도어와 통신
    SOCKS4 서버 실행
    자체 제거
    Backdoor.Hacarmy.D: 명령 레퍼런스
    정리

    3부 크래킹

    9장 저작권 침해와 불법 복사 방지

    저작권
    사회적 측면
    소프트웨어 저작권 침해
    문제 정의
    보안 결함
    필요 조건
    이론적으로 크랙이 불가능한 모델
    보호 유형
    매체 기반 보호
    시리얼 번호
    질의 응답과 온라인 인증
    하드웨어 기반의 보호
    서비스로서의 소프트웨어
    진보된 보호 개념
    크립토 프로세서
    디지털 저작권 관리
    DRM 모델
    윈도우 미디어 저작권 관리자
    시큐어 오디오 패스
    워터 마크
    신뢰 컴퓨팅
    복사 방지 기술 공격
    정리

    10장 안티 리버싱 기술

    안티 리버싱이 필요한 이유
    기본적인 안티 리버싱 방법
    심볼 정보 제거
    코드 암호화
    안티 디버거 기술
    디버거 기본
    IsDebuggerPresent API
    SystemKernelDebuggerInformation
    싱글 스텝 인터럽트를 이용한 SoftICE 탐지
    트랩 플래그
    코드 체크섬
    안티 디스어셈블러
    선형 스윕 디스어셈블러
    Recursive Traversal 디스어셈블러
    적용
    코드 난독화
    제어 흐름 변환
    Opaque Predicates
    안티 디컴파일러
    Table Interpretation
    인라인닝과 아웃라이닝
    인터리빙 코드
    순서 변환
    데이터 변환
    변수 인코딩
    배열 재구성
    정리

    11장 보호 기술 파괴

    패치
    Keygen
    키 생성 알고리즘 추출
    고급 크래킹: Defender
    Defender의 초기화 루틴 리버싱
    복호화된 코드 분석
    사라진 SoftICE
    스레드 리버싱
    "Killer" 스레드 무력화
    KERNEL32.DLL 로딩
    함수 재암호화
    엔트리 포인트로 다시 돌아가서
    프로그램 파라미터 파싱
    사용자 이름 처리
    사용자 정보 검증
    코드 복호화
    Defender에 대한 무작위 대입
    Defender의 보호 기술
    함수 레벨의 암호화
    상대적으로 강력한 암호 블록 체인
    재 암호화
    애플리케이션/운영체제와의 인터페이스 난독화
    프로세서 타임 스탬프 검증 스레드
    실행 시에 복호화 키 생성
    상호 의존 키
    사용자 입력 기반의 복호화 키
    인라이닝
    정리

    4부 디스어셈블리 너머

    12장 닷넷 리버싱

    기반 지식
    닷넷 기본
    매니지드 코드
    닷넷 프로그래밍 언어
    공통 타입 시스템
    중간 언어
    평가 스택
    활성화 레코드
    IL 명령
    IL 코드 샘플
    Counting Items
    링크드 리스트 샘플
    디컴파일러
    난독기
    심볼 이름 변경
    제어 흐름 변경
    디컴파일과 디스어셈블리 차단
    난독화된 코드 리버싱
    XenoCode
    Preemptive Solutions의 DotFuscator
    Remotesoft 난독기와 링커
    Remotesoft Protector
    어셈블리 프리컴파일
    어셈블리 암호화
    정리

    13장 디컴파일

    네이티브 코드 디컴파일
    전형적인 디컴파일러의 구조
    중간 표현
    표현식과 표현식 트리
    제어 흐름 그래프
    프론트엔드
    의미 분석
    제어 흐름 그래프 생성
    코드 분석
    데이터 흐름 분석
    단일 정적 할당
    데이터 전달
    레지스터 변수 구별
    데이터 타입 전달
    타입 분석
    기본 데이터 타입
    복잡한 데이터 타입
    제어 흐름 분석
    라이브러리 함수의 구별
    백엔드
    실제 IA-32 디컴파일러
    정리

    부록 A 코드 구조 해석
    부록 B 컴파일된 연산의 이해
    부록 C 프로그램 데이터 해석
    부록 D 인용문

    저자소개

    마크 다우드(Mark Dowd) [저] 신작알림 SMS신청 작가DB보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    맥아피(McAfee)의 수석 보안 아키텍트로 근무하고 있으며, 애플리케이션 보안 분야에서 다년간의 경험을 갖고 있다. 인터넷 보안 시스템(ISS)인 엑스포스(X-Force)에서 다년간 수석 연구가로 근무한 경험을 기반으로 유비쿼터스 인터넷 소프트웨어 분야에서 수많은 취약점을 발견했으며, 마이크로소프트의 익스체인지 서버 같은 메일 전송 서비스, OpenSSH, 파이어폭스의 모질라 같은 인터넷 브라우저, VPN, 마이크로소프트의 SSL 같은 분야에서 주소 체계 등의 심각한 문제점을 찾거나 식별하는 데 탁월한 능력을 보여준다. 그의 연구는 산업계의 유명 컨퍼런스인 블랙

    펼쳐보기
    존 맥도날드(John McDonald) [저] 신작알림 SMS신청 작가DB보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    다양한 분야의 기술 및 플랫폼을 포괄해 진보된 애플리케이션 보안 평가를 수행할 수 있는 전문성을 가진 네오햅시스(Neohapsis)의 상급 컨설턴트다. 보안 아키텍처나 맥아피, GmbH, 시티은행 등을 위한 취약점 연구가로 높은 평판을 갖고 있다. 취약점 연구가로서 솔라리스, BSD, 방화벽, OpenSSL, BIND 등의 이슈를 포함해 많은 분야의 취약점을 해결하는 데 도움을 주거나 취약점을 식별한다.

    저스틴 슈(Justin Schuh) [저] 신작알림 SMS신청 작가DB보기
    생년월일 -
    출생지 -
    출간도서 2종
    판매수 14권

    애플리케이션 보안 점검을 수행하는 네오햅시스의 상급 컨설턴트이자 점검 리더로서 이식된 장치의 펌웨어부터 배포되는 기업 웹 애플리케이션까지 시스템의 다양한 범위에 걸쳐 보안 평가를 수행하고 있다. 네오햅시스에 들어가기 전에는 미국 국방부 및 관련 업체의 컴퓨터 보안 분야에서 10년 동안 근무했다. 대정부서비스를 할 때에는 미국 국가안전보장국(National Security Agency)의 침투 테스트 팀(Red Team)의 수석 선임 연구원의 역할을 했다.

    크리스 카스퍼스키(Kris Kaspersky) [저] 신작알림 SMS신청 작가DB보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    기술 서적 저자로서, Hacker Uncovered 시리즈 도서들과, [Code Optimization: Effective Memory Usage(코드 최적화: 효율적인 메모리 사용)], [CD Cracking Uncovered: Protection Against Unsanctioned CD Copying(알려지지 않은 CD 크래킹: 승인되지 않은 CD 복사를 방지하는 보호 기술)], [Data Recovery Tips & Solutions: Windows, Linux, and BSD(데이터 복구 팁 & 솔루션: 다양한 관점에서 보는 윈도우)] 등의 저서, 그리고 리눅스, BSD 해킹, 디스어셈블링, 코드 최적화 등과 관련한 다양한 기고문을 발표했다. 주로 컴파일러 개발, 최적화 기술, 보안 메커니즘

    펼쳐보기
    엘다드 에일람(Eldad Eilam) [저] 신작알림 SMS신청 작가DB보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    리버리버스 엔지니어링 분야의 컨설턴트로서 고객에게 운영체제와 소프트웨어 리버스 엔지니어링의 전문 서비스를 제공한다. 수년간 개선되고 진일보된 리버스 엔지니어링 기술을 개발하려고 노력하는 중이다.

    삼성SDS 정보보안연구회 [역] 신작알림 SMS신청 작가DB보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    2001년 해킹바이러스연구회로 시작한 삼성SDS 정보보안연구회는 해킹 기술을 공격자 입장에서 생각하고, 이를 토대로 안전한 시스템 운영 방안을 찾기 위해 보안성 검토 기술, 점검 기술, 신기술 트렌드 등을 연구하는 사내 모임이다. 초기 30여 명으로 시작해 현재 200여 명으로 성장했다. 보안에 대해서 이야기하며 이를 통한 발전을 지향한다.

    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    대학교에서 컴퓨터 공학을, 대학원에서는 정보보호를 전공했으며, 한국정보보호교육센터, 삼성SDS, 보안 프로젝트에서 다양한 보안 업무와 기술 분석을 담당했다. 현재는 혁신 IT 교육 프로그램인 구공팩토리를 운영하는 ㈜흥미랩 대표를 맡고 있으며, 초등학생부터 현업 실무자들까지 다양한 수강생을 대상으로 하는 재미있고 흥미로운 IT 전문 기술 교육 콘텐츠 개발에 힘쓰고 있다. 다양한 분야 중에서도 특히 정보 보안과 인공지능 전문 기술에 관심이 많다. 저서로는 [인공지능, 보안을 배우다](비제이퍼블릭, 2019)와 공저한 [NMAP NSE를 활용한 보안 취약점 진단](

    펼쳐보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    시스템 프로그래머로서 시스템에 대한 다양한 분야에 관심이 많으며, 특히 보안 분야에 관심이 많아 다년간 보안 업무에 종사 중이다. 바이러스 보안업체를 거쳐 현재는 네이버에서 보안 관련 프로젝트를 수행 중이다.
    에이콘출판사에서 펴낸 [웹 애플리케이션 해킹 대작전], [실전 해킹 절대 내공], [루트킷], [리버싱], [파이썬 해킹 프로그래밍], [안드로이드 포렌식], [해커의 공격 기술]을 번역했다.

    이 상품의 시리즈

    에이콘 해킹과 보안 시리즈(총 117권 / 현재구매 가능도서 84권)

    펼쳐보기

    이 책과 내용이 비슷한 책 ? 내용 유사도란? 이 도서가 가진 내용을 분석하여 기준 도서와 얼마나 많이 유사한 콘텐츠를 많이 가지고 있는가에 대한 비율입니다.

      리뷰

      0.0 (총 0건)

      구매 후 리뷰 작성 시, 북피니언 지수 최대 600점

      리뷰쓰기

      기대평

      작성시 유의사항

      평점
      0/200자
      등록하기

      기대평

      0.0

      교환/환불

      교환/환불 방법

      ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청함, 1:1 문의 게시판 또는 고객센터(1577-2555) 이용 가능

      교환/환불 가능 기간

      고객변심은 출고완료 다음날부터 14일 까지만 교환/환불이 가능함

      교환/환불 비용

      고객변심 또는 구매착오의 경우에만 2,500원 택배비를 고객님이 부담함

      교환/환불 불가사유

      반품접수 없이 반송하거나, 우편으로 보낼 경우 상품 확인이 어려워 환불이 불가할 수 있음
      배송된 상품의 분실, 상품포장이 훼손된 경우, 비닐랩핑된 상품의 비닐 개봉시 교환/반품이 불가능함

      소비자 피해보상

      소비자 피해보상의 분쟁처리 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 따라 비해 보상 받을 수 있음
      교환/반품/보증조건 및 품질보증 기준은 소비자기본법에 따른 소비자 분쟁 해결 기준에 따라 피해를 보상 받을 수 있음

      기타

      도매상 및 제작사 사정에 따라 품절/절판 등의 사유로 주문이 취소될 수 있음(이 경우 인터파크도서에서 고객님께 별도로 연락하여 고지함)

      배송안내

      • 인터파크 도서 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다

      • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

      • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능하여, 인터파크 외 타업체 배송상품인 경우 발송되지 않을 수 있습니다.

      • 배송비

      도서(중고도서 포함) 구매

      2,000원 (1만원이상 구매 시 무료배송)

      음반/DVD/잡지/만화 구매

      2,000원 (2만원이상 구매 시 무료배송)

      도서와 음반/DVD/잡지/만화/
      중고직배송상품을 함께 구매

      2,000원 (1만원이상 구매 시 무료배송)

      업체직접배송상품 구매

      업체별 상이한 배송비 적용