전체 글 132

WebGoat 실습 하기

Internet Security Practice - WebGoat 1. 사전 준비 A. https://github.com/WebGoat/WebGoat/releases i. 해당 사이트에서 가장 최근 버전인 8.0.0.M21에 있는 webgoat-server-8.0.0.M21.jar 설치 ii. 해당 파일의 명을 webgoat-server-8.0.0.VERSION.jar 으로 변경 B. https://github.com/WebGoat/WebGoat#1-standalone i. 해당 사이트에서 Clone or download를 클릭 ii. Download ZIP 를 클릭해서 zip파일로 다운로드 iii. 해당 파일을 압축 해제 후 원하는 폴더로 이동 C. A에서 설치한 파일을 B에서 설치한 폴더에 이동 D...

TCP EchoClient

※ 주고 받는 것이 아닌 한 번 보내고 받은 뒤 종료되는 예제 sln명 : ConsoleClient using System; using System.Text; using System.Net; using System.Net.Sockets; using System.Threading; namespace ConsoleClient { class Program { static void Main(string[] args) { Thread clientThread = new Thread(clientFunc); clientThread.IsBackground = true; clientThread.Start(); Console.WriteLine("종료하려면 아무 키나 누르세요..."); Console.ReadLine(); }..

TCP EchoServer

※ 주고 받는 것이 아닌 한 번 보내고 받은 뒤 종료되는 예제 sln명 : ConsoleServerusing System; using System.Text; using System.Net; using System.Net.Sockets; using System.Threading; namespace ConsoleServer { class Program { static void Main(string[] args) { // 서버로 작동하는 스레드 생성 Thread serverThread = new Thread(serverFunc); // Background로 돌려서 수행 serverThread.IsBackground = true; serverThread.Start(); // 5초간 기다리다 Key를 인식한다. ..

JAVA_Chapter01 입/출력(시험 점수 입/출력과 총점, 평균 계산)

시험 점수 입/출력과 총점, 평균 계산 import java.util.*; public class Homework2 { public static void main(String[] args) { // 입력 작업을 위한 스캐너 객체 선언 Scanner sc = new Scanner(System.in); int kor=0; int eng = 0; int math = 0; int total = 0; // 평균은 소숫점을 포함시켜야 한다. // 그에 따른 자료형은 float, double등이 있다. float avg = 0; // 이름 입력 작업 System.out.print("이름을 입력해 주세요 : "); String name = new String(); name = sc.next(); // 각 과목의 점수를..

JAVA_Chapter01 입/출력(자기소개 만들기)

자기 소개 만들기 import java.util.*;public class Homework1 {public static void main(String[] args){Scanner sc = new Scanner(System.in);// 입력을 하기 위한 스케너 메소드 객체 선언String name;// 이름을 저장 할 변수int age;// 나이를 저장 할 변수System.out.print("이름을 입력하세요 : ");name = sc.next();System.out.print(name+"나이를 입력하세요 : ");age = sc.nextInt();sc.nextLine();// Enter를 읽어준다.// Enter를 읽어 줌 으로서 입력 버퍼를 비워준다.System.out.print("학과를 입력하세요 :..

웹 보안_Chapter04 - SQL인젝션 공격

Chapter04 - SQL인젝션 공격 1. SQL인젝션 l 웹 애플리케이션과 데이터베이스 간의 취약점을 이용해서 SQL문을 변조할 수 있는 것 2. SQL인젝션 공격의 원리 l 웹 애플리케이션과 데이터베이스가 연동되는 부분에 공격자가 임의의 SQL명령어를 삽입하여 공격 l 사용자가 임의로 조작할 수 있는 로그인, 검색 부분, 자료실 등과 같은 부분을 해커 또한 임의로 조작할 수 있는 부분인 것을 알고 있어야 함 -> 실제로 데이터베이스와 연동이 되는 부분 l SQL Injection 공격: 파라미터를 이용한 쿼리의 재구성 공격 i. 쿼리를 입력하는 과정에서 일반적인 값 외에 악의적인 의도를 갖는 구문을 함께 삽입하여 공격자가 원하는 SQL쿼리문을 실행하는 대표적인 기법 3. SQL Injection의 ..

통신_Chapter03 - 04 신호 변환

Chapter03 - 04 신호 변환 1. 디지털 전송 l 디지털 정보 -> 디지털 신호: 베이스 밴드(Base Band) ü 디지털 형태인 0과 1로 출력되는 직류 신호를 변조하지 않은 채 그대로 전송 ü 간단한 근거리 통신에서만 사용 ü 컴퓨터와 가까운 주변 장치 들에서 사용 1- 단극성 방식: 신호를 동일한 부호의 전압으로 부호화 u 신호가 들어오면 +, 없으면 0으로 표현 2- 양극성 방식: 신호를 부호화 할 때 양과 음의 전압을 모두 사용 u 1이라는 신호(+신호 )가 온 뒤에 다시 1이 오게 되면 -신호로 표현한다. u 직 전에 온 값의 반대 극으로 전송 3- RZ와 NRZ 방식 u 1은 모두 -극, 0은 모두 +극 u RZ(Return to Zero)방식 i. 1이라는 신호를 주었을 때 다시..

통신_Chapter03-03 정보 전송

Chapter03-03 정보 전송 1. 부호화 l 서로 떨어진 송/수신 측에서 신호를 변환하여 전송 하는 것 l 부호: 전송하려는 정보를 1바이트의 2진수로 표현 l 부호 체계: 부호의 집합 2. 정보 전송의 변조 방식 l 통신 회선에서 전송되는 신호가 아날로그, 디지털 인지에 따라 전송 방식이 결정 됨 l 디지털 전송 방식(회선에서 전송되는 신호가 디지털 신호인 경우) ü 디지털 신호에서 부호(변조), 복호(복조) 라고 표현됨 2진수의 디지털 신호는 ‘부호’ 라고 부르기 때문 ü 아날로그 혹은 디지털 정보를 ‘부호기’ 를 통해서 디지털 신호 자체를 보낸다. ü 전송 한 디지털 정보를 ‘복호기’에서 정보를 복구 시킨다. l 아날로그 전송 방식(회선에서 전송되는 신호가 아날로그 신호인 경우) ü 전송 신호..

웹 보안_Chapter03 - 02 인증 기술과 O-Auth

Chapter03 - 02 인증 기술과 O-Auth 네트워크의 공격의 대부분은 80번 포트로 들어와서 웹 공격이 주로 된다. 따라서, 웹에서의 취약점 중 인증과 데이터 베이스 접근에 공격이 가장 많다. 1. 인증 기술 l 인증 방법은 두 개 이상의 방법을 함께 사용하는 것이 더 안전 l 주민등록번호 기반 인증 - 주민등록번호의 앞 여섯 자리는 생년월일, 뒤 일곱 자리는 성별, 태어난 지역, 출생신고 순서, 오류 검증 번호로 구성 - 성별을 나타내는 숫자는 태어난 시대에 따라 구분 l I-PIN(인터넷상 개인 식별번호) 기반 인증 - 웹 서비스를 이용할 수 있는 개개인을 식별하는 식별번호 l 생체 인증 2. 접근 통제 l 수직적 접근 통제 - 특정 권한을 가진 정보를 입력하도록 해서 접근할 수 있도록 해 ..

웹 보안_Chapter03 - 웹 해킹의 기초

리뷰 인터넷과 웹을 구분할 줄 알아야 함 html 0.9버전: 초기 html파일에는 text만 들어있음 Chapter03 - 웹 해킹의 기초 1. 해킹 l IDS: 탐지 – 탐지에서 끝내고 대응을 하지는 않는다. l IPS: 대응 – IDS의 다음 단계로 실재로 대응을 한다. l 웹 해킹이 발전된 이유는 80번 포트로 들어가는 HTTP를 사용한 해킹이 발생된다. 2. 포트 l 실제로 PC로 접근할 수 있는 통로로 사용된다. l 보통의 모든 시스템은 80번 포트를 제외하고 모든 포트를 막아 둔다. 3. 웹 해킹의 방법 l 취약점의 존재 여부를 확인하고 그곳으로 침투를 시도 l 공격대상 선정 -> 정보 수집 -> 취약점 분석 -> 공격 -> 흔적 제거 l 흔적을 숨기고 도망간다. 4. 공격 대상 선정 l 방..