2025-09-14-Sunday

오유찬·2025년 9월 15일

daily

목록 보기
29/30

Day planner


  • CTF || Wargame || Algorithm
  • 보안 공부 || K-Sheild Jr. ✅ 2025-09-14
  • IT 기사 || programming article
  • Programming || Javascript

공부 기록


KSJ

getflag - pwn

buffer size : 0xdc, read에서 입력 받는 건 0xa0

![[스크린샷 2025-09-14 오전 11.28.32.png]]

보호 기법

**NX(No eXecute)

  • stack, heap과 같은 데이터 영역을 실행 불가능으로 설정
  • 입력값을 그대로 쉘코드로 실행시키는 스택 기반 쉘코드 실행 공격 막힘
  • 우회하기 위해서는 ROP(Return Oriented Programming), JOP(Jump Oriented Programming) 같은 코드 재사용 공격이 필요하다.

**ROP(Return Oriented Programming)

**PIE(Position Independent Executable)

  • 실행될 때 프로그램의 메모리 주소가 매번 랜덤하게 바뀐다. (ASLR 효과 극대화)
  • 바이너리의 함수나 전역 변수의 주소가 고정되지 않는다.
  • 우회하기 위해서는 메모리 누출(leak)을 통해 libc나 바이너리 주소를 알아내야 한다.
  • 주소 기반 공격(ROP)을 하기 전에 주소 탈취가 필수적이다.

RELRO(Relocation Read-Only)
Relocation 정보를 어떻게 보호나는지에 따라 Partial, full로 나뉜다.

  • Partial RELRO : GOT(Global Offset Table)의 일부 보호, 아직 쓰기 가능
  • Full RELRO : GOT 전체를 읽기 전용으로 바꾼다.
    - GOT overwrite 공격(함수 포인터 변조) 불가능
    - libc 함수 후킹을 못하니까 ROP 등 다른 우회법이 필요하다.

On-Premise
기업이나 조직이 직접 소유하고 관리하는 물리적 서버

Active Host Scanning

  • ICMP Echo ping
  • ARPing
  • TCP/UDP ping

Port Scanning

  • TCP Connect Scanning : TCP 연결을 맺어서 포트의 활성화 여부를 판단하는 방법 → 3-way HandShake를 수행하기 때문에 연결 기록(로그)이 남는다.

  • SYN Stealth(Half Open) Scanning : TCP 연결을 완전히 하지 않고 포트의 활성화 여부를 판단하는 방법으로 연결 중간(핸드셰이크 2단계)에 끊어 연결 기록을 남기지 않는다.

  • NULL Scanning :TCP 헤더 내 flag 값을 설정하지 않고 전송하여 그에 대한 응답으로 활성화 여부를 판단하는 방법, 열려있으면 응답이 오지 않고 닫혀있으면 RST/ACK 응답이 온다.

  • FIN Scanning : FIN flag 설정하여 전송, 포트 열려 있을 경우 응답이 없다. 연결을 수행한 적이 없으니까 FIN flag가 와도 응답할 게 없다.

  • X-MAS Scanning : flag를 조합해서 그에 대한 응답으로 포트의 활성화 여부를 판단하는 방법이다.

  • UDP Port Scanning : ICMP Unreachable 메세지를 이용하여 UDP 포트의 활성화 여부를 판단하는 방법

Snipping(스니핑)
도청 → 탐지가 어렵다.

스위치 환경에서 스니핑(도청)을 하기 위해서는 선행 공격이 필요하다.

  • switch jamming : switch에서 관리하는 MAC 주소 테이블의 버퍼를 오버플로우 시켜서 스위치가 더미 허브(브로드캐스팅)처럼 동작하게 만드는 기법

  • ARP spoofing : 공격자가 통신 대상자인 것처럼 MAC 주소를 위조하여 데이터 패킷을 중간에서 가로채는 중간자 공격 기법

  • ARP Redirect : 공격자가 자신이 라우터인 것처럼 MAC 주소를 위조해서 데이터 패킷을 중간에서 가로채는 중간자 공격 기법

  • ICMP Redirect : ICMP 리다이렉트 메세지를 이용하여 라우팅 경로를 재설정하도록 하여 데이터 패킷을 가로채는 공격 기법

프로미스큐어스 모드(Promiscuous)

기본 모드에서는 들어온 패킷의 2계층 주소와 3계층 주소를 확인해서 자신의 것과 일치하는 것만 버퍼에 저장하도록 하고 나머지는 무시하는 필터링을 수행한다.

promiscuous mode에서는 들어오는 패킷 데이터의 모든 필터링을 해제하는 모드

Spoofing(스푸핑)

DoS(Denial of Service Attack)

  • TCP SYN Flooding : SYN 요청을 지속적으로 보내는 네트워크 계층 공격(half-open; 반개방 공격이라고 불리며, TCP 3-way handshake를 이용한 공격이다)
  • TCP Connection Flooding : TCP 세션을 이용한 공격
    - 1개의 IP가 다양한 포트로 SYN 패킷 전송
  • DNS Query Flooding
  • Slow HTTP Header DoS : slowloris 공격이라고 부른다. → /r/n 개행문자를 안 보내서 헤더가 끝이 안 나도록 하는 공격
    - 정상 패킷 : 0d0a0d0a로 끝나고
    - 공격 패킷 : od0a로 끝난다.

JS

~={cyan}React의 특징 =~

  • componenet 기반의 유연성
profile
열심히 하면 재밌다

0개의 댓글