TIL- ATTK

kyoungyeon·2023년 9월 4일
0

TIL

목록 보기
90/122

Status

주말공부를 시작하지?
정보보안 겸 보안 공부 진짜 더럽게 힘들다 적응이 될 때까진 어떻게 써보자...

그래도 돈 써서 공부하니 의욕뿜뿜!

dps

특징

  • 서비스 분산
  • sync flooding [Flag넣어서 붙이면 다 공격 대상이다]
  • tcp 공격 네트워크 기반
  • 특정 ip
    • 여러 ip 에서 syn request
    • 특징 : 출발지가 특정된다

예시 ) 회원 수정 page > id =kisec pw = kisec123 / cpw= 1234
 id * 을 넣어버리면 모든 계정이 바뀌어진다!

방어법?

  • 시그니처로 막기

    • ip block
  • server station

    • security device, server host, > devices
  • webserver 에서는?

    • IPS.IDs,Firewalls

추가로 알아보기
web log
syslog

ddos

특징

  • bot 공격
  • 트래픽 손상
  • 가용성침해 공격
  • 예방 불가
    • 완화가 목적, 차단불가
  • 여러 출발지
    • 좀비 pc - 하나의 pc로는 트래픽 공격 불가능하니 많이 생성.
      변조된 패킷도 ddos
  • 악성코드 요청시 flooding 공격

예시 ) hw 부팅이 안된다
/root /boot .inodes 파일 공격해서 부팅이 안되게 함

웹 해킹

  • 취약점 악성코드 숨기기

  • 악성파일 포함된 파일 업로드

  • 다운로드시 악성코드 전파 > 링크를 통해 악성코드 다운 받게 하는것.

    • 취약한링크 바이러스 전파
  • http get . post ( read, update) flooding 방식

  • web cache 정적 이고, local 에 저장 cache 메모리는? == 정적

    cpu 중심의 cache 메모리 참조

  • 임시 데이터 (주로 local storage )
    - 에이전트가 zombie pc에 악의적인 프로그램을 뿌린다.
    즉 명령받은 에이전트가 노트북이나 pc에 설치되는것임.

    mbr 공격

  • host 파일 역할 - 특정 ip 로 접속시 의도한 불법 피싱 사이트로 접속하게 할 수있다.

  • system32 / ...hosts 파일에 ip 등록, in/outbounde 룰 설정

    • 다만 dns에 질의하지, 최근 host 파일 공격은 안쓰는 추세
    • 하지만 시스템에서는 dns 보다 host에 우선순위가 있다
      질문의 우선순위가 있네..?
  • host 는 파일 내부망 사용해야 할때 특정 페이지들로만 접속할 수있게 한다

    • host 파일에 특정 ip를 넣으면 특정 url로 접속하게 할 수있다.
    • public zone 같이 인터넷이 통하는 존에서는 당연히 접속가능하고,
      private zone 과 같은 사설 ip 대역대내에서는 같은 대역대에 있어야 가능함.

C2 서버 ⭐⭐

  • (예비섭) download, 공인 ip = 여기에 악성 코드가 있다
  • 드라퍼(추가 악성 코드를 뱉어낸다) , 인터넷 안되도 상관없고 대신 용량이 크다
    • 대신 탐지도 쉽다
  • 다운로더 (다른 악성 코드 다운로드)
    • 외부에서 추가로 다운 (용량이 적다) 인터넷 되야함
  • REFLECTION : 출발지 변조 수많은 서버에 REPQUEST, 반사되는 성질?
  • DRDOS 서버에서 REFLECT 해서 다른 서버에 SYNC 공격한다
  • FLOODING: 계속 앞의 CMD를 많이 보내서 트래픽을 많이 날린다
    • FLOOD 공격자가 뻗는경우도 허다하다고 한다
    • HPING 알아보기 (option) --rand-source
      cmd : hping 3

    번외

    	DOS - DOS 유형 공격은 다 DOS로 통한다
  • 와이어샤크 패킷캡처 실습
    • port not 5904

icmp

  • 와이어샤크와의 관계

Iptables

iptables 방화벽

  • iptables - L
    • icmp 를 차단 (iptables -F)
    • default 룰 == 모두 허용 하는 상태
  • 하나씩 차단한다 - 블랙리스트 방식 all allow 방식
  • 모두 거절, 하나씩 허용한다 all deny 방식
  • all drop 룰 추가 후 하나씩 추가한다
iptables -A INPUT -j DROP
iptables -A INPUT -s 1.1.1.1 -p ssh -j ACCEPT

주의 : all drop 해버리면 접속도 block 이 되어버림.!

  • 패킷을 버리려면 ?
    iptables -A INPUT -p icmp -j DROP
    // append 붙인다 인바운드에
    // icmp 프로토콜
    // DROP 하게

  • 패킷 캡처 on off에 따라.. off 를 해야 잡히는게 보인다
    icmp 가 나한테 올때 버린다
    hping3
    iptables -F
    모든룰 다 삭제
    hping3

sync flood 공격!

원천 방화벽에서 차단 - 패킷을 차단할때 좀더 안정적이다
host 방화벽으로 iptables로 차단 패킷을 버린다고요?
 임계값 로그인 실패시 값을 설정하는것 - ex 5, 로그인실패 5회 이상시 잠금...
임계치 - 갯수도 정할 수 있음

랜덤 소스일경우 ip 가 난수라서 계속 바뀌는데 first syn drop으로 인해 공격을 막을 수 있음
정상 고객이 syn을 보낼때 세션에서 재전송을 보낼것이기 때문에 first drop을 써버리면 어느정도
악성 ip 공격을 막을 수 있따
비정상 ack 를 막는다

