1. 정보보호의 목표

기밀성 (Confidentiality)

인가된 사람, 인가된 프로세스, 인가된 시스템만이 알 필요성에 근거하여 시스템에 접근해야 한다는 원칙

무결성 (Integrity)

정보의 내용이 불법적으로 생성·변경·삭제되지 않도록 보호되어야 하는 성질

가용성 (Availability)

정당한 사용자가 필요할 때 지체 없이 원하는 데이터 또는 자원에 접근하여 사용할 수 있는 성질

인증성 (Authentication)

임의 정보에 접근할 수 있는 객체의 자격이나 내용을 검증하는 데 사용되는 성질

책임추적성 (Accountability)

개체의 행동을 유일하게 추적해서 찾아낼 수 있어야 한다는 보안 목표

부인방지 (Non-repudiation)

행위나 이벤트의 발생을 증명하여 나중에 해당 행위를 부인할 수 없도록 하는 것


2. 정보보호 대책

구분 설명
기술적 대책 정보 시스템, 통신망, 정보를 보호하기 위한 가장 기본적인 대책
물리적 대책 화재·지진·태풍 등 자연재해로부터 정보처리시설을 보호하기 위한 대책
관리적 대책 법·제도·규정·교육을 확립하고 보안계획 수립, 위험분석 및 보안감사를 통해 안전성과 신뢰성을 확보하는 대책

3. 소극적 공격 vs 적극적 공격

소극적 공격 (Passive Attack)

시스템으로부터 정보를 획득하거나 사용하려는 시도로, 시스템 자원에는 영향을 끼치지 않는 공격 형태

위협 대상: 기밀성

  • 스누핑(Snooping): 네트워크상에서 남의 정보를 염탐하여 불법으로 가로채는 행위 (스니핑과 유사어)
  • 트래픽 분석: 암호화된 메시지를 도청하여 내용은 파악할 수 없지만, 송·수신자 신원 정보 및 메시지 존재 자체에 대한 정보 획득 가능

적극적 공격 (Active Attack)

시스템 자원을 변경하거나 시스템 작동에 영향을 끼치는 공격 형태

위협 대상: 무결성 (변조, 가장, 재전송, 부인) / 가용성 (DoS)


4. 시점별 통제

[위협 발생 전] → 예방통제 → [위협 발생 중] → 탐지통제 → [위협 발생 후] → 교정통제
구분 설명
예방통제 사전에 위협과 취약점을 대처하는 통제
탐지통제 위협을 탐지하는 통제
교정통제 탐지된 위협·취약점에 대처하거나 위협·취약점을 감소시키는 통제

'Study' 카테고리의 다른 글

기본 로그인으로 고정 시키는 방법 (Ubuntu 22.04)  (0) 2024.11.21
[PWN] gcc 옵션 보호 기법  (0) 2023.11.22
[C언어] Pointer  (3) 2023.10.22
[Linux] UPDATE & UPGRADE 명령어  (0) 2023.10.07
[1주차]  (2) 2023.09.06

개인정보 불법유통  대응 대학생 모니터링단이란?

 

신청계기?

개인정보에 대한 관심 + 25년도 여름방학 대외활동으로 해보면 재밌을 거 같아서 신청함 

 

합격 후 활동?

오프라인 활동은 발대식, 해단식, 기업탐방

해당 모니터링단은 온라인 활동 위주로  글 작성과  개인정보 유통되는 게시글 탐지 및 정리 제출  

이렇게 크게 2가지 업무를 수행한 거로 기억함 

 

수료를 하기 위해서 조건도 있었는데  매달  나오는 주제에 맞춰서 보고서 작성 및 제출, 온라인 개인정보 불법유통 게시글 탐지였던 거 같음 (기억나는 건 이 정도)

 

게시글을 탐지하기 위해  특정 키워드를 넣고  코드를 만들어서 돌렸음 

생각보다 db 판매, 학력 위조, 성적 위조 글도 많이 나와서 놀랐음 

 

그래서 수료...?

오프라인 활동을 잘 못해서 아쉬운 점이 있지만, 다행히 수료는 함! 

 

 

[MISC] dobby is free

문제 설명

Dobby는 자유를 얻었다!

어디있니??

?? : 난 학교에 잇어..

 

 

 

문제 풀이

