분류 전체보기

qsort()

qsort() C표준 라이브러리에 포함되어 있는 퀵 소트 기반 정렬 함수 void qsort(void *base, size_t num, size_t size, int (*compar)(const void *, const void *)); base : 정렬할 배열 또는 시작주소를 가리키는 포인터 num : 배열 요소 개수 size : 각 요소의 크기, ex) sizeof(int) compar : 비교 함수 포인터 #include #include int compare(const void* a, const void* b) { int int_a = *((int*)a); int int_b = *((int*)b); // 오름차순 : int_a - int_b; // 내림차순 : int_b - int_a; return..

programming/c 2023.10.01

정규 표현식

정규 표현식 패턴 '패턴' 혹은 /패턴/ 의 형태로 작성 /로 패턴을 감싸는 경우, / 뒤에 플래그를 작성할 수 있음 패턴 설명 예시 문자 혹은 문자열 해당 문자 혹은 문자열과 매치 abc -> Hello abc /ab/ -> Hello abc . 모든 문자와 매치 a.c -> Hello abc | 앞 또는 뒤 패턴과 매치 hi|ab -> Hello abc [] [] 안의 문자와 매치 [ae] -> Hello abc [^] ^ 뒤의 패턴을 제외한 나머지와 매치 [^a] -> abc ^ 어떤 문자열의 시작이 특정 패턴인 경우 매치 ^a -> Hello abc ^a -> abc Hello $ 어떤 문자열의 끝이 특정 패턴인 경우 매치 c$ -> Hello abc c$ -> abc Hello \ \ 뒤의 특수..

security/web 2023.09.27

[Webhacking.kr] old-09

문제 Challenge 9 webhacking.kr 문제풀이 index.php 페이지에 접속하면 no 파라미터로 값을 전송할 수 있다. 1 전송 시, Apple, 2 전송 시, Banana 3 전송 시, Secret이 나온다. 메인의 패스워드 입력창에 no 3 id를 입력하면 문제가 해결되는 것 같다. Blind Injection을 수행하여 no 3의 아이디를 알아낼 수 있다. select, 공백, /**/, from 등 문자열이 필터링되어 Access Denied가 출력된다. if - like을 사용하여 id 길이와 문자열을 추측할 수 있다. - LIKE 특정 문자열 패턴을 검색하는데 사용되는 연산자 데이터베이스 테이블에서 문자열의 부분 일치나 패턴 일치를 검색할 수 있다. 두가지 와일드카드 문자와 함..