확장메뉴
주요메뉴


닫기
사이즈 비교
소득공제
버그 없는 안전한 소프트웨어를 위한 CERT C 프로그래밍

버그 없는 안전한 소프트웨어를 위한 CERT C 프로그래밍

에이콘출판사- 해킹과 보안 시리즈이동
첫번째 리뷰어가 되어주세요
정가
40,000
판매가
36,000 (10% 할인)
구매 시 참고사항
  • 본 도서의 개정판이 출간되었습니다.
eBook이 출간되면 알려드립니다. eBook 출간 알림 신청
분철서비스 시작 시 알려드립니다. 분철서비스 알림신청

품목정보

품목정보
발행일 2010년 02월 16일
쪽수, 무게, 크기 752쪽 | 1414g | 188*254*40mm
ISBN13 9788960771215
ISBN10 896077121X

책소개 책소개 보이기/감추기

목차 목차 보이기/감추기

저자 소개 관련자료 보이기/감추기

저자: 로버트 C. 시코드
소프트웨어 엔지니어링 연구소(SEI) CERT에 있는 안전한 코딩 이니셔티브의 리더다. 보안 관련 연구 단체 중 하나인 CERT는 정기적으로 소프트웨어 취약점 보고서를 분석하고 인터넷처럼 민감하고 중요한 인프라에 미치는 위험을 평가한다. 저자는 카네기 멜론 대학의 컴퓨터 사이언스와 정보 네트워킹 기관의 조교수이며, 피츠버그 대학의 강사로 일하고 있다. 『완벽한 보안을 위한 C와 C++ 코딩(Secure Coding in C and C++)』(Addison-Wesley, 2005) 등 전부 세 권의 책을 저술했다. 소프트웨어 보안, 컴포넌트 기반 소프트웨어 엔지니어링, 웹 기반 시스템 디자인, 레거시 시스템의 현대화, 컴포넌트 저장소와 검색엔진, 사용자 인터페이스 디자인과 개발에 관련된 40여 개의 논문을 작성했다.
역자: 현동석
서울대학교 컴퓨터공학부를 졸업했으며 네트워크 보안 회사에서 암호 알고리즘 가속기를 개발하고 이후 스마트폰 개발 회사를 거쳐 현재는 (주)NHN에서 검색서버와 관련된 기술을 연구하고 있다.

책 속으로 책속으로 보이기/감추기

많은 사람들이 C언어는 프로그래밍의 기초가 되는 언어라고 합니다. 그리고 실제로도 플랫폼의 특성을 잘 활용한 좋은 성능의 시스템을 구현할 때도 C언어를 많이 합니다. 하지만 이렇게 중요한 프로그래밍 언어를 안전하게 프로그래밍 하는 방법에 대한 책이 국내에 많이 소개되지는 않았습니다. 비슷한 책으로 오래 전인 2004년에 『C 함정과 실수(원서명 C Traps and Pitfalls)』라는 책이 출간된 적이 있는데, 이 책은 그보다 더 실무적인 차원에서 접근하고 있습니다.

이 책은 제목 그대로 버그 없이, 신뢰도와 보안성이 높은 소프트웨어 개발을 위해 좀 더 안전하게 C 프로그래밍을 할 수 있도록 도와주는 책입니다. 프로그래밍 언어 자체를 소개하는 일반 학습서에는 기술되지 않지만 실무에 적용할 때 반드시 부딪히게 되는 어려운 부분들이나 그 동안 살 떨리는 경험을 통해서만 알 수 있었던 고급 개발자들의 안전한 코딩에 대한 노하우가 이 책에 체계적으로 정리되어 있습니다. 따라서 고급 프로그래머의 코딩 노하우를 알고 싶거나, 안전한 C 코드를 짜고 싶다면 이 책을 당장 읽으시라고 추천합니다. 이 책이 정말 그러한 노하우를 제공해 줄 것인지는 당장 이 책의 2장~14장 중 아무 곳이나 펴보시면 금세 느끼실 것입니다.