1. dobby the sea turtle, dobby tutle를 구글에 검색 후 conserveturtles.org 사이트에 접속한다.

2. 사이트 접속 후 Turtle Tracker 누르고 - 프로젝트 진행 중인 바다 거북이들을 볼 수 있다. (그 중 Dobby가 있다)

  기관 사이트는 Dobby를 위치 추적을 해주고 있어서 문제 풀기 가능 (2023 문제 당시 기준)

Dobby.zip
0.14MB

 

'Study > Write-up' 카테고리의 다른 글

2024 YISF Reversing Write-Up  (0) 2024.11.21
[Rev] abex'crackeme3 Write-up  (0) 2023.10.12
[Write-UP] CRYPTO/Buckeye CTF - Rivest-Shamir-Adleman  (0) 2023.10.05

이번에 환경을 다시 구성을 하면서 다 지우고 다시 설정을 했는데 root로 계속 로그인이 되었다.

사용자 계정으로 로그인을 하고 싶어서 찾아보니깐  su - (사용자계정) 명령어를 실행하면 된다.

 

하지만 매번 로그인 하는 것도 귀찮아서 검색을 해보니

powershell 또는 cmd에서 명령어를 치면 된다고 한다.

 

기본 ubuntu

ubuntu config --default-user

 

Ubuntu 22.04

ubuntu2024 confing --default-user

 

내가 원하는 계정이 기본 로그인 계정이 변경할 수 있다.

 

 

 

출처:

https://velog.io/@superscman/ubuntu-기본-로그인-계정-변경

https://askubuntu.com/questions/816732/how-to-change-default-user-in-wsl-ubuntu-bash-on-windows-10

'Study' 카테고리의 다른 글

정보보호 핵심 개념 정리  (0) 2026.03.12
[PWN] gcc 옵션 보호 기법  (0) 2023.11.22
[C언어] Pointer  (3) 2023.10.22
[Linux] UPDATE & UPGRADE 명령어  (0) 2023.10.07
[1주차]  (2) 2023.09.06

[Reversing] baby magic square

 

문제 설명
4x4 마방진을 구성하되, 특정 조건을 만족해야 플래그가 출력되는 리버싱 문제입니다.
조건을 만족하면 내부에 숨겨진 암호화 데이터를 복호화하여 플래그를 획득할 수 있습니다.

[위키피디아에서 가지고 온 사진]

 

 

 

 문제 요약

  • 사용자 입력으로 4x4 마방진을 구성
  • 특정 숫자만 입력 가능하며, 중복 불가
  • 행, 열, 대각선의 합이 같아야 함
  • 일부 셀의 합은 특정 값을 만족해야 함
  • 조건 만족 시 XOR → TEA 복호화 과정을 통해 flag 출력

풀이 요약

  1. 프로그램은 사용자의 숫자 입력을 받아 4x4 배열에 저장합니다.
  2. 모든 입력값은 특정 조건을 만족해야 하며, 아래의 규칙이 적용됩니다.
  3. 입력된 2차원 배열이 마방진 조건(가로, 세로, 대각선 합 일치)을 만족해야 함.
  4. 일부 위치 (square[2][1] + square[2][2] == 76) 및 중앙부 합 등도 추가 조건으로 존재.
  5. 조건이 모두 만족되면 암호화된 데이터에 XOR을 적용한 후, TEA 복호화를 통해 플래그가 출력.

조건 분석

bool check_conditions(int num, int input_numbers[], int count)

 

  • 숫자의 일/십의 자리에 1, 2, 5, 8 중 하나가 있어야 하며
  • 숫자의 역순(예: 21 → 12)이 이전에 등장한 숫자여야 함

마방진 조건

bool check_magic_square(int square[4][4])

 

  • 가로/세로/대각선 합 동일
  • sum == 167 조건 만족 필요
  • 중앙 4개 원소의 합 = square[1][1] + square[1][2] + square[2][1] + square[2][2]
  • square[2][1] + square[2][2] == 76 도 추가 조건

복호화 흐름 요약

 

  • 입력값과 비교되는 정답은 암호화된 상태로 코드에 하드코딩됨
  • XOR 키는 마방진에서 특정 위치 값을 기반으로 함
  • XOR된 값을 TEA 알고리즘을 통해 복호화
  • 복호화된 값이 플래그 문자열로 출력됨

 

nomal.zip
0.01MB

