일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘
- SQL_Injection
- C언어
- dvwa
- 기계학습
- 머신러닝
- 보안
- dsa
- 파일구조
- ImageBase
- 디피헬먼
- StoredXSS
- 암호학
- RSA
- db
- SQL
- 심층학습
- 코드업
- Database
- 딥러닝
- RVA
- 공개키
- 프로그래머스
- XSS
- ReflectedXSS
- injection
- 인공지능
- 웹
- Cross Site Scripting
- codeup
- Today
- Total
목록전체 글 (115)
Ye0ngJae
문제 수 N개가 주어졌을 때, i번째 수부터 j번째 수까지 합을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j가 주어진다. 출력 총 M개의 줄에 입력으로 주어진 i번째 수부터 j번째 수까지 합을 출력한다. 입력 예시 5 3 5 4 3 2 1 1 3 2 4 5 5 출력 예시 12 9 1 답안 더보기 코드 #include #pragma warning(disable: 4996) #define _CRT_SECURE_NO_WARNINGS int main() { int arr[100000]; int sum[100000] =..
문제 농부 존의 농장에 원형 길이 있다고 했지만, 길은 그뿐만이 아니다. 그 옆에 일자형 길이 있는데, 1번부터 N번까지의 번호가 붙은 횡단보도 N (1 ≤ N ≤ 100,000)개로 이루어져 있다. 교통사고를 방지하기 위해 존은 각 횡단보도에 신호등을 설치해 놓았다. 그러던 어느 날, 강력한 뇌우로 인해 몇몇 신호등이 망가졌다. 존은 연속한 K개의 신호등이 존재하도록 신호등을 수리하고 싶다. 이번에도 우리가 존을 도와주자. 입력 첫 줄에 N, K, B (1 ≤ B,K ≤ N)가 주어진다. 그 다음 B줄에는 고장난 신호등의 번호가 하나씩 주어진다 출력 정상적으로 작동하는 연속 K개의 신호등이 존재하려면 최소 몇 개의 신호등을 수리해야 하는지 출력한다. 입력 예시 10 6 5 2 10 1 5 9 출력 예시..
이번에 SUNSEC이라는 팀명을 달고 대회에 나가 우수상(성균관대학교총장상)을 받았다. 심사 중간에 인터넷이 끊긴다던지, 중간에 하드웨어 전원이 나간다던지 하는 여러 문제가 있었긴 했지만, 그래도 결과를 보자면 매우 좋다고 본다. 그렇게 원하던 상도 받고... 대회 중간에 AVALVE라는 스타트업에서 우리 작품에 관심이 있다고 해서 회사에 놀러 가서 여러 이야기도 나눴다. 일단 후기를 작성하기는 하지만 몇 개월 동안 조금씩 나누어 쓰는 관계로 글에 두서가 없을 수 있으니 양해바란다. 하지만 그래도 대회 초반은 많이 힘들었다. 우리 팀은 예선 탈락팀이었는데 다행히도 본선 진출 10팀 중에서 1팀이 중도포기를 하여 운이 좋게도 우리팀이 본선에 올라가게 되었다. 예선에 떨어지면서 노션 페이지를 날려버린 관계로..
문서형 악성코드 분석과 제작 개요 Layer7 프로젝트와 학교 정보보안프로젝트 소수전공 프로젝트로 진행한 프로젝트로써 실제 공격에 사용된 문서형 악성코드 분석과 분석 결과를 토대로 실제로 제작을 해 보았다. 팀소개 남영재(팀장) 이수현 프로젝트 주제 선정 동기 최근 들어 북한이 여러 문서형 악성코드를 이용한 특정 분야 전문가에 대한 공격이 급증하는 가운데 관련 피해도 증가하고 있다. 굳이 북한뿐만 아니라 Virus Total에서 제공하는 통계자료인 Virus Total File Types 통계자료를 살펴보면 다음과 같다. 통계를 살펴보면 가장 많이 보고되는 악성 파일의 Type은 exe(실행파일)이지만, 문서형 악성코 드인 PDF, DOCX, DOC 비중이 다른 파일 타입에 비교하여 그리 낮지 않으며, ..
문제 풀이 더보기 아무런 코드 없이 그냥 대뜸 입력 창만 있다. 개발자 도구를 통해 힌트 같은 것이 있는지 살펴보자. 아니나 다를까 스크립트가 삽입되어 있었다. 해당 코드를 살펴보면, ul 변수에 현재 페이지의 URL을 저장한다. 그리고 바로 아래에서 .kr까지의 문자 길이를 센 값을 저장한다. 그리고 해당 값에 30을 곱한다. 그리고 이렇게 계산된 값과 사용자의 입력 값을 비교하여 만일 서로 같을 경우 ul*(사용자 입력값)을 파라미터로 넘겨준다. 우선 첫 비교문을 만족하기 위하여 개발자 도구의 콘솔을 통하여 ul 값을 바로 계산하여 보자. 540이라고 한다. 따라서 540을 입력칸 안에 넣어주고 check를 눌러준다면, 바로 문제가 해결되는 것을 확인할 수 있다.
문제 풀이 더보기 우선 view-source 버튼을 눌러 페이지의 소스코드를 확인하여 보자. 코드는 크게 base64 인코딩을 하여 쿠키 값에 저장을 하는 부분과 쿠키 값을 base64 디코딩하여 아래 조건문을 통해 비교를 하는 부분으로 나눌 수 있다. 우선 base64 인코딩 부분을 살펴보자면, var_id와 var_pw 값을 20번정도 base64 인코딩 한 후에 특수문자들을 각각 다른 숫자로 치환하는 것을 확인할 수 있다. 이렇게 인코딩과 문자열 치환작업을 거친 var_id와 var_pw 값은 password와 user 쿠키에 저장되게 된다. 다음으로 base64 디코딩 부분을 살펴보자면 아까 문자열을 base64 인코딩 한 코드의 역순으로 다시 디코딩하는 것을 확인할 수 있다. 따라서 위 코드의 ..