황영철 한남대학교 컴퓨터 공학과 네트워크 실험실

Slides:



Advertisements
Similar presentations
을지대학교 무선 네트워크 사용 방법 2010 년 06 월 01 일. 을지대학교 무선 네트워크 사용 방법 1. PC 무선랜 카드 활성화 및 체크 1 단계 : 시작 -> 설정 -> 네트워크 설정 2 단계 : 무선 네트워크 설정 선택 -> 마우스 버튼 오른쪽 클릭 -> 사용.
Advertisements

컴퓨터와 인터넷.
Secure Coding 이학성.

정보 보안 개론과 실습 네트워크 해킹과 보안 3부 해킹 전 정보 획득 Chapter 10. 목록화.
Part TCP / IP(계속) 3. IP 주소 4. IP 라우팅 5. 응용 프로토콜.
MS SQL Server 학기, 소프트웨어 설계 및 실험 ( Ⅰ )
CHAP 22. 블루투스.
Oozie Web API 기능 테스트 이승엽.
뇌를 자극하는 Windows Server 2012 R2
김태원 심재일 김상래 강신택. 김태원 심재일 김상래 강신택 인터넷 통신망의 정보를 제공하는 서비스 인터넷의 자원 및 정보는 NIC가 관리 IP주소 또는 도메인으로 정보 검색 이용자 및 통신망 관한 정보를 제공.
1. 신뢰할 수 있는 싸이트 등록 인터넷 익스플로러 실행 후 실행
1. Windows Server 2003의 역사 개인용 Windows의 발전 과정
Windows Server 장. Windows Server 2008 개요.
PHP입문 Izayoi 김조흔.
웹 서비스 (Web Services).
발표자 : 손충호 조원 : 유진우, 노유성, 조사랑, 손충호
웹 애플리케이션 아키텍쳐 웹 클라이언트 서버 요청 응답 전송 애플리케이션 데이터베이스 커넥터 N-계층.
4장. 웹로직 서버상에서의 JDBC와 JTA의 운용
SSL (Secure Sockets Layers Protocol)
8장. 원격지 시스템 관리하기.
Chapter 21 Network Layer: ARP, ICMP (IGMP).
소리가 작으면 이어폰 사용 권장!.
컴퓨터응용과학부 Java Enterprize(DB) 제 15 주
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
모바일 자바 프로그래밍 JDBC / WAP Ps lab 오민경.
01. DHCP의 개념 조직의 네트워크에 연결되어 있는 워크스테이션의 TCP/IP 설정을 자동화하기 위한 표준 프로토콜
뇌를 자극하는 Windows Server 장. Windows Server 2008 개요.
웹 서비스 (Web Services).
KHS JDBC Programming 4 KHS
FTP 프로그램의 활용 FTP 프로그램의 용도 인터넷 공간에 홈페이지 파일을 업로드할 때 필요
제 01 장 인터넷 프로그래밍 개요 학기 인터넷비즈니스과 강 환수 교수.
Wireless Java Programming
Chapter 19 솔라리스 네트워크 관리 Solaris1 . TCP/IP 개요
시스템 인터페이스 Lab3 Unix 사용법 실습.
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
제 15 장 BOOTP와 DHCP BOOTP 15.2 동적 호스트 설정 프로토콜.
뇌를 자극하는 Windows Server 장. 원격 접속 서버.
WSDL 의공학과 3학년 김 기 흔.
(개정판) 뇌를 자극하는 Red Hat Fedora 리눅스 서버 & 네트워크
ASP.NET AJAX / AJAX Control Toolkit 응용 2008 컴퓨터공학실험( I )
오라클 넷(Oracle Net)의 개념 및 구성
웹디자인
CGI란 무엇인가? CGI(Common Gateway Interface)의 정의
네트워크 프로토콜.
16 장 네트워크 보안 : 방화벽과 VPN 16.1 개요 16.2 기밀성 16.3 전자 서명 16.4 인터넷 보안
※ 인터넷 옵션 조치 방법 ※ ★ 신뢰사이트 등록 (1) ★ 우리들을 신뢰해주세요^^* 방법이 복잡해 보일지 모르지만
인천대학교 웹과 인터넷 수업 개요 및 내용 소개.
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
01. DHCP의 개념 조직의 네트워크에 연결되어 있는 워크스테이션의 TCP/IP 설정을 자동화하기 위한 표준 프로토콜
01. 개요 네트워크에 있는 컴퓨터와 그룹에 대한 NetBIOS 이름에 대응되는 IP 주소를 찾아주는 서비스
웹(WWW).
STS 에서 웹 서버 설치 방법.
클러스터 시스템에서 효과적인 미디어 트랜스코딩 부하분산 정책
암호학 응용 Applied cryptography
Chapter 27 Mobile IP.
웹 어플리케이션 보안 2016년 2학기 11. Enhancing Security.
Introduction to JSP & Servlet
WZC 무선 연결 방법 (Windows 7 Ver.).
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
세션에 대해 알아보고 HttpSession 에 대해 이해한다 세션 관리에 사용되는 요소들을 살펴본다
Part 05 TCP/IP 1. 네트워크 2. 포트번호.
채팅 및 파일전송 프로그램 권 경 곤 김 창 년.
소리가 작으면 이어폰 사용 권장!.
CHAP 15. 데이터 스토리지.
DBMS & SQL Server Installation
엑셀 리포트를 웹 클라이언트에서 사용시 설정 방법
JAVA 프로그래밍 16장 JNLP.
ARP.
소리가 작으면 이어폰 사용 권장!.
Presentation transcript:

