해킹 177

[112] IT 비전공자 [dreamhack][CodeEngn] Malware L06문제 풀기

Thread Mutex란?Thread Mutex(Mutual Exclusion, 상호 배제)는 멀티스레드 프로그래밍에서 공유 자원의 동시 접근 문제를 해결하기 위한 동기화 메커니즘입니다.왜 Mutex가 필요한가?멀티스레드 환경에서는 여러 스레드가 동시에 실행되며, 공유 자원(예: 메모리, 파일, 데이터베이스 등)에 접근하는 경우 데이터가 손상될 수 있습니다. 이를 **Race Condition(경쟁 상태)**라고 합니다.Mutex는 공유 자원에 대한 접근을 하나의 스레드로 제한하여 이러한 문제를 방지합니다.Mutex의 작동 방식잠금(Lock):스레드가 공유 자원에 접근하기 전에 Mutex를 잠급니다.다른 스레드들은 Mutex가 해제될 때까지 대기해야 합니다.해제(Unlock):작업이 완료되면 Mutex를..

[111] IT 비전공자 [dreamhack]Easy Assembly문제 풀기

이 어셈블리 코드는 비밀번호 검증 루틴(check_password)을 나타내며, 두 개의 문자열(혹은 데이터 배열)을 비교하여 특정 조건을 만족하는지 확인하는 로직입니다. 아래에서 명령어 별로 분석하고 이 코드가 하는 작업을 설명하겠습니다.코드 분석초기 상태esi: 입력된 데이터(비밀번호)의 시작 주소.edi: 기준 데이터(예: 올바른 비밀번호)의 시작 주소.eax: 비교할 데이터의 길이.ecx: 결과를 저장하는 레지스터 (모든 연산의 결과를 통합).코드 명령어 해석xor edx, edxedx 레지스터를 0으로 초기화.목적: 이후 연산에 사용할 준비.mov dl, [esi]**esi**가 가리키는 입력 데이터의 바이트를 **dl**로 복사.**esi**는 입력 데이터의 현재 위치를 나타냄.xor dl, ..

[109] IT 비전공자 [dreamhack]mmapped문제 풀기

mmap은 메모리 매핑(Memory Mapping)을 수행하는 시스템 호출로, 파일이나 디바이스의 내용을 가상 메모리에 매핑하여 접근할 수 있도록 해주는 강력한 기능입니다. 이를 통해 파일 데이터를 메모리처럼 사용할 수 있습니다.mmap의 기본 개념메모리 매핑:디스크 파일의 내용을 가상 메모리 공간에 직접 매핑.파일 데이터를 읽거나 쓸 때 별도의 I/O 작업 없이 메모리를 통해 바로 접근 가능.효율성:파일 데이터를 메모리에 로드하고, 메모리 내에서 처리할 수 있으므로 속도가 빠름.대규모 파일 처리 시 유용.mmap의 동작 원리파일을 열고 메모리에 매핑:mmap 호출을 통해, 지정된 파일 디스크립터가 가상 메모리 주소로 매핑됨.이후 이 메모리 주소를 사용하여 파일 내용을 읽거나 변경 가능.페이지 단위 작업..

[108] IT 비전공자 [dreamhack]darimchal_001문제 풀기

소스코드다#include #include #include #define JOKER "\x40\x53\x06\x03\x43\x52\x54\x3b"#define KEY "023661dd4\0"#define TRUE 1#define FALSE 0#define OK 0#define ERRO -1void __print_sw_title (char *sw_name);int __is_valid_pwd (char *pwd);char *__obfuscation (char *pwd, char *key);void __create_tag (char *id);int main (int argc, char *argv[]) { if (argc != 2) { __print_sw_title(argv[0]); ret..

KERIS, AI디지털교과서 개발 참여 교직원 950여명 개인정보 유출

https://www.boannews.com/media/view.asp?idx=135314 KERIS, AI디지털교과서 개발 참여 교직원 950여명 개인정보 유출유치원부터 초·중·고 대학 전 교육기관의 교육 및 학술연구분야의 정보화사업을 추진하는 한국교육학술정보원(이하 KERIS)에서 AI디지털교과서 수업설계안 개발 과정에 참여한 교원들의 개인정www.boannews.com KERIS는 “엑셀파일은 개인정보 보호를 위해 암호를 설정했으며, 선생님들은 수신 문자의 그룹 코드를 입력해 본인의 피드백 그룹 정보만 확인하도록 설계됐다”고 말했다. 하지만 여기에 문제가 있었던 것. KERIS는 “구글 드라이브에서 구글 스프레드 시트를 통해 열람 또는 다운로드할 경우 암호 설정이 해제되는 현상이 발생해 수업설계안 ..

News 2024.12.26

[108] IT 비전공자 [dreamhack]cpp_string문제 풀기

이 정보는 Ubuntu 16.04 LTS 환경에서 실행 중인 바이너리의 보안 설정과 특성을 나타냅니다. 각 항목을 분석하여 해당 바이너리의 보안 강점을 설명하겠습니다.분석1. RELRO (Relocation Read-Only)상태: Full RELRO설명: Global Offset Table(GOT)의 엔트리들을 읽기 전용으로 설정합니다.보안 이점:GOT overwrite 공격(동적 함수 호출 시 악의적인 주소로 리다이렉트)이 불가능합니다.공격 가능성:Full RELRO에서는 GOT 공격을 수행할 수 없으므로, 이 부분은 안전합니다.2. Stack Canary상태: Canary found설명: 함수 호출 시 반환 주소 바로 앞에 **스택 카나리(Stack Canary)**를 삽입하여, 스택 오버플로우로 ..