삽질은 나의 힘 | 'Packet Analysis' 카테고리의 글 목록
삽질은 나의 힘 위치로그  |  태그  |  미디어로그  |  방명록
icon Packet Analysis 에 해당하는 글3 개
2009.03.13   DoS( SYN Flood ) && ECN, CWR flags
2009.03.11   Port Scanning && Snort Rules(ICMP)
2009.03.11   sftp packet analysis


icon DoS( SYN Flood ) && ECN, CWR flags
Packet Analysis | 2009. 3. 13. 01:19
================================================================================
source :   Syn Flooder by Zakath ( made by C )
================================================================================
.
.
.
.
main ( int argc, char **argv)
{
        
         for ( i=1;i>0;i++)
        {
                   if {
                                   //  make a random src IP
                  }
                   
                 // call spoof_open function  :  param ( 1. me_fake , 2. them , 3. x : port )
        }

}

.
.

unsigned long spoof_open(.....)
{
               // set ip header values

               // set tcp header values

               // call send_tcp_segment
               //       param ( 1. & ip_header, 2. &tcp_header , 3. data, 4.data_length)

}
.
.
void send_tcp_segment (.....)
{
              // make a packet and send to victim
}

================================================================================
Explicit Congestion Notification
Explicit Congestion Notification(ECN)[2]은 네트워크상에 일어날 가능성이 있는 혼잡을
미리 탐지하여 이를 송신측에 알려 전송속도를 조절하는 방식
.........
RED 알고리즘이 임박한 혼잡을 탐지했을 때 임의의 패킷들을 폐기하는 것과 달리,
ECN 알고리즘은 혼잡이 예상되면 도착하는 임의의 패킷의 IP헤더에 존재하는
CE-bit(Congestion Experienced bit)을 세팅(setting)하게 되고 이 패킷이 수신측에 도착하면
이를 송신측에 알리기 위해서 생성하는 ACK 패킷의 TCP헤더에 존재하는 ECN-Echo flag를
세팅하여 전송한다.
이 flag의 세팅은 새로 도착하는 같은 flow의 패킷 중에서
CWR(Congestion Window Reduced) flag가 세팅되어 도착할 때까지 계속된다.
송신측에서는 ACK 패킷의 ECN-echo flag가 세팅 되어 도착하면 혼잡이 일어날 가능성이
있음을 감지하고 송신윈도우의 크기를 절반으로 줄이는 등 이 TCP reno 메커니즘과
유사한 대응책을 취한다. 그리고 나서 다음 송신 패킷의 CWR flag를 세팅하여 보냄으로써
혼잡에 대비한 적절한 대책을 취했음을 수신측에 알려
더 이상 ECN-Echo flag를 세팅하지 않도록 한다
.  
...........
...........

원문 :  ' TCP의 ECN 기능을 이용한 Differentiated Services의  Assured Service에서의
            Fairness 향상에 관한 연구
 '
                                                                                             오 종 채, 정 재 일
                                                                               
한양대학교 전자전기공학부
================================================================================

< Packet Capture >

1. Set  FLAGS( SYN, ECN, CWR  )

사용자 삽입 이미지




2. Set FLAGS( SYN )

사용자 삽입 이미지































사용자 삽입 이미지













================================================================================
< CMD ( netstat -apnt ) in Server >

            Foreign Address                                 State
사용자 삽입 이미지


================================================================================
< Separately, CMD ( tcpdump port 80 > test_syn,test_syn2 ) in Server , during same time>

[root@58ya:/root]#ls -l test_syn*
-rw-r--r-- 1 root root 1438 2009-03-12 18:01 test_syn                      // SYN
-rw-r--r-- 1 root root 1856 2009-03-12 18:03 test_syn2                    // SYN, ECN, CWR

Bcoz,  RED 알고리즘이 임박한 혼잡을 탐지했을 때 임의의 패킷들을 폐기하는 것과 달리.....

================================================================================
<Prevent SYN Flood >  by Mike Chirico < mchirico@users.sourceforge.net >

# shut DoS stuff down
echo 1 > /proc/sys/net/ipv4/tcp_syncookies

# increase the SYN backlog queue
echo 2048 > /proc/sys/net/ipv4/tcp_max_syn_backlog

================================================================================
솔직히 분석이 아니라 보이는대로 짜맞춘 것 같다.
IP SPOOFING 하는 부분 찾아보다가 여기까지 쓰게됐다;;
고칠 부분좀 댓글로 달아주시면 감사하겠습니다.(__)
================================================================================

'Packet Analysis' 카테고리의 다른 글

Port Scanning && Snort Rules(ICMP)  (0) 2009.03.11
sftp packet analysis  (0) 2009.03.11

arrow 트랙백 | 댓글



icon Port Scanning && Snort Rules(ICMP)
Packet Analysis | 2009. 3. 11. 16:12

==================================================================================

Program : nmap  4.60          OPTION : -sS(TCP SYN scan)   -O(Enable OS detection)   -p1-1024(port range)

1. victim에 ack 신호를 보냄 --> attacker에게 Reset 신호보냄

