일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- c
- 웹페이지 만들기
- C언어
- BOJ Python
- 생활코딩
- Python
- BOJ
- WarGame
- 백준
- PHP 웹페이지 만들기
- 숙명여자대학교 정보보안 동아리
- The Loard of BOF
- CSS
- XSS Game
- c++
- 숙명여자대학교 정보보안동아리
- hackctf
- hackerrank
- 자료구조 복습
- SWEA
- 머신러닝
- lob
- Javascript
- siss
- 풀이
- 기계학습
- HTML
- 드림핵
- 파이썬
- Sookmyung Information Security Study
- Today
- Total
목록전체 글 (346)
혜랑's STORY
본 포스팅은 DreamHack 사이트의 Memory Corruption - C(1) 강의 내용을 요약한 것이다. 강의의 주소는 다음과 같다. 해커들의 놀이터, Dreamhack 해킹과 보안에 대한 공부를 하고 싶은 학생, 안전한 코드를 작성하고 싶은 개발자, 보안 지식과 실력을 업그레이드 시키고 싶은 보안 전문가까지 함께 공부하고 연습하며 지식을 나누고 실력 향 dreamhack.io # Out Of Boundary OOB(Out Of Boundary)는 버퍼의 길이 범위를 벗어나는 인덱스에 접근할 때 발생하는 취약점이다. -> 예제(oob-1.c) // oob-1.c #include int main(void) { int win; int idx; int buf[10]; printf("Which index..
본 포스팅은 DreamHack 사이트의 Memory Corruption - C(1) 강의 내용을 요약한 것이다. 강의의 주소는 다음과 같다. 해커들의 놀이터, Dreamhack 해킹과 보안에 대한 공부를 하고 싶은 학생, 안전한 코드를 작성하고 싶은 개발자, 보안 지식과 실력을 업그레이드 시키고 싶은 보안 전문가까지 함께 공부하고 연습하며 지식을 나누고 실력 향 dreamhack.io 버퍼 오버플로우란? * 버퍼(buffer) : 지정된 크기의 메모리 공간 즉, 버퍼 오버플로우(buffer overflow) 취약점은 버퍼가 허용할 수 있는 양의 데이터보다 더 많은 값이 저장되어 버퍼가 넘치는 취약점이다. 일반적으로 버퍼 오버플로우는 발생하는 위치에 따라 스택 버퍼 오버플로우, 힙 오버플로우로 나뉘어 진다..
# BOJ 1037번 : 약수 - 풀이 어떤 수 N의 진짜 약수가 "모두" 주어진다고 했다. 즉, 주어진 수들을 정렬 한 뒤, 가장 작은 수와 가장 큰 수를 곱해주면 어떤 수 N을 구할 수 있게 되는 것이다. - 코드 #include #include void mysort(int x[], int n); int main(){ int num; scanf("%d",&num); int* measure = (int*)malloc(sizeof(int)*num); for(int i=0; i= C) printf("-1"); else printf("%d", A/(C - B) + 1); return 0; } - 실행결과
Level 5 -> 6 문제를 해결하기 위해 전 레벨을 통해 얻은 비밀번호를 사용하여 로그인 해 주었다. 주어진 문제를 통해 비밀번호가 들어있는 파일은 inhere 디렉토리 안에 있으며, -human-readable한 파일이며, 1033 바이트에 실행 불가능한 파일이라는 것을 알 수 있었다. 따라서 나는 정말 inhere 디렉토리가 있는지 확인해 보았고 inhere 디렉토리로 이동하여 크기가 1033 바이트 이상인 파일을 검색해 보았다. 그 결과 maybehre07 디렉토리의 file2 파일에 비밀번호가 담겨 있다는 것을 알 수 있었고, 비밀번호는 다음과 같이 알아낼 수 있었다. Level 6 -> 7 앞서 알아낸 비밀번호를 통해 6레벨로 이동할 수 있었다. 주어진 문제에 따라 find 명령어를 통해 소..
#5 Buffer overflow의 이해 buffer overflow 공격 실제 공격 방법을 시험해 보기 위해서는 대상 프로그램이 필요하다. 보다 쉬운 이해를 위해 buffer overflow 취약점을 가진 간단한 아래 프로그램을 사용할 것이다. #include #include #include int main(int argc, char **argv){ char buffer[1024]; if(argc>1) strcpy(buffer, argv[1]); return 1; } 소스코드가 말해 주듯이 실행 시 주어지는 첫 번째 인자를 buffer라는 char형 배열에 복사를 한다. 또한 bound check를 하지 않는 strcpy()함수를 이용하고 있다. 즉, 이 프로그램은 1024바이트의 버퍼공간에 쉘 코드와..
# 공부할 때 사용한 자료 https://opentutorials.org/course/3161/19531 데이터베이스의 목적 - 생활코딩 수업소개 데이터베이스와 스프래드쉬트의 유사점을 살펴봅니다. 이를 통해서 데이터베이스가 그렇게 낯선 것이 아니라는 것을 느끼셨으면 좋겠습니다. 또 웹애플리케이션에서 데이터베이스를 opentutorials.org #MySQL 실행하기(MySQL 서버 접속) cmd 창을 실행시킨 뒤, mysql.exe 파일이 들어있는 경로로 이동한다. 그 뒤, 다음과 같이 mysql -uroot -p를 입력하고 초기에 설정한 비밀번호를 입력하면 다음과 같이 실습을 진행할 환경이 모두 만들어 진 것이다. # MySQL의 구조 # 스키마의 사용 - 스키마(schema)란? 스키마(schema)..
# 공부할 때 사용한 자료 https://penggu.tistory.com/47 [스크랩] PHP란, PHP의 동작원리 Celestia님의 블로그에서 퍼온 글입니다. 이 글을 보고 PHP의 동작원리에 대해서 이해하는 데에 많은 도움이 되었습니다. 문제가 될 시 삭제 조치 하도록 하겠습니다. 좋은 글을 써주신 Celestia님 감 penggu.tistory.com https://opentutorials.org/course/3130/19316 수업의 목적 - 생활코딩 수업의 목적 2018-01-19 23:53:02 opentutorials.org http://docs.php.net/manual/kr/ PHP: PHP 매뉴얼 - Manual docs.php.net # PHP의 원리 PHP는 Server-sid..
# XSS Game 01 문제 # XSS Game 01 문제 풀이 먼저, Target code를 살펴보자. 코드를 살펴보니 XSS 필터를 비활성화 해 놓은 것을 볼 수 있다. 실제로 사용자 입력이 그대로 출력되는지 알아보기 위하여 임의의 HTML 코드를 삽입해 보았다. Hello 을 입력하자 아래와 같이 URL에 똑같이 출력되어 나오고 Hello가 출력되는 것을 확인할 수 있었다. 따라서 이번 문제를 해결하기 위해 서버에서 사용자의 입력값을 필터링하지 않는다는 것을 이용하기로 하였다. 미션이었던 자바스크립트 alert()을 삽입하기 위하여 를 입력해주었고, 아래와 같이 성공하였다는 메시지를 얻을 수 있었다.