다만 이 책에서 공개한 노하우들은 그냥 술술 읽기 쉽게 기술되어 있지는 않습니다. 저자는 이 책의 내용이 일종의 표준으로 사용될 수 있도록 의도했고, 때문에 안전한 코딩에 대한 모든 항목을 규칙과 제안으로 정리했으며, 각 규칙이나 제안에는 이를 지키지 않을 경우 얼마나 위험한지에 대한 평가도 제시해줍니다. 경우에 따라서는 이 책의 내용을 기준으로 코드의 안전성을 테스트하는 도구도 개발할 수 있도록 구성했습니다.

따라서 원문에서조차 '이런 식으로 코딩하면 해킹 당하기 쉽다'라고 하면 될 것을 '이 규칙을 위반할 경우 의도하지 않은 권한을 사용해 악의적인 사용자가 임의의 코드를 수행할 가능성이 존재한다'와 같이 다소 딱딱한 표현을 사용해 아주 구체적으로 기술하고 있습니다. 따라서 저 역시 이 책을 조직에서 개발 표준이나 규칙으로 사용할 가능성을 고려해 원문의 의도를 살려 번역했음을 미리 일러둡니다.

초급 프로그래머라면 각 제안과 규칙에 등장하는 용어들에 익숙하지 않을 수도 있습니다. 이러한 경우라면 책 뒤쪽의 용어해설 부분을 먼저 읽으시는 편이 좋습니다. 예를 들어 원문의 Implementation이 플랫폼 혹은 구현된 대상이라는 의미로 사용되는 경우가 있음을 용어해설 절에서 먼저 숙지하면 해당 용어를 사용한 부분을 이해하기 쉬울 것입니다. 그 외의 용어들은 필요에 따라 각주를 통해 설명했습니다.

일반적으로 보안이라고 하면 관공서나 금융 기관에서 사용하는 매우 높은 신뢰도를 요구하는 프로그램만을 생각할 수 있는데, 이 책의 코딩 규칙이나 제안들은 그러한 소프트웨어 보안 영역뿐만 아니라 일반적인 경우에도 필요합니다. 보안이 필요 없다고 해서 안전하지 않은 방식으로 프로그램을 작성한다면 버그 등 여러 문제를 지닌 소프트웨어를 만들 수 있는데, 아무도 자신이 개발한 소프트웨어가 문제와 버그로 가득 차기를 바라지는 않으니까요. 이 책은 두 가지 경우를 모두 염두에 두고 있으니 잘 읽어보시고 책의 내용을 통해 익힌 안전한 프로그래밍 방식으로 소프트웨어의 신뢰도와 보안성을 높여보시기 바랍니다.
--- '역자의 말' 중에서

관련자료 관련자료 보이기/감추기

연결성(connectivity)으로 인해 해커로부터 안전한 애플리케이션에 대한 필요성은 상당히 증가했다. 고객은 CERT 표준과 여타 안정성 가이드라인을 통해 완전한 보호와 무결함 등의 소프트웨어 목표를 달성할 수 있다.

출판사 리뷰 출판사 리뷰 보이기/감추기

추천평 추천평 보이기/감추기

