출고예상일 안내
주문하신 상품이 한국에서 현지 배송을 위한 출고단계가 이루어질 것으로 예상되는 날짜입니다. 상품을 준비하는 과정에서 내부적인 사정으로 인해 출고예상일에 다소 오차가 생길 수 있습니다.
여러 상품(예약상품포함)을 함께 주문하신 경우 출고예상일이 가장 늦은 날짜에 맞춰 함께 배송됩니다.

POS 시스템 해킹과 방어 개인 신용정보 유출 방지를 위한 안전한 결제 시스템 구축
원제 : Hacking Point of Sale: Payment Application Se
시리즈 :
에이콘 해킹 보안시리즈
[109]
ISBN : 9788960777262 / 400쪽 188 x 235 (㎜)
이 상품에 궁금하신점이 있으세요? 1:1상담문의

-
박현규, 김성경
-
정그린
- 21,600
- 21,600
- 23,400
- 20,700
- [시리즈] 에이콘 해킹 보안시리즈 [109]
출판사 리뷰
출판사 서평 ★ 이 책에서 다루는 내용 ★ 이 책은 신용카드 회사가 아닌 비즈니스 관점에서 POS의 보안을 독특한 관점에서 다룬다. 소매상들이 구내에 설치된 총체적인 지불 인프라를 제대로 보호할 수 있는, 입증된 기술을 소개한다. 또한 기존에 구축된 인프라를 향상시키는 데 필요한 권고사항을 구현하는 과정에서 위험 평가와 보안 제어수준 측정을 위한 POS 취약성 등급 계산기에 대한 내용을 설명한다. ■ 물리적 취약점과 설계 결함에 관련된 보안 위반 요소를 제거하는 방법 ■ 사용자와 서버 단의 지불 시스템을 보호하기 위한 점대점 암호... ★ 이 책에서 다루는 내용 ★ 이 책은 신용카드 회사가 아닌 비즈니스 관점에서 POS의 보안을 독특한 관점에서 다룬다. 소매상들이 구내에 설치된 총체적인 지불 인프라를 제대로 보호할 수 있는, 입증된 기술을 소개한다. 또한 기존에 구축된 인프라를 향상시키는 데 필요한 권고사항을 구현하는 과정에서 위험 평가와 보안 제어수준 측정을 위한 POS 취약성 등급 계산기에 대한 내용을 설명한다. ■ 물리적 취약점과 설계 결함에 관련된 보안 위반 요소를 제거하는 방법 ■ 사용자와 서버 단의 지불 시스템을 보호하기 위한 점대점 암호화 사용 방법 ■ PCI 보안 표준이 제공하는 보호의 간극을 좁히는 방법 ■ 신용카드를 분석해보고 지불카드가 위협에 노출될 수 있는 상황을 파악 ■ PCI와 FIPS, ANSI, EMV, ISO 등을 비롯한 지불 애플리케이션 보안과 가장 관련이 깊은 표준 탐구 ■ 광범위한 공통의 보안 유출 시도에 대항할 수 있도록 설계된 강력한 지불 애플리케이션 보안 제어에 필요한 실제적인 권고사항 ★ 이 책의 대상 독자 ★ 소프트웨어 판매회사에서 일하는 POS와 지불 애플리케이션 개발자, 개발 관리자, 그리고 소프트웨어 설계자와 서비스 제공자는 지불 애플리케이션에 관한 기본적인 내용과 그들의 제품을 보안 위협으로부터 어떻게 보호할 것인가를 배울 수 있을 것이다. 이 책의 후반부인 5장에서 9장에 이르기까지 이러한 그룹을 위한 몇 가지 예제 코드가 있다(해커는 C#으로 코딩을 하진 않지만, 필요하면 C 언어로 변환할 수 있다는 것을 알고 있다). 이 예제 코드는 http://www.wiley.com/go/hackingpos와 에이콘출판사 도서정보 페이지 http://acornpub.co.kr/book/pos-hacking에서 내려받을 수 있다. QA 분석가와 관리자는 어떻게 지불 소프트웨어의 보안 침투 테스트를 만들고 수행해야 하는가에 관한 아이디어를 얻을 수 있다. 도소매상 분야에서 일하는 보안 설계자와 관리자, 컨설턴트, 의사결정권자는 지불 애플리케이션 벤더 사와 서비스 제공자로부터 납품 받는 소프트웨어와 하드웨어의 수준을 판별하기 위해 해당 벤더들에게 어떤 질문을 해야 하는지를 배울 수 있다. 소프트웨어/하드웨어 판매상과 도소매상의 분야에 함께 종사하는 솔루션 설계자, 프로젝트와 제품 관리자, 의사결정권자는 지불 솔루션의 구현과 관련된 위험, 그리고 그것을 완화하기 위해 필요한 노력을 측정하기 위한 잠재적 취약 영역에 관해 배울 수 있다. ★ 이 책의 구성 ★ 좋은 프로그래머는 코딩 규칙과 모범 사례를 따른다. 기본적인 개발 원칙 중 하나는 코드를 단 몇 줄의 크기를 갖는 작고 상대적으로 독립된 조각으로 분리한다. 이렇게 하면 읽기 쉽고 이해하기 쉬워진다. 이 책에도 동일한 접근 방식이 적용돼 각각 한 절의 크기를 최소화한다. 본문은 특정 정보 조각을 쉽게 찾고 읽을 수 있게 단순화된 상세한 표를 포함하는 전문 기술 문서와 유사한 방식의 구조를 갖는다. 이 책은 다음과 같은 세 개의 주요 부분으로 나뉜다. 1. 기술적 개요 2. 공격과 취약점 설명 3. 문제의 해법(완화하고 방어하는 수단) 1부, ‘지불 애플리케이션 취약점 해부’(1, 2, 3장)에서는 전자 지불의 배경 기술을 설명하는 것으로, 2부와 3부를 위한 배경을 설정한다. 카드와 지불 애플리케이션 세계에 대한 설명이긴 하지만 모든 요소를 보안의 관점에서 다시 돌아본다. 1장, ‘지불 처리 절차’에서는 문제를 처리하는 시나리오와 예외 상황에 관한 자세한 설명을 통해 결제와 지불 분야에서 각 조직이 어떻게 거래 흐름에 참여하는가, 그들의 책임과 도전 과제는 무엇인가, 그리고 다양한 지불 거래 형태 간의 차이점은 무엇인가에 관해 다룬다. 2장, ‘지불 애플리케이션의 구조’에서는 기본적인 설계 개념을 소개하고, 서로 다른 배치 형태를 비교하며, 크게 인터페이스와 처리자로 나뉘는 지불 애플리케이션의 주요 기능 모듈에 관해 설명한다. 또한 연결 형태와 통신과 메시지 프로토콜의 차이점에 관해 설명한다. 3장, ‘지불 카드 산업’에서는 지불 애플리케이션에서 채용하고 있는 산업을 규제하는 보안 표준에 관해 서술하고, 어떻게 민감한 카드 소유자 정보를 도난으로부터 보호하는지 보여준다. 또한 상점과 소프트웨어 판매회사의 관점에서 PCI DSS와 PA-DSS의 차이점에 관해 설명한다. 지불 애플리케이션의 보안에 간접적으로 영향을 주는 (ISO와 FIPS와 같은) 표준에 관해서도 설명하며, PCI P2PE 표준에 관해서도 소개한다(P2PE의 구현에 관한 기술적인 자세한 사항은 8장에서도 설명한다). 2부, ‘POS 시스템 공격’(4, 5, 6장)에서는 어떻게 카드 정보가 POS 장치에서 도난당할 수 있는지, 왜 지불 애플리케이션의 특정 영역이 다른 영역에 비해 더 취약한지를 설명한다. 4장, ‘40개의 숫자를 황금으로 전환’에서는 지불 카드 내부에는 무엇이 있는지와 어떻게 이러한 지식이 악당을 도와 도난 카드에서 현금을 만들어내는지를 설명한다. 4장의 목표는 획득한 ‘덤프’로부터 현금을 얻기 위한 과정을 각 단계별로 설명해 신용카드 사기가 얼마나 쉽고 간단한지 보여주는 것이다. 은밀하며 간단하지만 중요한 기법인 인코딩과 엠보싱, 그리고 가짜 카드를 티핑하는 기법을 비롯한 ‘카딩’에 관해 자세한 설명을 제공한다. 5장, ‘보안 취약 구역 침투’에서는 기존 PCI 보안 규제에서 언급하지 않는 지불 애플리케이션의 취약점에 관해 설명한다. PCI는 훌륭한 보안 지침을 정의하지만, PCI와 다른 표준들은 여전히 지불 애플리케이션의 많은 영역을 다루지 못하고 있다. 또한 핀패드 장치와 POS 지불 처리의 설계 허점과 같은 지불 애플리케이션과 직접적으로 관련이 없지만, POS의 다른 영역을 대상으로 하는 소프트웨어 이외의 공격에 관해 설명하는 ‘보너스’ 절이 있다. 6장, ‘PCI 표준으로 보호되는 구역 침입’에서는 현재의 PCI 보안 표준이 보호할 것으로 추측되는 지불 애플리케이션의 취약 영역에 관해 다룬다. PCI 표준은 ‘저장되는 데이터’의 암호화를 요구하긴 하지만, 약한 암호화 메커니즘과 허술한 키 관리와 같은 저장 공간과 관련된 다양한 취약점이 존재한다. 3부, ‘방어’(7, 8, 9장)에서는 앞서 설명한 문제에 관해 생각해보고, 어떻게 카드 소유자 정보와 지불 애플리케이션 코드 보호를 위해 강력한 암호화 도구를 채용해 지불 애플리케이션을 대상으로 하는 공격을 방어할 것인가에 관해 설명한다. 7장, ‘지불 애플리케이션 암호화’에서는 지불 애플리케이션의 암호화에 관한 맥락에서 암호화의 기본적인 사항을 설명한다. 여기에서는 8장에서 정의하는 보호 통제의 구현을 위해 필요한 기초를 제공한다. 7장의 정보는 주요 암호화 원리와 대칭과 비대칭 암호화, 전자 서명, 암호화 표준과 같은 응용에 관한 설명을 포함한다. 또한 독자에게 민감한 카드 소유자 정보 암호화와 전자 서명, 점대점 암호화와 같은 강력한 보호 메커니즘을 설계하고 이해하는 데 필요한 지식을 제공한다. 8장, ‘카드 소유자 정보 보호’에서는 어떻게 현대 암호학의 힘이 POS에 카드를 긁는 순간부터 결제되기까지 민감한 카드 소유자의 정보 보호를 목적으로 활용될 수 있는가를 설명한다. 8장에서는 점대점 암호화라고 불리는 모든 것을 보호할 수 있는 기술적인 가장 최근의 업계 동향을 비롯해 메모리에 위치하고, 전송되며, 저장되는 모든 가능한 상태에서 데이터를 암호화하는 다양한 방법을 설명한다. 또한 하드웨어와 소프트웨어, 그리고 하이브리드와 같은 점
★ 지은이의 말 ★
2011년 봄, 나는 이스라엘에 있었는데 고용주 회사의 본사로부터 급한 연락을 받아 특별한 프로젝트에 참여하게 됐다. 유럽에 위치한 거대 슈퍼마켓 체인(정보 보호를 위해 이름은 제공하지 않는다)을 위한 새로운 지불 시스템의 설계와 개발을 총괄하게 요청 받았다. 나는 개발보다는 보안과 PCI 준수에 관해 일을 해왔으나, 이미 앞서 여러 번의 프로젝트 실패를 경험한 그들에게 나의 지불 인터페이스 개발 10년의 경험은 프로젝트를 구할 희망을 주었다. 나에게는 상당한 개발 자원이 주어졌지만, 프로젝트를 위한 기간은 아주 짧았다. 동작하는 버전을 출시하기 위해서는 두 달이 남아 있었다. 게다가 최신 기술과 보안 표준을 이용한 설계를 해야 했다..
나에게 주어진 개발 팀은 최고의 프로그래머들로 구성됐지만, 곧바로 생각지도 못한 문제에 직면했다. 모두들 POS 개발 경력이 있었음에도 불구하고, 새로운 제품이었던 까닭에 그룹 내에서 지불 인터페이스에 관한 실마리를 가진 이가 없었다. 물론 보안과 PCI 준수에 관한 문제는 없었다.
처음 며칠과 몇 주는 전자 지불에 관한 일반적인 내용과 지불 애플리케이션 아키텍처의 자세한 내용, 그리고 이 분야의 보안 표준을 설명하는 데 할애했다. 모두들 신용카드가 무엇이고, 어떻게 사용하는지는 알고 있었지만, 단지 그뿐이었다. 새로운 실무 설계자와 프로그래머를 위한 가이드나 매뉴얼이 있었으면 했지만, 어떤 참고자료도 찾을 수가 없었다. 이 분야에 관한 나의 지식은 다년간의 다양한 지불 시스템과 관련된 일과 애플리케이션 보안에 관한 연구를 통해 축적됐다. 그때 바로 이 책을 기획해야겠다는 생각이 떠오른 것이다.
결국 지불 솔루션은 성공적으로 제때 출시됐고, 나의 일상적인 일을 계속하기 위해 미국으로 돌아왔다. 하지만 책에 관한 생각이 머릿속을 떠나지 않았다. 그 후로 그 생각은 업계의 최신 개발 경향을 반영하게 약간 변형됐다. 예를 들어 PCI 표준이 폭넓게 퍼지면서 공격 벡터는 데이터 저장소로부터 메모리로 이동되었다. 또한 새로 탄생한 P2PE 표준은 상점에 새로운 희망을 안겨줬고, 소프트웨어 개발자와 하드웨어 생산자에게는 큰 도전이 됐다. 하지만 근본적인 목표는 고스란히 남아 있었다. 개발자와 보안 전문가, 지불 시스템의 사용자, 그리고 의사결정권자들이 설계 원칙의 엄청난 혼합과 업계 표준, 소프트웨어 취약점, 공격 벡터, 그리고 함께 지불 애플리케이션을 안전하게 만드는 암호화 기술을 이해하게 돕는 지침서를 집필하는 것이었다.
★ 옮긴이의 말 ★
POS(Point of Sale)는 집 앞의 작은 가게에서부터 백화점의 계산대, 그리고 놀이공원까지 소비에 관한 한 현대인의 삶에서 쉽게 인식하지 못하지만 가장 많은 장소에서 접하게 되는 컴퓨터 시스템 중 하나일 것이다. 하지만 대부분의 사람들은 그것이 각 가정에 있는 PC와 인터넷에 사용되는 서버 시스템과 동일하다는 것을 알지 못할 수 있다. 특히 현대 사회에서 가장 민감한 정보인 개인의 금융 신용정보를 직접적으로 읽어 저장하고 인터넷을 통해 전송한다는 것을 말이다. 그것은 곧, 정보 유출을 위한 공격의 대상이 된다는 뜻이다. POS 시스템이라는 것이 이렇듯 아주 널리 존재하면서 쉽게 보안 공격의 대상이 될 수 있다는 사실이 인식되지 않듯이 POS 시스템을 대상으로 한 공격의 방어 역시 POS 시스템 제공자들에게도 필수적인 것으로 인식되지 않고 있는 것이 현실이다. 더욱이 자신의 소중한 카드 정보를 직접 제공하고 있는 개인들은 재화의 구매를 위해 제공한 자신의 정보가 철저히 보호되고 있는지 한 번도 POS 시스템을 의심해본 적은 없을 것이다.
이 책은 이와 같이 민감하고도 개인에게 위험한 금융 정보를 다루는 POS 시스템 전반에 관한 보안 위협과 완화 또는 차단 방법을 다루고 있다. 총 3개 부로 구성돼 있으며, 각 부의 주제를 모두 9개 장으로 나눠 단계적으로 설명한다. 1부에서는 전자 지불에 필요한 배경 기술을 설명하고, 2부에서는 개인 카드 정보가 POS를 통해 도난 당할 수 있는 이유와 어떻게 취약한지 설명한다. 마지막 3부에서는 이미 밝힌 기술적 문제점에 대해 검토한 뒤 어떻게 공격으로부터 방어할 수 있는지 설명하는 것으로 끝맺는다. 또한 책 전반에 걸쳐 PCI라는 보안 표준을 해부하고, 표준으로서 갖추지 못한 보안의 허점들을 파헤침으로써 민감한 카드 정보 보호를 위해 PCI 보안 표준이 완전하지 않은 이유를 설명함과 동시에 그것을 보완할 방법을 소개해 안전한 POS 시스템을 만들 수 있는 방법을 모색한다.
이 책을 통해 이와 같은 주제들을 깊이 인식해 POS 시스템 판매회사에서부터 개발자까지 지금까지 간과된 보안 위협으로부터 좀 더 안전한 POS 시스템이 개발되고 구축될 수 있게 함으로써 소비들이 아무런 걱정 없이, 지금과 같이 보안에 관해 전혀 인식할 필요 없이 민감한 카드 정보를 제공할 수 있는 환경이 될 수 있기를 희망한다.
목차
1부 지불 애플리케이션 취약점 해부
1장 지불 처리 절차
__지불 카드
__카드 입력 방법
____MSR
____핀패드
__중요 요소
____소비자(카드 소지자)
____상점
____인수자
____발급자
____카드사
__추?가 참여자
____지불 처리자
____지불 게이트웨이
__더 많은 구성 요소
____지불 처리 소프트웨어 제공자
____하드웨어 생산자
__지불 처리 단계
____인증
____결제
__지불 처리
____사전 인증/완료와 판매
____무효화와 반환
____대체 처리
____시간제한 역전
____특별한 처리 형태
__지불 애플리케이션의 주요 취약 영역
__정리
__참고 자료
2장 지불 애플리케이션의 구조
__지불 애플리케이션의 본질
____인터페이스
____처리 모듈
____데이터 저장소
____일반적인 지불 처리 흐름
__모듈 간 통신
____물리적 통신
____통신 프로토콜
____내부 통신
____메시지 프로토콜
____내부 프로토콜
____통신 요약
__지불 애플리케이션의 배치
____EPS의 개념
____지불 스위치
____배치 형태 비교
____상점 EPS 배치 형태
____POS EPS 배치 형태
____혼합 POS/상점 배치 형태
____주유소의 지불 시스템
____모바일 결제
__정리
__참고 자료
3장 지불 카드 산업
__PCI란?
__PCI 표준
____PA-DSS와 PCI DSS
____PA-DSS
____PCI DSS
____PA-DSS와 PCI DSS 요구 사항 비교
____PTS
____P2PE
__PCI 지침
____토큰화에 대한 잘못된 생각
____EMV 지침
____개발자를 위한 이동식 지불 지침
__정리
__참고 자료
2부 POS 시스템 공격
4장 40개의 숫자를 황금으로 전환
__마법의 플라스틱
__물리적 구조와 보안 기능
____보안 기능이 실패하는 이유
__마그네틱 선의 내부
____트랙 1
____트랙 2
____PAN
____유효기간
____ISO 접두어와 BIN 범위
____PAN 검사 숫자
____서비스 코드
____카드 확인 값
__정규 표현식
__덤프 얻기: 해커
____보안 위반
____가장 큰 규모의 POS 유출
__비트를 현금으로 전환: 카더
__수익화 전략: 환전업체
__위조 카드 생산
____인코더
____프린터
__정리
__참고 자료
5장 보안 취약 구역 침투
__지불 애플리케이션의 메모리
____램 스크래핑
____윈헥스
____메모리스크래퍼
____윈도우 페이지 파일
__스니핑
____내부 네트워크 통신
____네트워크 스니퍼
____넷스크래퍼
____추가적인 통신 취약 지점
__기타 취약점 공격
____애플리케이션 조작
____하드웨어 조작
____신기술을 목표로 한 공격
____무결성과 가용성에 대한 공격
__정리
__참고 자료
6장 PCI 표준으로 보호되는 구역 침입
__PCI 표준이 관심을 갖는 영역
__저장된 데이터: PCI의 진언
____임시 저장소
____애플리케이션 로그
____해시로 작성된 PAN
____안전하지 않은 암호화 키 저장소
____디스크스크래퍼 도구
__전송되는 데이터: PCI가 보호하는 것
____SSL 취약점
____중간자 공격
__정리
__참고 자료
3부 방어
7장 지불 애플리케이션 암호화
__빙산의 일각
__대칭, 비대칭, 또는 단방향?
__길이가 중요할까?
____키 엔트로피
____키 늘임
__대칭 암호화
____강한 알고리즘
____EncryptionDemo
____대칭 암호화 구현
____키 생성
____블록과 패딩, 초기화 벡터
____암호화와 복호화
__비대칭 암호화
____공개 키 암호화 구현
____키 생성
____자체 서명 인증서
____PFX 인증서 파일
____암호화
____복호화
__단방향 암호화
____단방향 암호화 구현
____토큰 솔트 구성
____패스워드 솔트 구성
____패스워드 검증
__전자 서명
____첨부되는 서명과 분리되는 서명
____코드와 설정 서명
____데이터 파일과 메시지 서명
__암호화 하드웨어
__암호화 표준
____NIST와 FIPS
____ANSI
____PKCS
__정리
__참고 자료
8장 카드 소유자 정보 보호
__메모리에 있는 데이터
____데이터 유출 최소화
____종단 간 데이터 암호화
__전송 중인 데이터
____SSL 구현
____암호화된 터널 사용
__저장되는 데이터
____안전한 키 관리
____다중 키 컴포넌트
____KEK와 DEK
____키 순환
__점대점 암호화
____점대점이 실제로 의미하는 것
____P2PE 수준
____하드웨어 P2PE
____DUKPT 키 관리
__EMV
__모바일과 비접촉식 지불
__정리
__참고 자료
9장 애플리케이션 코드 보호
__코드 서명
____인증 코드
____코드 서명 인증서
____OpenSSL을 사용한 루트 CA 생성
____인증서 형식
____운영 환경 수준의 코드 서명 인증서 생성
____타임스탬프
____코드 서명 구현
__설정과 데이터 파일 서명
____첨부할 것인가, 분리할 것인가?
____데이터 서명 인증서
____인증서 저장소
____분리된 서명 구현
____첨부된 서명
____XML 파일 서명
____첨부된 서명 구현
__코드 난독화
____리버스 엔지니어링
____코드 난독화
__보안 코딩 지침
____OWASP Top 10
____CWE/SANS Top 25
____언어별 지침
__정리
__참고 자료
결론
부록A POS 취약성 등급 계산기
부록B 부록 B 용어와 약어 해설







