udp 스캔

  • 닫혀있으면 unreachable 전달 > 이걸 악용한다 port가 닫혀있으니 응답을 flooding 해서 대상 pc가 뻗는다.
  • 즉 열려있으면 그냥 흘러간다.,
    PPS (packet per seconds )
    - tcp 플래그 아니면 된다
    - syn, synack ack + flooding 공격 응용가능!
    - pps - tcp flag만 알고있으면 됌
    - rps - http 에 대한 crud 응답
    - bps : 초당 비트수 인터넷 파이프 막음

추가로 평소 보안성 높이려면?

  • 크롬 시크릿 모드 = 보안을 위해 쓴다.
  • 캐시 가 local 저장되어버리다보니까!
  • 악성코드 유형이 정말 많은데, 대부분이 트로이목마 (정상적인척 하는 파일들)
    - 트로이 목마 + 웜
    - 트로이 목마 + 랜섬

처음듣는데요? 기타 공격

  • SLOW- RATE 공격
    SLOWLORIS, SOCKSTRESS, RUDY 등 낮고 느리, 트래픽이 확늘지 않다보니 취약점 분석,
    공격기법 파악후 특정 시그니처로 다 차단되는 상황

  • RUDY
    Content-length
    http req -> body 에 담을때
    끊어지지 않게 연결한다

  • slowris
    웹에만 영향 웹에 접근을 막음
    get
    불완전 전송:
    헤더가 유지되게 하는 것임.

  • CC 공격 🌟🌟
    제일 흔한 공격
    내부망에서 공격

  • LAND Attk
    출발지= 도착지 ‬ip = target ip 본인한테 계쏙 req, res
    시그니쳐 = 비정상 패턴 잡아냄
    254 개 >
    브로드캐스트 (255) 로 보냄
    smurf 공격 (내부망) - dr dos 와 유사(외부)

  • ping of DEATH
    Dos 의 한 종류
    시그니처화 되어서 이미 잘 잡힘
    ICMP 차단이 핵심

특정 취약점

  • wordpress DOS 웹사이트 취약점 중 어떤 플러그인을 활용하면 될까?

Conent header 를 크게하며- 세션을 끊지 못하게 함
python slowris.py 10.200.2.18 -p 80 -s 1000

헤더 패킷 meta data가 담겨져있다
0d 0d 가 포함되어있어야 한다
netstat- nat 로 확인해볼수있따
0d 0a 가 2개가 있다
특정 시그니처 코드를 보고 차단한다
http 에서 0d 0a 가 아니면 아예 차단
시스템에선 원래 처리가 어렵기 때문에 앞단 장치에서 막아야 한다

wireshark 내 ping 잘 찾아 보기!

  • centOS httpd 실행해보기
    systemctl enable httpd

Mission: 중간자 공격 해보기! (세션 탈취)

hint : centOS 2개 서버 실행 서로 소켓 통신하고 있어야 함.
nc -l 7777 ( 7777 통신)

  • nc -l [타겟 ip] port

hint: kali linux 에서 끊는다고?

  • nc ip주소 7777

  • nc 로 17 <-> 18 접속상태 (cent OS) 유지

  • kali linux로 연결 끊기

hint : 중간자가 되어야 함

  • rst 패킷 (강제 종료) 설정 방법은?
  • 신뢰 얻기위해서는 seq 넘버 필요 (tcp) , 숫자는?
  • hping3 ?

hint : arp 스푸핑 + 중간자

  • acknowledge number 받은것을 sequence 넘버로 넘겨줘야 linux가 원래 통신하던 서버인줄 속아준다?


어려웠던 점

  • 중간 소켓 공격을 할때, arp 스푸핑 공격 또한 진행되고 있어야함
    - 즉 각 arp 통신을 끊으면 안됌
    $ arpspoof  -i 인터페이스  -t [타겟 서버 ip]  [source 서버 ip]
    $ arpspoof  -i 인터페이스  -t  [source 서버 ip][타겟 서버 ip]  
  • hping3 공격 때 시퀀스 넘버가 뭔지 모르겠다.
$ hping3 -R -s [시퀀스번호] -p 서버포트 -a [origin 서버 ip] [타케팅서버ip]

1) 일단, sequnece Number가 계속 헷갈림
Transmission Control Protocol Port7777 ... > sequence number에는 2가지 종류가 있다

  • relative number와 raw number중에 아무리 봐도 relative는 상대 숫자라 변화가 계속되는데

    • raw- number은 규칙성이 보여서 고민을 좀 했다
      • 알고보니 raw number는 tcp 통신중 null(0 ) 포함 string 총 길이를 더하는 개념이였음
    • raw -number를 참조하되, 어떤 서버를 속일지에 따라 ack number(rawnumber) 기준으로 넣어줘야 kali linux가 중간자로 위조하여 서버간에 통신을 끊을수 있음
  • reset 패킷을 보내야 하는데 옵션을 모르겠다
    hping3 --help 참고

  • WireShark 사용법이 헷갈렸다

    • 파일 복구 방법
      filter (ftp) + 우클릭 (follow) + + tcp stream ) + show data as ( Raw로변환) + 바탕화면 저장하면 됀다

    • 공격자의 c2 서버 ip를 확인하는 방법?
      ?.. 이건 알아보기
      ( 출발지 ip , 도착지 ip )

    • PK : 윈도우 압축파일 시그니처 (타입 고유값)

    • MZ : 윈도우 실행파일 시그니처 (타입 고유값)

    • bash +=i : 이건 리버스 쉘 명령어

    • 패킷중 만약 네트워크 기록이 담긴 raw 데이터가 있으면 원상복구 가능하다

profile
🏠TECH & GOSSIP

0개의 댓글