태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

'자바 JSP 해킹과 보안'에 해당되는 글 1건

  1. 2009.08.27 알아야 막는다! 자바 JSP 해킹과 보안
보안관련소식2009.08.27 08:56


사용자 삽입 이미지


알아야 막는다! 자바 JSP 해킹과 보안
    가   격 22000원
    저   자 홍동철
    출간일 2009년 7월 31일
    출판사 (주)쉬프트웍스
    ISBN 978-89-962830-1-0
    수량

소개

자바는 우리나라뿐만 아니라 전 세계에서 가장 많이 쓰이는 프로그램 언어 중 하나가 되었습니다.

이유는 최근의 추세인 웹 환경에서 가장 뛰어난 성능과 안정성을 자랑하기 때문이며 대부분의 공공기관 및
대기업에서 새로운 웹 시스템을 도입시 자바 기반의 JSP프로그램을 우선적으로 고려하여 개발을 하고 있습니다.

이러한 가운데 최근들어 중국과 같은 해외에서는 우리나라를 목표로 시스템을 무자비하게 크래킹하여 개인정보
등을 탈취하고 돈을 목적으로 정보를 팔거나 보이스 피싱 같은 범죄에 악용하고 있습니다.

해킹 공격을 원천적으로 봉쇄하기 위해서 프로그래머들은 시스템을 개발 할 때에 반드시 불법적인 해킹에 대하여
고려하여 개발하여야 하지만 대부분의 자바 프로그래머들은 해킹이나 보안에 대한 지식을 얻기가 어려운 실정입니다.
 
이 책에서는 자바 JSP 개발자들과 정보보호 관련자들이 취약한 자바 프로그램을 이해하고 이를 방지하여 안전한 프로그램을
작성하는 방법을 알려주고 있습니다.

책의 수준은 다분히 기초적으로 해킹에 대하여 잘 알지 못하는 사람들이 보더라도 이해하기 쉽도록 작성되었으며 
http://javahacking.com 에 관련 홈페이지를 작성하여서 책의 내용을 보다 쉽게 이해할 수 있도록 하였습니다.

목차

PART 1. 자바 보안
1. 자바기초
1.1. 자바의 구조
1.1.1. 바이트코드(Byte Code)
1.1.2. 빅 엔디안(Big endian)
1.1.3. 자바 가상 머신(JVM : Java Virtual Machine)
1.1.4. 가비지 컬렉터(Garbage Collector)
1.1.5. 패키지(package)
1.1.6. 접근제한자 
1.2. 자바 메모리 구조 
1.2.1. 메소드 영역(Method Area) 
1.2.2. 스택(Stack) 
1.2.3. 힙(Heap) 
1.3. 기초 용어
1.3.1. Path 
1.3.2. Classpath 
1.3.3. JSP, 서블릿(Servlet) 
1.3.4. 톰캣 (Tomcat) 
1.3.5. 자바스크립트 
1.4. KEYTOOL 
1.4.1. 인증서 키 생성 
1.4.2. 생성된 키 확인 
2. 해킹과 보안 
2.1. 해킹기법 
2.1.1. 혼란기법(Obfuscate) 
2.1.2. 스니핑 
2.1.3. 스푸핑 
2.1.4. 역공학(Reverse Engineering) 
2.2. 암호화 
2.2.1. 대칭 알고리즘 
2.2.2. 비대칭 알고리즘 
2.2.3. 단방향 알고리즘 
2.2.4. base64인코딩 디코딩 
3. http://www.javahacking.com/ 