황영철 한남대학교 컴퓨터 공학과 네트워크 실험실 [Hacking Exposed] 웹 기획. 운영자를 위한 해킹과 보안중에서 웹 애플리케이션과 보안에 대한 소개 황영철 한남대학교 컴퓨터 공학과 네트워크 실험실

웹 애플리케이션과 보안에 대한 소개 웹 애플리케이션 아키텍쳐 잠재적인 약점 웹 해킹의 방법론

웹 애플리케이션 아키텍쳐 웹 애플리케이션 아키텍쳐 웹 클라이언트 서버 요청 응답 전송 애플리케이션 데이터베이스 커넥터 N-계층

웹 애플리케이션 아키텍쳐 간단한 HTML 용어 전송 : HTTP 태그의 남용 무상태 프로토콜 ASCII기반 프로토콜 INPUT, HIDDEN 쇼핑몰의 상품가격을 HIDDEN 으로 설정 전송 : HTTP 무상태 프로토콜 ASCII기반 프로토콜 TCP 포트 80번에서 동작

웹 애플리케이션 아키텍쳐 전송 : HTTP(계속) 서버 자원의 사용(NETCAT)

웹 애플리케이션 아키텍쳐 전송 : HTTP(계속) 보안 취약성 SSL/TLS 요청을 발생시키기 위해 암호화된 문장을 시행할 필요가 없음. 응답된 구문을 해독할 필요도 없다. 잘알려진 포트인 80번 포트 사용(방화벽도 허용) SSL/TLS 전송 계층을 암호화 기본적인 HTTP 요청-응답 메커니즘을 대체(확장)하지 않음 TCP 443 포트에서 동작

웹 애플리케이션 아키텍쳐 전송 : HTTP(계속) 쿠키 인증 무상태성인 HTTP를 상태성 프로토콜처럼 동작하도록 만듦 메모리에 임시 저장되거나 디스크에 영구적으로 기록 인증 기본 – USERNAME/PASSWORD, BASE-64 다이제스트 폼-기반 NTLM 협상 클라이언트 측 인증서 MS 패스포트

웹 애플리케이션 아키텍쳐 전송 : HTTP(계속) 다른 프로토콜들 MIME(Multipart Internet Mail Extension) 바이너리 파일 전송을 위한 프로토콜 SMTP(Simple Mail Transfer Protocol) FTP(File Transfer Protocol) WebDAV(Web Distributed Authoring and Versioning) 웹상의 공동 저작활동을 지원하기 위한 IETF 표준 멀리 떨어져 있는 사용자들 간에 인터넷 상에서 파일을 공동 편집하고 관리할 수 있도록 해주는 HTTP 확장

웹 애플리케이션 아키텍쳐 웹 클라이언트 정적인 웹 컨텐츠안에 매우 많은 기능을 내장하는 가능 MS의 activex <object id=“scr” classsid=“clsid:06290BD5-48AA-11D2-8432-06008C3FBFC”> </object>

웹 애플리케이션 아키텍쳐 웹서버 클라이언트 요청을 받고 자원을 웹어플리케이션 로직에 넘겨주는 HTTP 데몬(서비스) IIS, Apache, AOL/Netscape Enterprise Server, iPlanet http://uptime.netcraft.com/up/graph/?host=www.hannam.ac.kr

웹 애플리케이션 아키텍쳐 웹 애플리케이션 현재 웹사이트의 핵심은 서버측 로직 웹 클라이언트 서버 전송 커넥터 N-계층 표현 요청 응답 전송 어플리케이션 데이터베이스 데이터 베이스 커넥터 N-계층 웹 애플리케이션 현재 웹사이트의 핵심은 서버측 로직 표현 로직 데이터 Search for Search.html Search.exe Filename.db Result.html

웹 애플리케이션 아키텍쳐 웹 애플리케이션 기술 및 벤더 실제 프로그램처럼 동작 제공회사 웹 애플리케이션 마이크로 소프트 Active Server Page (ASP) ASP.NET ISAPI Common Object Model(COM) JavaScript Sun Microssystems IBM Websphere BEA Weblogic Java 2 Enterprise Edition (J2EE) , Java Servlets Java Server Pages(JSP) CORBA Apache Software Foundation PHP(Hypertext Preprocessor) Jakarta(server-side Java) (none) HTML CGI(펄 포함) 실제 프로그램처럼 동작 http://test.com/article.php?id=425&format=html C:>article.exe /id: 425 /format: html

