분류 전체보기

· KnockOn
프롤로그ELITE HACKER Bootcamp 3rd 3주차 수업 공부 내용점수 처참해서;; 빡세게 공부해보자.aws 우분투 서버 하나 파서 연습배열, 배열 선언 방법 , 배열의 인덱스 참조 방법, 배열의 메모리 구조, 2차원 배열 , n차원 배열 (n > 2)   배열같은 형태의 데이터, 동일한 자료형의 데이터를 한데 묶어 연속된 메모리 공간에 저장하는 데이터 구조이다. 미리 크기를 정의하고, 인덱스를 통해서 각 요소에 접근할 수 있다.배열의 특징이 있다면 다음과 같은데 고정된 크기: 배열의 크기는 선언할 때 정해지며, 프로그램 실행 중에는 변경할 수 없다.인덱스: 배열의 인덱스는 0부터 시작한다. 첫 번째 요소는 인덱스 0에, 두 번째 요소는 인덱스 1에 위치한다.연속된 메모리: 배열 요소는 메모리상..
· bandit
프롤로그bandit 문제풀이저번 비밀번호는 FGUW5ilLVJrxX9kMYMmlN4MgbpfMiqey 이다.  문제다음 레벨로 가는 비밀번호는 data.txt 파일 안에 저장되어있는데, 그 파일은 base64 인코딩된 데이터가 포함되어있다.  base64란?바이너리 데이터를 텍스트 형식으로 인코딩하는 방법 중 하나. 주로 이진 데이터를 텍스트로 변환하거나, 아니면 네트워크 전송 및 데이터 저장을 할 때 사용된다. 왜 base64냐? 아스키 코드 중에서 [a-z], [A-Z], [0-9] , +, /까지 총 26+26+10+2= 64개, 즉 기본적인 것만 사용한다고 해서 base64라고 불린다. 그래서 base64 인코딩이라고 한다는 것은, 원래 바이너리 데이터를 Base64 형태로 변환한다는 의미이고, ..
· KnockOn
프롤로그ELITE HACKER Bootcamp 3rd 2주차 수업 공부 내용aws 우분투 서버 하나 파서 연습조건문 if, else if, else, switch/case문  조건문조건문은 프로그램의 흐름을 제어하는 데 사용된다.. 조건문은 특정 조건이 참(true)인지 거짓(false)인지에 따라 코드 블록을 실행하거나 건너뛴다. (1) if문가장 기본적인 조건문if (조건식) { // 조건식이 참일 때 실행되는 코드}이렇게 사용한다.예시를 들면#include int main(){ int score = 95; if (score >=90) { printf("A\n"); }}A가 95 이상이기 때문에 A라는 것이 출력이 된다. 그러나, A값을 90 미만으로 바꾸게 ..
· KnockOn
프롤로그ELITE HACKER Bootcamp 3rd 2주차 수업 공부 내용aws 우분투 서버 하나 파서 연습출력함수, 포멧 스트링, 이스케이프시퀀스, C언어의 입력함수, 문자열  출력 함수이전 글들을 슥 돌아보면, 결과값들을 출력하기 위해서 주로 printf를 사용하였었다. 그 외에 몇 개 더 있는데, 알아보도록 하자.(1) printf()일반적으로 문자열을 포맷팅하여 출력하는 가장 많이 사용되는 함수이다.printf("안녕");이런식으로 많이 쓰인다. (2) putchar단일문자를 출력하는 함수이다.putchar('A');이런식으로 사용한다. (3) puts문자열을 출력하고 자동으로 줄 바꿈을 한다.puts("Hello, World!");이런식으로 사용한다. 실제로 한 번 써보자.#include in..
· KnockOn
프롤로그ELITE HACKER Bootcamp 3rd 2주차 수업 공부 내용aws 우분투 서버 하나 파서 연습연산자 종류, 산술연산자, 비트연산자, 논리연산자, 증감연산자, 형변환  연산자연산자란 값이나 변수에  특정 작업을 수행하는 데 사용되는 기호를 말한다. 흔히 우리가 아는 사칙연산 +, - 이런 것들도 값 또는 변수에 "특정 작업"을 수행하기에 이 또한 포함된다.다양한 연산자가 있는데 아래 쭉 살펴보자. 산술연산자산술연산자, 사칙연산이라고 생각을 하면 된다. 우리가 아는 그 사칙연산 +-*/ 맞다.+더하기a+b-빼기a-b*곱하기a*b/나눗셈 (몫)a / b%나눗셈 (나머지) , 모듈러라고도 함a % b보면은 나눗셈이 / 도 있고 %도 있는데, 아래 코드로 확인해보자.#include int main..
· KnockOn
프롤로그aws 우분투 서버 하나 파서 연습C언어의 상수, 변수, 자료형, 오버플로우와 언더플로우, 변수 선언 방법/규칙, 주석처리 상수와 변수수학적인 개념으로 상수와 변수를 알아보자.4x-3 = 1이렇게 있을 때, -3은 변하지 않는 값, x는 변하는 값이다.x의 값은 1, 2, 3, 4, 5, ....1.1, 1.2,....pi...등 여러 개의 값들이 올 수 있고, x에 값에 따라서 해당 식이 참이 될 수도, 거짓이 될 수도 있다.이렇기에 x는 변하는 수, 즉 변수라고 한다.반면에 -3 같은 경우에, 해당 식에서 절대로 변하지 않는다. 1도 마찬가지다. 이를 상수라고 한다.그렇다면 x 앞의 4는? 저건 계수라고 하는데, 일단 상수와 변수의 값만 볼 것이니까... 이게 C언어 뿐만 아니라 다른 프로그램..
· KnockOn
프롤로그ELITE HACKER Bootcamp 3rd 2주차 수업 공부 내용aws 우분투 서버 하나 파서 연습C언어, 컴파일러, gcc  C언어란?UNIX 운영체제 개발을 위해 설계한 범용 프로그래밍 언어하드웨어와 밀접하게 작업할 수 있는 저수준 프로그래밍 부터 고수준 프로그래밍 까지 갖추고 있다. 절차적 프로그래밍 언어: C는 프로그램이 순차적으로 실행되는 절차적 구조이다. 메모리 접근 제어: C 언어는 포인터를 통해 메모리 주소로 직접 참고 -> 하드웨어에 용이컴파일러 기반 언어: C 프로그램은 소스 코드를 컴파일하여 실행 파일로 변환한 후 실행. gcc 사용포터블(이식성): 대부분의 운영체제에서 C 컴파일러를 사용하면 동일한 C 코드가 쉽게 이식되어 다른 플랫폼에서 실행 가능   컴파일러 vs 인터..
· bandit
프롤로그bandit 문제풀이저번 비밀번호는 4CKMh1JI91bUIZZPXDqGanal4xvAg0JM 이다. 문제다음 레벨로 가는 비밀번호는 data.txt 인 파일에 있다. 그리고 사람이 읽을 수 있는 문자열이고, 몇개의 = 문자 뒤에 있다.  strings바이너리 파일이나 이진 데이터 내에 포함된 사람이 읽을 수 있는 텍스트 문자열을 추출하는 데 사용된다. 일반적으로 바이너리 파일은 사람이 직접 읽기 어려운 형식으로 되어 있으므로, strings 명령어는 그 안에서 ASCII나 유니코드 문자열을 찾아 출력한다.-n  : 최소 길이 맞추기strings -n 8 program #8글자 이상 가져오기- e : 특정 인코딩 strings -e S binaryfile #UTF-16- t : 특정 오프셋  gr..
· bandit
프롤로그bandit 문제풀이저번 비밀번호는 dfwvzFQi4mU0wfNbFOe9RoWskMLg7eEcuniq, sort, | 문제다음 단계로 가는 비밀번호는 data.txt 파일에 저장되어 있는데, 딱 한 번만 발생하는 유일한 라인에 저장되어 있다(?)  sort파일의 내용을 정렬하는 데 사용된다. 기본적으로 sort는 텍스트 파일의 줄을 기준으로 정렬하며, 다양한 옵션을 사용하여 정렬 방식을 세부 조정할 수 있다.sort [옵션] [파일명]이렇게 사용할 수 있는데, 옵션을 좀 보자.-n : 숫자대로 정렬한다.sort numbers.txt #기본 정렬sort -n numbers.txt #숫자 정렬원래는 텍스트 기반 정렬이라서 숫자가 있을 시 애매해졌는데, 숫자 정렬만 할 거라면 -n 을 켜줘야한다. -r..
· bandit
프롤로그bandit 문제풀이저번 비밀번호는 morbNTDkSW6jIlUc0ymOdMaLnOlFVAaj 였다grep, sed 문제다음 레벨로 가는 비밀번호는 data.txt에 저장되어 있는데, 비밀번호는 millionth 단어 뒤에 있습니다.  grep텍스트 검색에 사용되는 명령어로, 파일이나 명령어의 출력에서 특정 패턴을 검색하고, 그 패턴이 포함된 줄을 출력한다. 정규 표현식을 사용하여 복잡한 것도 검색이 가능하다.-i : 대소문자 구분 Xgrep -i 'pattern' filename-r / -R : 하위 디렉토리 까지 검색grep -r 'pattern' /path/to/dir- l : 패턴이 포함된 파일 이름만 출력grep -l 'pattern' *- n : 해당 패턴이 포함된 줄 번호까지 출력gr..
· bandit
프롤로그bandit 문제풀이저번 비밀번호는 HWasnPhtq9AVKe0dmk45nxy20cvUa6EG 이다.find, cat, /dev/null, xargs, |  문제다음 단계로 가는 비밀번호는 서버 어딘가에 저장되어 있다. 특징은 다음과 같다.- 소유자는 bandit7- 소유그룹은 bandit6- 33바이트의 크기 findfind에 관련된 정보는 저번글에 적어놨고,2024.11.10 - [bandit] - [2024/bandit] bandit level5 -> level6 Write-up level6 Write-up" data-og-description="프롤로그bandit 문제 풀이저번 비밀번호는 4oQYVPkxZOOEOO5pTW81FB8j8lxXGUQw  문제다음 레벨로 가는 비밀번호는 inher..
· bandit
프롤로그bandit 문제 풀이저번 비밀번호는 4oQYVPkxZOOEOO5pTW81FB8j8lxXGUQw  문제다음 레벨로 가는 비밀번호는 inhere디렉터리 내부에 있는데, 이게 어딘가에 있다. 이것의 특징은- 사람이 읽을 수 있고-1033바이트 크기이고- 실행할 수 없다.  find이전에는 file로 파일이 특징을 알아봤다면, 이번에는 find로 찾아야 한다. 왜냐? inhere가 어디있는지 모르니까, 이것의 위치를 찾든 뭐든 찾아야 하지 않겠나...그래서 파일을 찾을 때에는 find 명령어를 써야하는데find [경로] [옵션] [검색 조건] [후속 작업]그래서 만약에 어딘가에 존재한다면... 경로를 / 로 설정해야한다.옵션을 살짝 보자.-name : 대소문자를 구분해서, 검색조건에 이름에 일치하는 파..
성밍쟁
'분류 전체보기' 카테고리의 글 목록 (5 Page)