PART 2. 웹 해킹 
1. 클라이언트 스크립트의 조작 
1.1. 자바스크립트 인증 우회 
1.1.1. GET방식과 POST방식 
1.1.2. Level1 풀이 ? URL을 통한 GET형식 
1.1.3. Level1 - html을 PC에 저장후 인증우회 
1.1.4. 자바스크립트로 직접 호출 
1.2. 정보 분석을 통한 공격 
1.2.1. Level 2. 풀이 
1.2.2. Level 3 풀이 
1.3. 클라이언트 스크립트 조작의 방어 
1.4. 클라이언트 스크립트 혼란기법(OBFUSCATOR) 
2. 쿠키 
2.1. 쿠키조작 
2.2. 쿠키 스푸핑 
2.3. 암호화를 통한 쿠키관리 
2.3.1. DES키 생성 
2.3.2. DES로 쿠키 암호화 
2.3.3. DES로 쿠키 복호화 
3. XSS (CROSS SITE SCRIPT) 
3.1. 쿠키 스니핑 
3.2. 악성코드 삽입 
3.3. 방어 
4. SQL인젝션(SQL INJECTION) 
4.1. 인젝션 가능여부 에러 체크 
4.1.1. SQL문 추정 
4.1.2. SQL문 삽입 
4.2. 대응방법 
5. 파일첨부 프로그램의 위험 
5.1. 파일 업로드 프로그램 취약점 
5.1.1. 실행권한이 없는 디렉토리에 파일 업로드. 
5.1.2. 파일 확장자 체크. 
5.1.3. 파일명 변경 후 업로드 
5.2. 취약한 업로드 프로그램 공격 
5.2.1. 웹쉘(Web Shell) 
5.3. 다운로드 프로그램 취약점 
6. 정보유출 
6.1. BAK 파일의 노출 
6.2. 톰캣 디렉토리 리스팅 
6.3. 서블릿 맵핑 
6.4. 캐쉬(CACHE) 정보 
6.5. 에러 처리 
7. 웹해킹툴 
7.1. 파로스(PAROS) 
7.2. PAROS를 이용한 LEVEL1의 풀이 
7.3. PAROS를 이용한 LEVEL4의 풀이 

PART 3. 역컴파일 
1. 역컴파일 툴 
1.1. JAD 
1.2. JODE 
2. 역컴파일 방지 
2.1. 혼란기법(OBFUSCATOR) 
2.1.1. Jode 
2.1.2. proguard 
2.2. JSMOOTH를 이용한 바이너리 파일 작성 

PART 4. 애플릿(APPLET) 
1. 애플릿 보안 
1.1. 모래상자(SAND BOX) 
1.2. 제약 조건 
1.3. 서명된 애플릿(SIGNED APPLET) 
1.3.1. jar 압축 
1.3.2. jarsigner 
1.3.3. 서명된 애플릿 실행 
1.4. 애플릿 다운로드 
1.4.1. html코드에서 유추 
1.4.2. 다운로드된 애플릿 확인 
2. 파라미터 값 조작 
3. 역컴파일로 인한 중요정보 노출 
3.1. 애플릿 다운로드 폴더 접근 
4. 정보분석 
5. 서블릿(JSP) 호출 방법 
6. 애플릿 IDX파일 스푸핑 

PART 5. 스니핑과 스푸핑 
1. 스니핑 
1.1. 스니핑 툴 
1.1.1. PCAP(Packet Capture Library) 
1.1.2. 와이어샤크(WireShark) 
1.2. 웹 로그인 패킷 캡쳐 
2. 개인정보 보호법 
3. SSL 
4. 웹에서의 RSA 암호화 통신 
4.1. 자바 RSA 암호화 
4.2. 자바스크립트 RSA 암호화 
4.3. 로그인 프로그램 암호화 
4.3.1. 암호화 웹 로그인 프로그램 스니핑 테스트 
4.3.2. RSA 암호화 로그인 프로그램 절차 
4.3.3. login.jsp 
4.3.4. login2.jsp 
5. 네트워크 애플리케이션 
5.1. 암복호화 네트워크 프로그램 
5.1.1. 서버 프로그램 (CryptoServer) 
5.1.2. 클라이언트 프로그램 (CryptoClient) 
5.1.3. 프로그램 실행 결과 
5.1.4. 패킷 캡쳐 
5.2. 프로그램 소스와 설명 
5.2.1. CryptoServer.java 
5.2.2. CryptoClient.java 
5.2.3. 데이터를 저장하고 전송하는 클래스 
6. 스푸핑 (SPOOFING) 
6.1. 웹 암호화 프로그램의 스푸핑 위험 
6.2. 네트워크 암호화 프로그램의 스푸핑 공격 
7. 스니핑 툴 만들기 
7.1. JPCAP 
7.2. 자바로 만든 스니핑 툴 
7.3. 프로그램 구조 

PART 6. CLASS 파일의 구조 
1. HELLO.JAVA 
2. 기본구조 
3. CLASS HEADER 
4. CONSTANCE POOL 
5. CLASS 정보 
6. ATTRIBUTE 
6.2. 첫번째 메소드 ATTRIBUTE 
6.3. 두번째 메소드 ATTRIBUTE 
7. CLASSVIEWER 프로그램 소스 
맺음말 


Posted by viruslab