나는 CERT 안전한 코딩 이니셔티브(CERT Secure Coding Initiative)의 열렬한 지지자다. 프로그래머는 정확성, 명확성, 유지보수성, 성능, 심지어 안정성에 관해서도 여러 방법으로 조언을 구할 수 있다. 하지만 특정 언어의 특징이 보안에 미치는 영향은 다루고 있지 않다. 이 책 『버그 없는 안전한 소프트웨어를 위한 CERT® C 프로그래밍』이야말로 바로 이러한 요구를 충족시켜주는 책이다.
랜디 마이어스 (ANSIC 회장)
수 년 간 우리는 CERT/CC를 통해 수없이 많은 보안 문제 대한 조언을 문서로 출간할 수 있었다. 이제 CERT는 최고 기술 전문가들의 제언을 책에 수록해 새로운 애플리케이션에서 발생할 수 있는 문제를 예방하고 기존 시스템을 안전하게 유지하도록 프로그래머와 매니저에게 실용적 길잡이 역할을 해준다.
토머스 플럼 (플럼홀 사 창시자)
이 책은 오늘날의 소프트웨어 시스템이 실제 상황에서 어떻게 실패하는지를 정확히 설명해주며, 우리에게 꼭 필요한 전문 정보의 모음이다. 내부적으로 안전한 코딩 가이드라인을 구축하기 위한 시작 단계로 이 책을 먼저 읽어보자. 다른 어떤 곳에서도 이런 정보를 얻을 수 없으며, 소프트웨어 보안 영역에서는 무지했던 부분이 종종 우리를 괴롭히는 결과로 드러난다.
존 맥도널드 (『소프트웨어 보안 평가의 기술(The Art of Software Security Assessment)』의 공저자)
C를 처음 배웠을 때부터 지금까지 생산했던, 혹은 누가 작성했는지 모르지만 유지 보수해야 했던 C 프로그램들을 추억하며 이 책을 읽었습니다. 아무래도 표준에 관한 책이어서, 술술 단번에 읽히진 않았습니다. 그래도, 코드를 애초에 잘 작성했다면 밤에 꿈에서까지 디버깅을 하지 않아도 됐을 텐데 하고 탄식했던 나날이 많았던지라, 책에서 나열한 문제 상황과 지침에 대해 공감하며 읽을 수 있었습니다.

현대 개발자 사회에서는 '안전함'보다는 '눈에 보이는 결과'나 '신속히' 보여주는 쪽을 중시하는 경향이 많습니다. 하지만 프로그래머의 행복을 위해서라도 안전한 코딩 습관은 스스로 익혀 두는 것이 좋지 않을까요? 한 번 읽고 치워두기보다는, 짬짬이 에세이 읽듯 예제를 즐기며, 자기 코드 반성의 시간을 가져보게 할 만한 책입니다.
박소영 ((주)NHN 검색엔진팀)
안전하지 못하게 작성된 코드는 악의적인 해커들의 공격 대상이고 정상적인 시스템 동작이 방해되며, 심지어 시스템에 침투하여 파괴당할 수도 있다. DDoS, 바이러스, 해킹 등은 사회적으로도 큰 문제이며, 이는 보안을 고려하지 않거나 잘못 작성한 코드가 원인이 된다. 내가 만든 소프트웨어가 보안에 취약해 문제가 발생한다면, 시스템 자체 오동작으로 인해 비용 문제로까지 이어질 수 있다.

이렇듯이 소프트웨어 보안에 대한 이슈는 항상 중요시되고 있으며, 최근에는 하드웨어적으로도 안전한 시스템 동작을 위해 CPU에서도 특정 메모리 영역에 접근을 금지하는 메모리 보호 기능도 지원하고 있다. 초보 개발자를 벗어나 좀 더 안전한 프로그래밍 코드를 작성할 수 있는 중고급 개발자로 업그레이드 하고 싶다면 이 책을 한번 읽어보기를 추천한다~!
전희재 ((주)NHN 통합검색플랫폼팀)
C 언어 입문자를 위한 책은 많지만, 정작 C에 익숙해진 후 중고급 개발자가 되기 위해 참조할 수 있는 책은 많지 않은 것이 현실이다. 때문에 C로 상당 기간 개발해온 경력자들조차도 털어 보면 결함이 우수수 떨어지는 코드를 작성하곤 한다.
책 내용의 상당수가 철없던 시절 아무도 알려 주는 사람이 없어 몸으로 부딪히며 깨달았던 사실이라 책을 읽으며 가슴에 사무치는 추억을 되살리기도 했다.
한 달에 한 번 발생하는 에러를 잡기 위해 밤새 디버거를 부여잡고 있거나, 찜찜한 기분을 근거로 결함을 찾기 위해 코드와 싸우는 일도 나중에 생각해 보면 즐거운 추억(?)이 되겠지만, 이 책에서 제시하는 기준들을 익히고 실천한다면 그 중 상당수는 미리 비켜갈 수 있을 것이라고 생각한다. 힘써 정독한다면 투자한 이상으로 되돌려 받을 수 있을 것이다.
전영훈 ((주)NHN 통합검색플랫폼팀)

