일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 풀이
- Web
- BaekJoon
- hacking
- 워게임
- WHS
- 백준
- Algorithm
- c
- XSS
- 자라나는새싹
- 인프런
- C언어
- 드림핵
- 알고리즘
- CSRF
- 문제풀이
- 자라나는 새싹
- injection
- Python
- dreamhack
- 스터디
- 프로그래머스
- command
- 포렌식
- Programmers
- 웹해킹
- 디지털 포렌식
- WarGame
- 파이썬
- Today
- Total
목록전체 글 (117)
Hoin's security

가상머신은 VMware로 진행하였고 Kali Linux, Metasploitable2, Windows XP, Windows 8.1이 설치가 완료 된 상태이다. 이 모든 환경이 구축되어있다는 전제 하에 실습을 진행하겠다. Nessus는 가장 유명한 취약점 분석 툴 중 하나이다. 우리가 사용할 것은 무료 버전인 Nessus Essentials이다. Nessus Essentials 칼리 리눅스 환경에서 다운로드 한다. debian amd64 버전 파일을 다운받고 Save File을 선택하면 자동으로 Downloads 폴더에 저장된다. Nessus 설치를 시작하는데 root 계정으로 진입한 뒤, 다음과 같이 입력한다. root@kali~# cd /home/kali/Downloads root@kali:/home/..

A = int(input()) B = int(input()) C = int(input()) result = list(str(A*B*C)) for i in range(0,10): count = 0 for num in result: if i == int(num): count += 1 print(count) N, M = map(int,(input().split())) d = list(map(int, input().split())) # 카드 리스트 result = 0 Max = 0 for i in range(N-2): # 3중 for문을 돌면서 겹치지 않게 범위를 지정 for j in range(i+1,N-1): for k in range(j+1,N): if d[i]+d[j]+d[k] > M: # 3개의 값 더..
보호되어 있는 글입니다.
Exploitation 1) 용어 (1) Exploit(n) : 컴퓨터 소프트웨어나 하드웨어에 의도치 않은 행동이 발생하도록 취약점(vulnerability)를 이용하는 소프트웨어의 한 종류. 즉, 컴퓨터 시스템에의 공격을 뜻한다. → 결과적으로는 권한을 상승시켜 시스템의 제어권을 획득한다. ※ Exploit(v) : 성공적으로 공격을 수행하는 행위 (2) Payload : 맬웨어(malware)의 일종으로, exploit 과정에서 이용된다. 타겟에서의 shell을 제공 타겟 컴퓨터에 저장된 패스워드에 액세스 타겟에 있는 백도어에 액세스 등이 가능하다. 일반적으로 어셈블리어로 구성되어있고, 플랫폼에 의존적이다. ex) Windows에서 작성된 payload는 Linux에서 사용할 수 없을 수 있다. (3..

스택 2 (28278번) import sys input = sys.stdin.readline N = int(input()) stack = [] for _ in range(N): command = input().rstrip() #push if len(command) > 2: stack.append(int(command[2:])) #pop elif command == '2': if len(stack)==0: print(-1) else: print(stack.pop()) #size elif command == '3': print(len(stack)) #empty elif command == '4': print(1 if len(stack)==0 else 0) #top elif command == '5': if ..

File upload - Double extensions 위 코드는 웹 요청에서 "cmd" 매개변수를 받고 이 매개변수는 HTTP GET 요청을 통해 전달되며, 사용자가 입력한 값을 나타낸다. 받은 "cmd" 매개변수 값을 system 함수를 사용하여 실행하고 운영 체제 명령어를 실행한다. 메모장에 저 코드를 그대로 쓴 뒤 webshell.php로 저장해준다. 그러나 업로드는 위에 명시된 파일만 가능하다. 그렇다면 .png도 뒤에 붙여서 진행해본다. 업로드는 성공했고 위 경로로 들어가보면 에러가 난다. 위 URL뒤에 ?cmd=id 를 붙여 입력해준다. (cmd 값을 지정해주지 않아서 생긴 오류.) ?cmd=ls -al /challenge/web-serveur/ch20/ 명령어를 입력해 passwd를 찾는..

링크를 클릭하면 파일이 실행된다. 읽기 위해 .htaccess 파일을 업로드해서 flag.php파일의 설정을 바꿔보자. 더보기 .htaccess 파일 htaccess는 "hypertext access"의 약자이다. 아파치 같은 웹 서버에서 브라우저 같은 클라이언트에서 접근할 때 어떤 식으로 서비스를 제공할 지 결정하는 파일이다. 파일 업로드 디렉토리에 .htaccess 파일을 만들고 해당 파일에서 php 파일을 실행하지 않게 설정하면, 텍스트 파일로 인식하게 하여 소스코드를 텍스트 형태로 볼 수 있다. php_flag engine off 위와 같이 입력하고 .htaccess로 이름을 지정해준뒤 업로드 해준다. 플래그 파일을 클릭하면 위와같은 화면이 뜬다. FLAG값을 webhacking.kr의 auth ..
보호되어 있는 글입니다.
취약점 분석 : 타겟 시스템에 공격(Exploitation)을 수행하기 전 타겟 시스템의 취약점에 대한 정보를 얻어내는 과정. 취약점 분석은 스캐닝 단계이다. (1주차 글 참고.) 백도어(Backdoor) Backdoor는 Trapdoor라고도 하는데, 시스템 설계자나 관리자가 고의로 남긴 시스템의 보안 허점이다. 본래 목적은 디버깅 시 개발자에게 인증 및 셋업 시간을 단축하기 위한 채널로 사용하기 위함이지만, 비양심적인 프로그래머가 악의적으로 사용할 경우 상당히 위험할 수 있다. Metasploitable2 취약점 [Critical]Bash Remote Code Execution : 커맨드 인젝션에 취약한 Bash를 운영하는 원격 호스트이다. 시스템의 환경에 따라, 공격자는 원격으로 임의의 코드를 실행..

2164번 문제와 예제는 위와 같다. from collections import deque N = int(input()) deque = deque([i for i in range(1, N+1)]) while(len(deque) >1): deque.popleft() move_num = deque.popleft() deque.append(move_num) print(deque[0]) 보통 큐(queue)는 선입선출(FIFO) 방식으로 작동한다. 반면, 양방향 큐가 있는데 그것이 바로 데크(deque)다. deque는 시작점의 값을 넣고 빼거나, 끝 점의 값을 넣고 빼는 데 최적화된 연산 속도를 제공한다. 따라서, 대부분의 경우의 deque는 list보다 좋은 옵션이며 특히 push/pop연산이 많을 경우 l..