본문 바로가기
반응형

분류 전체보기167

FTZ Level 11 Level 11부터는 어느 정도 공부가 필요한 것 같아서 달고나 BOF문서를 공부하고 풀었습니다. 우선 Level11에 접속하여 hint를 보면 256바이트의 배열이 생성되는 것과 strcpy함수를 볼수 있습니다. 이 프로그램을 gdb로 뜯어보면 main+3 에서 0x108만큼 할당을 하는 것을 볼 수 있습니다. 그리고 main+48에서 strcpy를 호출하고 있구요 (취약점 발생부분) 그럼 main+53에 break를 걸어줍니다. 여기서 메모리 구조를 보면 ret4byte SFP4byte dummy8byte stack256byte 로서 총 272바이트가 됩니다. 그렇다면 NOP + 쉘코드 (268byte) + RET (4byte) 형태가 되어야 겠지요. 그런데.... 안되네요. setUID 문제라고 하.. 2021. 8. 9.
JAVA 데이터베이스 프로그래밍 데이터베이스 기초와 개발환경구축 1. MySQL 데이터베이스란? MySQL MySQL 소프트웨어는 DBMS의 한 종류로서 JDBC와 관련하여 필요한 프로그램 JDBC 1. 데이터베이스와 SQL의 개념 데이터베이스 데이터베이스 기능을 가지는 통합 시스템을 DBMS(DataBase Management System)이라 하며 MySQL이 이에 해당됨 SQL(Structured Query Language) 관계형 데이터베이스 시스템에서 데이터가 저장되는 형태는 대부분 테이블 구조 테이블을 생성하거나 추가, 삭제, 수정, 검색 등의 처리를 하기 위한 구조적 언어 2. 데이터베이스와 SQL의 구조 및 문법 테이블 생성 create tabe 테이블명(필드명 데이터형 [NULL 여부], ... ) 레코드 추가 inse.. 2021. 8. 9.
JAVA 네트워크 프로그래밍 네트워크 개요 1. IP Address IP Address란? 인터넷에 접속 가능한 컴퓨터들을 구분하기 위해 부여한 숫자 주소 0~255사이틔 10진수 4개로 구성됨(4바이트) 2. TCP/UDP Port TCP/UDP Port TCP : Transmission Control Protocol Port UDP : User Datagram Protocol Port 컴퓨터 상호간에 통신을 위해 IP주소와 포트가 필요하다. 포트는 하나의 IP Address 내에 개별적으로 부여된 통신 프로세스이다. TCP와 UDP는 각각 0~65535개의 포트가 할당된다. TCP는 통신 단말간에 연결을 설정하고 데이터를 교환하는 방식이다. UDP는 통신 단말간에 연결 설정 없이 데이터를 교환하는 방식이다. 포트 0~1024는 .. 2021. 8. 9.
JAVA 예외처리, 입출력 스트림 Exception 클래스 1. 자바의 각종 에러 Error 구문 에러 런타임 에러 논리 에러 시스템 에러 예외 2. Exception 클래스 개요 Exception클래스란? 예외사항을 처리하기 위해 모델링된 클래스이다. java.lang.Throwable 클래스의 하위 클래스이다. Exception클래스 사용법 프로그램 실행 중 예외가 발생되면 자바가상머신은 예외를 나타내는 Exception 클래스의 객체를 생성하여 프로그램으로 넘기게 된다. 예외를 발생시킨 프로그램이 예외객체를 catch하여 처리하게 된다. 예외처리를 하지 않은 상태에서 예외가 발생되면 프로그램이 중지된다. 메소드 내용 Exception 모든 예외클래스의 최상위 클래스 ArithmeticException (연산오류) : 프로그램 실행 .. 2021. 8. 9.
JAVA 애플릿 구조 및 프로그래밍 애플릿 개요 1. 애플릿 개념 애플릿이란? 웹 브라우저에서 실행되는 자바 어플리케이션을 의미한다. 애플릿은 HTML과 결합되어 실행된다. 한번 작성된 애플릿은 서로 다른 운영체제에서 실행이 가능하다. 웹브라우저에서 애플릿을 실행시키기 위해 별도로 클래스 파일을 설치할 필요가 없다. AWT를 이용한 그래픽 처리가 가능하며, 사용자와 상호 작용이 가능하다. 2. 애플릿 처리 구조 void init() 애플릿이 최초 로드될 때 할일을 작성하기 위한 메소드 void start() 애플릿이 포함된 웹브라우저가 활성화 될 때 처리해야 할 일을 작성하기 위한 메소드이다. void stop() 애플릿이 포함된 웹브라우저가 비활성화 될 때 처리해야 할 일을 작성하기 위한 메소드이다. void destroy() 애플릿이 .. 2021. 8. 9.
JAVA 멀티스레드 제어와 메소드 Thread 클래스 1. 스레드 개요 멀티 태스킹 여러 개의 프로세스가 하나의 운영체제에서 동시에 실행되는 것을 의미한다. CPU의 작업 시간을 각 프로세스가 돌아가면서 할당 받는다. 멀티 스레딩 하나의 프로세스 내에서 여러 개의 작업을 동시에 실행하는 것을 의미한다. 스레드 : 프로세스 내의 작업 단위이다. 2. Thread 클래스 사용법 작성법 스레드 클래스를 상속받아 run() 메소드를 오버라이딩한다. 다른 클래스를 받드시 상속받아야 할 경우 Runnable 인터페이스를 구현한다. 3. run() 메소드 사용법 Runnable클래스 1. Runnable 인터페이스 개요 자바에서는 다중상속이 불가능하므로 다른 클래스를 상속받은 상태에서 Thread 클래스를 상속받을 수 없다. 인터페이스는 다중 상속이.. 2021. 8. 9.
반응형