일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 구조적 설계
- status diagram
- sofrware architeture
- prototypepattern 예시 example
- 클래스 관계
- usecase description
- gof design pattern
- nc reverse shell
- 팬인과 팬아웃
- telnet
- strucuture charat
- base64
- 객체 상속 속성 인스턴스 메소드 오퍼레이션
- madia designer ui design
- factory metohd pattern
- cron
- 암표거래
- 매크로를 바라보는 시각
- 디자인패턴
- 모듈구조도
- 소프트웨어공학 디자인패턴
- Bandit
- 리버스쉘
- bandit21
- 생성패턴 행위패턴 구조패턴
- ssh
- UseCase
- ui 디자인 기본원칙
- 상태다이어그램
- fan-in fan-out
- Today
- Total
목록HACKING/Bandit+ (36)
2.log
NAS(Network Attached Storage) 서버플랫폼에서 스토리지를 분리해 다중 네트워크 환경에서 산업표준 프로토콜(NFS, CIFS, HTTP 등)을 사용해 별도의 파일 서비스 기능만을 전담하는 네트워크상의 저장장치로, 타 기종간 데이터 공유가 가능함 스토리지 통합 및 작동구조 각 시스템별로 별도로 구성/운영하던 스토리지를 NAS로 통합하고, LAN을 통해 NAS를 스토리지로 이용 NAS는 네트워크에 직접 연결되며 스토리지가 서버처럼 작용함 스토리지 자체에 프로세서, OS, I/O, 프로토콜 이 존재함 서버에서 직접 NAS에 있는 원격 파일 시스템에 파일 I/O를 요청 요청은 IP 네트워크를 통해 전달되고 NAS 헤드에서 파일 I/O 가 블록 I/O로 변환되어 스토리지에 저장 or 읽어옴 이..
Telnet 원격지의 컴퓨터를 네트워크를 통해 접속하여 자신의 컴퓨터처럼 사용할 수 있는 원격 접속 서비스 (TCP 포트 23번) 통신 시 데이터가 암호화 되지 않음 (wireshark 등 패킷분석 프로그램에서 평문/plain-text 그대로 노출됨) 내부 네트워크에서 사용하는게 적합(디버깅, test 용도 등) #명령어 $ telnet [host-ip] [port번호] SSH Telnet 응용프로그램으로 DES, RSA 등 암호화 기법이 적용된 안전한 통신 가능 (TCP 포트 22번) #명령어 $ ssh [host-ip] [port번호] 공통점 원격으로 PC에 접속하기 위해 사용 차이점 통신시 telnet은 byte stream 형식으로 데이터를 주고받으나, ssh 는 암호화 하여 처리함
* 대칭키 사용의 한계 1. 대칭키 분배 문제 어떻게 상대에게 키를 비밀리에 전달하는가 2. 대칭키 수에 대한 문제 사용자가 n 명이라면, 각 사용자는 n-1 개의 키가 필요, 총 n(n+1)/2개의 키가 필요하게 됨 3. 사용자간 부인 방지 불가 한 사용자가 대칭키 사용을 부인하는 것을 방지할 수 없음 공개키(비대칭키) 각 사용자는 공개키(public key, K+)와 개인키(private key, K-)두 종류의 키를 생성 공개키는 누구나 알 수 있으나 개인키는 비밀로 함 활용 1. 암호화 Alice(송신자)는 메시지 암호화 시 Bob의 공개키로 암호화 함 Bob(수신자)은 Alice가 보낸 암호문을 복호화 할 때 자신의 개인키로 복호화 함 2. 전자서명 Alice는 자신의 개인키로 암호화 함 Bob..
tar? Tape ARchiver의 약자로 정확히는 압축방식이라기 보다 일종의 묶음 형태임 리눅스 및 유닉스에서 가장 많이 사용되는 형태로, tar 로 묶이기 전 파일들의 속성과 디렉토리 구조 등을 모두 보존 할 수 있고 압축 및 해제 작업을 거칠 때 파일의 변경/소실 염려가 없어 소스 배포 파일 만드는 용도로 자주 사용됨 tar 압축 $ tar [옵션] [파일명.tar] [대상폴더명] [ex] 현재 위치의 project 폴더를 pj.tar 로 묶기 $ tar -cvf pj.tar project tar 압축해제 $ tar [옵션] [파일명.tar] [ex] 현재 위치의 pj.tar 압축 해제 $ tar -xvf pj.tar 자주 사용되는 tar 옵션 -f 대상 tar 아카이브 지정 -c 파일 압축 (ta..
Hex dump? 램 또는 파일이나 저장장치에 있는 컴퓨터 데이터를 16진수로 표시한 것으로 주로 디버깅이나 리버스 엔지니어링 할 때 사용됨 (프로그램 동작 방식이 궁금하거나 코드를 리버스 엔지니어링 하는 소스코드나 소프트웨어가 없을 때 이 값을 보고 무슨 일이 일어나고 있는지 시험 가능) 16진수 (Hexadecimal, Hex) 자릿수 하나가 0-15 (2^4) 까지 표현할 수 있으며 10-15 까지는 A-F 로마자로 표현함 특히 컴퓨터에서는 자릿수 2개를 사용하면 2^8 을 표현할 수 있고, 이는 곧 1byte를 나타내기에 축약하기 좋은 표현법임 숫자 뒤어 (16) 이라는 기호를 붙이거나 아래 첨자로 16 or hex 라고 기재하는 방식 사용 접두어 0x를 붙여 0x10처럼 표기하기도 함 (프로그래..
ROT13 영어 알파멧을 13글자씩 밀어내는 방식으로 문자들을 치환하는 방법 단점 암호학적 관점에서 보면 별도의 키 값이 없는 방법이라 ROT13을 사용했다는 사실만 알면 누구나 메시지를 복호화 할 수 있고 이를 모르더라도 빈도분석 등의 방법으로 간단히 복호화가 가능해 기밀성 전혀 보장 하지 못함 tr 명령어 지정한 문자를 다른 문자로 변환 or 삭제하는 명령어 사용법 $ tr [옵션] [문자열1] [문자열2] 옵션 -d 문자열1 에서 지정한 문자 삭제함 -s 문자열2 에서 반복되는 문자 삭제함 -t 문자열1 을 문자열2 의 길이로 자름 사용예시 소문자를 대문자로 변경 소문자 대문자 문자열 rotate3 (A->D, B->E, .. , b->e, z->c) 숫자제거 반복되는 공백문자 제거 문자열 잘라서 ..
인코딩? 데이터 표준화, 처리 속도 향상, 공간 절약, 보안 등의 이유로 사람이 인지할 수 있는 문자(언어)를 약속된 규칙에 따라 컴퓨터가 이해하는 언어(0 과 1)로 바꾸는 것, 크게 1) 문자 인코딩 2) 사진&오디오&비디오 인코딩으로 나뉨 문자인코딩(Character Encoding) 문자를 바이트(bytes)로 변환 (컴퓨터는 오직 binary data 만 이해하기 때문) 1. HTML Encoding HTML 페이지를 올바르게 나타내기 위해 사용되는 인코딩 종류 (UTF-8 등) 2. URL Encoding 인터넷을 통해 전송될 수 있는 포맷으로 문자를 변환시키는 인코딩 방식으로, ASCII character-set을 사용해 인터넷으로 URL 보내는데 사용 됨 (ex. URLEncode() ) ..
sort 사용자가 지정한 파일의 내용을 정렬 or 정렬된 파일 내용을 병합할 때 사용 사용법 $ sort [option] [저장할 파일명] 정렬할 파일명 [병합할 파일명] 옵션 옵션 설명 -n 라인의 각 필드를 비교하는 대상을 숫자로 한정 -f 영어 정렬 시 대소문자 구분 x -r 역순으로 출력 -b 앞에 붙는 공백 무시 -t 필드 구분자 지정 -m 정렬된 파일을 병합 -u 정렬 후 중복행 제거 -o 저장할 파일명을 명시, 명시하지 않을 경우 화면에 출력 uinq 중복된 내용의 행이 연속으로 있으면 하나만 남기고 삭제하기에 전체적으로 분산된 중복은 찾아내지 못함 따라서 데이터를 정렬해 순차적으로 만든 뒤 적용하여 주로 sort 와 함께 사용됨 사용법 $ uniq [option] [파일명] 옵션 옵션 설명..
grep이란? 특정 문자열을 파일에서 찾아주는 명령어 사용법 $ grep [옵션] [정규표현식] [대상파일] grep 종류 명령어 설명 정규표현식 사용 grep 다중 패턴 검색 o egrep 정규표현식 패턴으로 검색 o fgrep 문자열 패터으로 검색 x > egrep, fgrep은 각각 grep 의 -E, -F 옵션 사용 결과와 같음 자주 사용하는 grep 옵션 옵션 동작설명 -b 검색 결과의 각 행 앞에 검색된 위치의 블록 번호 표시 / 검색 내용이 디스크 어느 곳에 위치했는지 알아낼 때 유용 -c 일치하는 행의 수 출력 -h 파일 이름 출력하지 않음 -i 대소문자 구분하지 않음 -I (대문자 i) 대소문자 구분 -l (소문자 L) 패턴이 포함된 파일의 이름만 출력 -n 패턴이 포함된 행 번호 함께 ..
파일설명자 0 : 표준입력 1 : 표준 출력 2 : 표준 오류(진단) 출력 /dev/null 파일 항상 비어있으며, 이곳으로 전송된 데이터는 모두 버려짐 특정 명령어 실행 후 필요 없는 출력은 이곳으로 출력을 지정하는 것이 좋음 아래 예시처럼 표준 입력과 표준 오류 출력 방향을 각각 지정하여 다른 파일로 저장할 수도 있음 $ echo HellWorld 1> ok.txt 2> fail.txt 출처 https://minsone.github.io/shell/shell-dev-null