'Study > Write-up' 카테고리의 다른 글

2023 YISF 예선 MISC Write-up  (0) 2025.07.24
[Rev] abex'crackeme3 Write-up  (0) 2023.10.12
[Write-UP] CRYPTO/Buckeye CTF - Rivest-Shamir-Adleman  (0) 2023.10.05
  • 변수
    • 프로그램 실행 중에 값을 임시 저장하기 위한 공간
    • 변수 값은 프로그램 수행 중 변경될 수 있음

 

  • 변수 선언
    • 데이터 타입에서 정한 크기의 메모리 할당
int r;
double weight = 70.65;
char c1, c2, c3 = 'c';

 

'Study > JAVA' 카테고리의 다른 글

[JAVA] 문자열  (0) 2023.12.04
[JAVA] 데이터 타입  (0) 2023.12.04
[JAVA] 식별자  (0) 2023.12.02
[JAVA] 화면 출력  (0) 2023.12.02
[JAVA] JAVA 변수 선언  (0) 2023.12.01

문자열은 기본 타입이 아님

String 클래스로 문자열 표현

문자열 리터럴 = "JDK", "한글", "계속하세요"

 

문자열이 섞인 + 연산 -> 문자열 연결

public class test {

	public static void main(String[]args){
    	String toolname = "JDK";
        String tooladd;
        
        tooladd = toolname + 1.8;
        System.out.println(tooladd+"이 출시됨");
        //"JDK1.8이 출시됨"이 출력이 됨
        }
}

'Study > JAVA' 카테고리의 다른 글

[JAVA] 변수와 선언  (1) 2023.12.05
[JAVA] 데이터 타입  (0) 2023.12.04
[JAVA] 식별자  (0) 2023.12.02
[JAVA] 화면 출력  (0) 2023.12.02
[JAVA] JAVA 변수 선언  (0) 2023.12.01

자바의 데이터 타입

 

  • 기본 타입: 8개
    • boolean
    • char
    • byte
    • short
    • int
    • long
    • float
    • double

 

  • 레퍼런스 타입: 1개이며 용도는 다음 3가지임
    • 클래스에 대한 레퍼런스
    • 인터페이스에 대한 레퍼런스
    • 배열에 대한 레퍼런스

'Study > JAVA' 카테고리의 다른 글

[JAVA] 변수와 선언  (1) 2023.12.05
[JAVA] 문자열  (0) 2023.12.04
[JAVA] 식별자  (0) 2023.12.02
[JAVA] 화면 출력  (0) 2023.12.02
[JAVA] JAVA 변수 선언  (0) 2023.12.01
  • 식별자란?
    • 클레스, 변수, 상수, 메소드 등에 붙이는 이름
  • 식별자의 원칙
    • '@', '#','!' 와 같은 특수 문자, 공백 또는 탭을 식별자로 사용할 수 없음
    • '_', '$'는 사용 가능
    • 유니코드 문자 사용 가능
    • 한글 사용 가능, 비추천
    • 자바 언어의 키워드는 식별자로 사용불가
    • '_', '$'를 식별자 첫 번째 문자로 사용할 수 있으나 일반적으로 잘 사용하지 않음
    • 불린 리터럴과 널 리터럴은 식별자로 사용불가
    • 길이 제한 없음
  • 대소문자 구분

 

'Study > JAVA' 카테고리의 다른 글

[JAVA] 문자열  (0) 2023.12.04
[JAVA] 데이터 타입  (0) 2023.12.04
[JAVA] 화면 출력  (0) 2023.12.02
[JAVA] JAVA 변수 선언  (0) 2023.12.01
[JAVA] 메소드  (0) 2023.11.30

표준 풀력 스트림에 메시지 출력

System.out.println("Hello"); // "Hello" 문구가 화면에 출력

표준 출력 스트림 System.out의 pritnln() 메소드 호출

println()은 여러 타입의 데이터 출력 가능

println()은 출력 후 다음 행으로 커서 이동

'Study > JAVA' 카테고리의 다른 글

[JAVA] 데이터 타입  (0) 2023.12.04
[JAVA] 식별자  (0) 2023.12.02
[JAVA] JAVA 변수 선언  (0) 2023.12.01
[JAVA] 메소드  (0) 2023.11.30
[JAVA] main() 메소드  (0) 2023.11.29

+ Recent posts