2. victim에 ICMP request     --> attacker에게 echo reply

---> 스캔대상 서버 살아있는지 확인?!

3. 본격적인 SYN 신호를 이용한 scanning
-->  3-way연결중    SYN--> SYN+ACK  이후 3번째 ACK신호를 보내지 않으므로써 연결이 되지않으므로
      로그에 남지 않는다.

4. 아래 그림을 보면 domain(53), https(443), http(80), ssh(22), smtp(25)등은 열려있어서 SYN신호를
받아  SYN+ACK 신호를 보내는것을 알 수있다. attacker가 ACK신호를 보내지 않자 잠시후 RST(Reset)
신호를 보내는 것을 볼 수 있다.
==================================================================================





서버에서 snort log폴더에 들어가 alert파일을 확인해보면 아래와 같이 탐지된다. (option : -sS)


                                                     ...
                                                     ...


또한 NMAP은 공통적으로 스캔을 할 때마다 처음에   ICMP를 날리는데 그것을 패턴으로 탐지하는 것 같다.





RULE을 찾아보았다.     icmp.rules에 있었다.

++++++++++++++++++++++++++++++icmp.rules++++++++++++++++++++++++++++++++++++++
....
alert icmp $EXTERNAL_NET any -> $HOME_NET any (msg:"ICMP PING NMAP"; dsize:0; itype:8; 
reference:arachnids,162; classtype:attempted-recon; sid:469; rev:3;)                                                  
....
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

itype : 8 (echo request)     dsize : 0 (data size)

echo request이면서 data size가 0인 것을 탐지하는 것같다.


Normal ping(echo request)  packet             ping(echo request) packet  in NMAP

                  



보통의 ping인경우 default로 dsize가 0이 아니다.  NMAP 에서 사용하는 ping의 경우 dsize가 0이다.

물론 되겠지만 확인차 윈도우에서 size를 0으로 줘서 실험해 보았다. 






===================================================================================
NMAP 캡쳐해서 분석하다 Snort로 빠져서 Rule도 만들어보고 캡쳐도 하다보니 할꺼 많은데

시간 엄청 잡아먹고 이상하게 한건 없는 것 같고 무언가 계속 하긴 했는데...

시간 참 빨리가네...우울하게 -_ㅜ
===================================================================================

'Packet Analysis' 카테고리의 다른 글

DoS( SYN Flood ) && ECN, CWR flags  (0) 2009.03.13
sftp packet analysis  (0) 2009.03.11

arrow 트랙백 | 댓글



icon sftp packet analysis
Packet Analysis | 2009. 3. 11. 16:06

Server - Client(ALFTP : SFTP, Passive mode)




TCP 3-way 연결을 한다.





연결을 하고 첫번째 패킷 주고 받음 (아래 연결)  







Server쪽에서 이렇게 ssh버젼 정보를 DATA로 Client에게 보내준다. [ PSH, ACK ]







Client 쪽에서는 ssh-2.0-eldos.sshblackbox 라는 Data로 Server에게 보내준다?? [ PSH, ACK ]


.
.
??
.
.


찾아보니
http://www.eldos.com/   eldos라는 회사이고 아래와 같은 정보를 얻을 수 있었다.

서버에서 보낸 정보를 보고 위와 같은 DATA값을 전송한것 같다.



.
.







위와 같이 서로 3-way 연결후 첫패킷에 정보를 실어보낸후 그다음 패킷을 보면

아래와 같이 암호알고리즘들을 서로 보낸다.

aes,sha,md5등 많이 보인다.

zlib 앞에 none이 있는 걸로 봐서 data 압축은 지원하지 않는건가?

데이터를 암호화만 하고 압축은 하지 않는건가?  -_-








이렇게 서버와 클라이언트가 암호 알고리즘들을 DATA로교환하고나면

그다음으로 SSH 처음 연결할 때처럼  공개키를 보내오는 것 같다.



.
.
.
.
---------------------------------------------------------------------------------
서버와 클라이언트의 3-way     
                   |
                   |
서버정보(ssh-2.0-openssh5.0)  - 클라이언트정보(ssh-2.0-eldos.sshblackbox) 교환   
                   |
                   |
암호알고리즘값 교환
                   |
                   |
서버---(공개키) --> 클라이언트         // 인증절차?!
                   |
                   |
                통신 
---------------------------------------------------------------------------------


분석이라기보다는 이건 뭐 추측에 가까운것 같다. ㅋㅋ

'Packet Analysis' 카테고리의 다른 글

DoS( SYN Flood ) && ECN, CWR flags  (0) 2009.03.13
Port Scanning && Snort Rules(ICMP)  (0) 2009.03.11

arrow 트랙백 | 댓글



[PREV] [1] [NEXT]
관리자  |   글쓰기
BLOG main image
분류 전체보기 (27)
Server (4)
Network (3)
Packet Analysis (3)
Security (3)
TroubleShooting (8)
Algorithm (1)
ETC (2)
None (1)
Total :
Today :
Yesterday :
rss
위치로그 : 태그 : 방명록 : 관리자
minSoong-e's Blog is powered by Daum / Designed by plyfly.net