전체 글

MySQL은 가장 많이 사용되고 있는 관계형 데이터베이스 관리시스템입니다. 그럼 데이터베이스란 무엇일까요? 데이터베이스는 통합하여 관리되는 데이터의 집합체를 의미합니다. 이것은 증복된 데이터는 없애고, 자료를 구조화하여 효율적으로 처리할수 있도록 합니다. 데이터베이스의 특징은 1. 사용자의 질의에 대하여 즉각적인 처리와 응답이 이루어집니다. 2. 생성, 수정, 삭제를 통해 최신의 데이터를 유지합니다. 3. 사용자들이 원하는 데이터를 동시에 공유가 가능합니다. 4.사용자가 원하는 데이터를 주소가 아닌 내용에 따라 참조가 가능합니다. 5. 응용프로그램과 데이터베이스는 독립되어 있으므로, 데이터의 논리적 구조와 응용프로그램은 별개로 동작됩니다. 그럼 SQL은 무엇일까요? SQL은 데이터베이스에서 데이터를 정의..
이번에는 JSP와 Mysql을 통한 게시판을 제작해보았습니다. 코드 작성은 동빈나님의 유튜브 JSP강의를 참고하였습니다. 우선 기본적인 프로그램 eclipse, mysql, tomcat을 설치해줍니다. 이렇게 게시판을 작성하기 위한 프로그램들을 설치해주고 코드를 작성하였습니다. 이것이 게시판의 화면이고 아직 한글깨짐 문제와 글 삭제기능은 오류가 발생하여 수정중입니다. 코드는 첨부파일로 올렸습니다. 출처 : https://www.youtube.com/watch?v=wEIBDHfoMBg&list=PLRx0vPvlEmdAZv_okJzox5wj2gG_fNh_6&index=1
앱인벤터라는 툴을 사용해본적이 있으신가요? 앱인벤터는 MIT가 만든 오픈소스 앱메이커인데 초보자들이 엄청 쉽게 앱을 만들 수 있는 툴이에요. 오늘은 제가 만든 앱인벤터를 통해서 만든 앱을 보여드릴겠습니다 회식같은 자리에서 계산할 사람을 고를 때 편하게 사용할 수 있는 앱을 만들어 보았습니다. 우선 인터페이스는 이렇게 되어있습니다. 디자인하기 어려워 보이지만 옆에 있는 다양한 도구들을 통해서 쉽게 제작할 수 있습니다. 저기에 사람이름을 입력하고 입력버튼을 누르고 돌려돌려 돌림판 버튼을 클릭하게 되면 "과연 누구??" 가 있는 곳에 당첨된 사람이 나오게 됩니다. 앱에 필요한 코드는 드래그를 통해 쉽게 사용할 수 있습니다. 그냥 보이시는 그대로 입력버튼을 클릭을 했을 때 리스트에 이름을 넣고 키보드를 숨기고 ..
소켓 프로그래밍이란 무엇일까요? 위 사진을 보면 나오는 함수들을 통해서 서버와 클라이언트는 서로 통신합니다. 함수를 하나하나씩 설명해드릴게요. 한 남자와 여자가 전화하는 과정을 예로 들어 설명을 해보겠습니다. 우선 남자와 여자가 전화를 하려면 휴대폰을 구매해야겠죠? 그 과정이 바로 socket 함수입니다. socket 프로그래밍에서는 통신할 장비를 구입하는 것이죠. 이제 휴대폰을 사고 남자와 여자가 전화를 하려면 전화 번호를 알아야하죠 그 과정이 bind함수입니다. socket 프로그래밍에서는 통실할 주소를 할당하는 것입니다. 번호를 따인 여자는 남자의 연락을 기다립니다. 그 과정이 listen함수 입니다. socket 프로그래밍에서는 연결을 대기하는 것입니다. 이제 번호를 알은 남자는 설레는 마음으로 ..
암호학에 대해서 설명해보겠습니다. 우선 암호란 무엇일까요? 암호는 정보를 이해할 수 없도록 암호화 하거나 다시 해독하기 위한 일련의 단계를 정의한 알고리즘 입니다. 암호의 구조는 평문, 암호문, 암호화, 복호화로 이루어져 있는데요 우선 평문은 전달하고자 하는 원본 메시지입니다. 암호문은 알고리즘을 통해 알아볼 수 없도록 암호화 된 메시지. 암호화는 암호문을 만들기 위한 규칙을 적용하여 평문을 암호문을 만드는 과정 복호화는 암호문을 평문으로 되돌리는 과정입니다. 말로해서는 잘모르겠죠?? 그림으로 설명해드리겠습니다. 이게 암호이구요 다음시간에는 암호의 종류에 대해서 설명해드리도록 하겠습니다. 빠이~
MAC OS X는 데이터를 저장하고 있는 파일의 위치가 다름. 시스템 시간 : date라는 명령어와 uptime을 통해 얼마나 부팅되어 있는지 확인가능 네트워크 연결 정보 : 현재 시스템이 연결하고 있는 호스트와 연결했던 호스트를 보여줌 netstat -an명령어로 확인 가능 프로세스 목록 : ps명령어로 수집. 뒤에 -ef 사용자 정보 : 맥은 유닉스를 사용하기 대문에 유닉스는 다중 사용자 시스템으로 여러 사용자들이 동시에 접속하여 어떠한 기능 수행을할 수 있다. w를 통해 확인이 가능함. 파일 정보 : 현재 어떤 파일이 어떤 명령으로 인해 열려 있고 어떤 네트워킹 작업을 하고 있는지 수집가능 lsof명령어를 사용 시간 정보 : 포렌식에서 가장중요한 시간 정보 시간 종류별 설명 Modify Time :..
시스템 시간 : date랑 time으로 수집 가능 (커맨드로 수정시 기록에 남지 않는다) 네트워크 연결 정보 : netstat 명령어를 통해서 수집 가능 프로세스 : 어떤 행위가 일어난 근거를 파악가능 수집방법 : Tasklist 핸들정보 : 핸들이 실제로 가리키고 있는 오브젝트는 레지스트리에 기록 수집방법 : sysinternals.com에서 만든 Handle.exe를 사용 DLL 목록 : 침해사고가 일어날 경우 DDL 목록을 얻어와 분석가능 Sysinternals.com에서 만든 ListDlls.com라는 도구로 얻을수 있음 로그온 사용자 정보 : net session이라는 명령어를 통해서 원격으로 로그온한 사용자의 정보를 파악 가능 윈도우의 서비스 정보 : 어떠한 악성 프로그램이 서비서에 등록되어 ..
오늘은 asm문제를 풀어보도록 하겠습니다. 우선 파일을 확인해 보면 readme 파일이 있네요 읽어볼까요? 포트를 알려주네요. 나중에 접속해보도록 하고 c언어 파일을 봅시다. 코드와 포트를 요약 해보면 open함수, read함수, write함수를 통해서 쉘코드를 만들어야겠네요. shellcraft를 이용해서 쉘코드를 만들어보겠습니다. from pwn import * context(arch='amd64', os='linux') filename = 'this_is_pwnable.kr_flag_file_please_read_this_file.sorry_the_file_name_is_very_loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo..
애기건듀
건듀의 블로그