회원리뷰 (0건) 회원리뷰 이동

  등록된 리뷰가 없습니다!

첫번째 리뷰어가 되어주세요.

한줄평 (0건) 한줄평 이동

  등록된 한줄평이 없습니다!

첫번째 한줄평을 남겨주세요.

배송/반품/교환 안내

배송 안내
반품/교환 안내에 대한 내용입니다.
배송 구분 예스24 배송
  •  배송비 : 무료배송
포장 안내

안전하고 정확한 포장을 위해 CCTV를 설치하여 운영하고 있습니다.

고객님께 배송되는 모든 상품을 CCTV로 녹화하고 있으며, 철저한 모니터링을 통해 작업 과정에 문제가 없도록 최선을 다 하겠습니다.

목적 : 안전한 포장 관리
촬영범위 : 박스 포장 작업

  • 포장안내1
  • 포장안내2
  • 포장안내3
  • 포장안내4
반품/교환 안내

상품 설명에 반품/교환과 관련한 안내가 있는경우 아래 내용보다 우선합니다. (업체 사정에 따라 달라질 수 있습니다)

반품/교환 안내에 대한 내용입니다.
반품/교환 방법
  •  고객만족센터(1544-3800), 중고샵(1566-4295)
  •  판매자 배송 상품은 판매자와 반품/교환이 협의된 상품에 한해 가능합니다.
반품/교환 가능기간
  •  출고 완료 후 10일 이내의 주문 상품
  •  디지털 콘텐츠인 eBook의 경우 구매 후 7일 이내의 상품
  •  중고상품의 경우 출고 완료일로부터 6일 이내의 상품 (구매확정 전 상태)
반품/교환 비용
  •  고객의 단순변심 및 착오구매일 경우 상품 반송비용은 고객 부담임
  •  직수입양서/직수입일서중 일부는 변심 또는 착오로 취소시 해외주문취소수수료 20%를 부과할수 있음

    단, 아래의 주문/취소 조건인 경우, 취소 수수료 면제

    •  오늘 00시 ~ 06시 30분 주문을 오늘 오전 06시 30분 이전에 취소
    •  오늘 06시 30분 이후 주문을 익일 오전 06시 30분 이전에 취소
  •  직수입 음반/영상물/기프트 중 일부는 변심 또는 착오로 취소 시 해외주문취소수수료 30%를 부과할 수 있음

    단, 당일 00시~13시 사이의 주문은 취소 수수료 면제

  •  박스 포장은 택배 배송이 가능한 규격과 무게를 준수하며, 고객의 단순변심 및 착오구매일 경우 상품의 반송비용은 박스 당 부과됩니다.
반품/교환 불가사유
  •  소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  •  소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 : 예) 화장품, 식품, 가전제품, 전자책 단말기 등
  •  복제가 가능한 상품 등의 포장을 훼손한 경우 : 예) CD/LP, DVD/Blu-ray, 소프트웨어, 만화책, 잡지, 영상 화보집
  •  소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  •  디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  •  eBook 대여 상품은 대여 기간이 종료 되거나, 2회 이상 대여 했을 경우 취소 불가
  •  중고상품이 구매확정(자동 구매확정은 출고완료일로부터 7일)된 경우
  •  LP상품의 재생 불량 원인이 기기의 사양 및 문제인 경우 (All-in-One 일체형 일부 보급형 오디오 모델 사용 등)
  •  시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  •  전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
소비자 피해보상
  •  상품의 불량에 의한 반품, 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 준하여 처리됨
환불 지연에
따른 배상
  •  대금 환불 및 환불 지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리
뒤로 앞으로 맨위로 공유하기