웹 애플리케이션 아키텍쳐 데이터 베이스 복잡성과 매개체들 SQL과 오라클이 주 로직 구성요소는 특정 데이터 베이스 연결자 인터페이스를 일반적으로 구동. 복잡성과 매개체들 프록시 모든 연결이 통과해야만 하는 단일 게이트웨이 한 클라이언트의 요청이 끝나면 다음 클라이언트를 위해 원래의 자원 요청(인터넷 캐쉬 개념) 클라이언트 소스 주소가 항상 프록시 클라이언트의 요청을 구분할 수 없다.

웹 애플리케이션 아키텍쳐 복잡성과 매개체들(계속) 로드 밸런서 프록시의 반대처럼 동작 클라이언트는 어느서버가 요청을 처리하는지 알지 못함 밸런서 자체는 일반적인 www.company.com 사용 서버가 주소에 상관하지 않고 클라이언트의 요청을 서버에 분산 CISCO - Local Directory, F5 – Big-IP, Microsoft-NLB

웹 애플리케이션 아키텍쳐 복잡성과 매개체들(계속) 로드 밸런서의 동작 Client A WWW1 알고리즘 로드밸런서 www.company.com Client B WWW2 Client C WWW3

웹 애플리케이션 아키텍쳐 새로운 모델 : 웹 서비스 WSDL(Web Services Definition Language) UDDI(Universal Description, Discovery, and Integration) SOAP(Simple Object Access Protocol)

잠재적인 취약점 웹 클라이언트 전송 웹 서버 웹 애플리케이션 데이터 베이스 액티브 컨텐츠 실행 크로스-사이트 스크립팅 오류 스니핑, SSL 리다이렉션 웹 서버 웹 서버 소프트웨어의 취약점 웹 애플리케이션 인증, 인가, 사이트구조, 입력확인, 애플리케이션로직에 대한 공격 데이터 베이스 질의를 통해 특권있는 명령수행, 질의 조작

웹 해킹의 방법론 인프라의 프로파일 작성 애플리케이션에 연결하기 위한 특별히 필요한 클라이언트가 있는가? 전송에 무엇을 사용하는가? 어떤 포트인가? 얼마나 많은 서버가 있는가? 로드 밸런서가 있는가? 웹 서버의 상표와 모델은 무엇인가? Chapter 2장에서 설멍

웹 해킹의 방법론 웹 서버 공격 애플리케이션 조사 인증 메커니즘 공격 웹서버 소프트웨어의 원론적인 취약점 Chapter3에서 설명 애플리케이션 조사 어떤 종류의 컨텐츠가 서버에서 구동되는가? 어떤 인증된 컨텐츠 및 인증 유형이 사용되는가? 외부연계는 어떠한가? 데이터 저장소는 어떠한가? Chapter 4에서 설명 인증 메커니즘 공격 패스워드 추측 공격, 쿠키안의 토큰의 스푸핑 Chapter 5에서 설명

웹 해킹 방법론 인가 스킴 공격 기능 분석 수행 사용자 원리 변경 권한 상승 SQL 서버에 대한 특권 명령 터널링 Chapter 7에서 설명 기능 분석 수행 애플리케이션 각 개별 기능의 실제 분석 구성요소 식별 각 입력 저장소에 오류유발 Chapter 8에서 설명

웹해킹 방법론 데이터 연결성 익스플로잇 관리 인터페이스 공격 클라이언트 공격 가장 파괴적인 공격 개발자들은 안전성보다는 효율성을 생각 Chapter 9에서 설명 관리 인터페이스 공격 원격관리를 허용하는 오픈 포트 Chapter 11에서 설명 클라이언트 공격 크로스 사이트 공격 eBay, E*Trade, Citigroup

웹 해킹 방법론 서비스 거부 공격 시작 합법적인 요청을이용하여 사이트에 트패릭을 전송함으로써 수행 Chapter 3에서는 웹서버에대한 DoS Chapter 8에서는 웹 애플리케이션에 대한 DoS

프로파일링 서버 탐색 서비스 탐색 서버 식별

서버 탐색 직관 인터넷 풋 프린팅 WWW, COM, ORG, EDU, 등등 직관적으로 알 수 있는 서버 목표에 대해 정확히 아는 것 Whois 유틸리티를 사용하여 첫번째 수행 할당된 인터넷 IP 주소의 범위 등록된 DNS 도메인 이름 및 관련 데이터 인터넷 존재에 대한 관리상의 연락 http://www.arin.net/whois

서버 탐색 인터넷 풋 프린팅

서버 탐색 Whois 유틸 사용예

서버 탐색 Whois 유틸 사용

서버 탐색 DNS 질의 Nslookup 사용

서버 탐색 핑 포트 스캐닝을 이용한 탐색 호스트 네임이나 IP 주소에 ICMP Echo Request를 보내는 것 대부분의 포트 스캐닝 툴에 내장 포트 스캐닝을 이용한 탐색 Scanline 유틸

서비스 탐색 Scanline 유틸 사용

서버 식별 NETCAT 유틸 사용