Command-line tools can be invaluable when troubleshooting or analyzing systems. If you know how to use them, they can make many tasks easier. More, if you’re planning to take the SY0-501 version of the Security+ exam, you should have a basic understanding of many commands you can use to assess the security posture of an organization.
For example, can you answer this question?
Q. You have configured a firewall in your network to block ICMP traffic. You want to verify that it is blocking this traffic. Which of the following commands would you use?
A. arp
B. ipconfig
C. netstat
D. ping
More, do you know why the correct answer is correct and the incorrect answers are incorrect? The answer and explanation are available at the end of this post.
Additionally, the CompTIA Security+ objectives list several command-line tools that you should know to help you assess the security posture of an organization. Some are specific to Windows systems and run through the Windows Command Prompt window. Others are specific to Linux systems and run through the Linux terminal (sometimes called the shell).
A challenge many test takers have is that they don’t have a Linux system to play around with these commands. If you can’t enter them and see what they do, you might have trouble with even the easy questions.
Linux Terminal
The terminal is where you run commands in a Linux system. There are different ways to access the terminal depending on the distribution you’re using. If you’re running Kali Linux, you can start it by simply clicking the terminal icon on the Kali menu.
The figure shows an instance of Kali with the menu on the left. If you hover over the second icon, you’ll see “Terminal” appear. Click it and it starts the terminal.
Launching the terminal in Kali Linux
For simplicity, instead of stating “Linux or Unix,” I’m just stating it as Linux. Note that Linux is a version of Unix and commands that can be run in a Unix terminal can also be run in a Linux terminal.
If you purchased the CompTIA Security+ Get Certified Get Ahead: SY0-501 Study Guide, you have access to free online labs including labs to install Kali Linux as a virtual machine on a Windows computer.
Ping
Ping is a basic command used to test connectivity for remote systems. You can also use it to verify a system can resolve valid host names to IP addresses, test the NIC, and check the security posture of a network.
The ping command checks connectivity by sending Internet Control Message Protocol (ICMP) echo request packets. Remote systems answer with ICMP echo reply packets and if you receive echo replies, you know that the remote system is operational. As a simple example, the following command verifies that your computer can connect with another computer on your network:
ping 192.168.1.1
On Windows systems, ping sends out four ICMP echo requests. Systems that receive the ICMP echo requests respond with ICMP echo replies. On Linux-based systems, ping continues until you press the Ctrl + C keys to stop it. You can mimic this behavior on Windows systems by using the -t switch like this:
ping -t 192.168.1.1
Similarly, you can mimic the behavior of a Windows ping on a Linux system using the -c switch (for count) like this:
ping –c 4 192.168.1.1
This example tested connectivity with an IP address in a local network, but you can just as easily test connectivity with any system. For example, if you knew the IP address of a system hosting a web site on the Internet, you could ping its IP address.
Beware of Firewalls
If you receive replies from a system, it verifies the other system is operational and reachable. However, if the ping command fails, it doesn’t necessarily mean that the remote system is operational or not reachable. Ping might show a “Reply Timed Out” error even if the remote system is functioning properly.
Many denial-of-service (DoS) attacks use ICMP to disrupt services on Internet-based systems. To protect systems, firewalls commonly block ICMP traffic to prevent these attacks from succeeding. In other words, a remote system might be operational, but a ping will fail because the firewall is blocking ICMP traffic.
As an example, you might be able to connect to the https://blogs.getcertifiedgetahead.com web site using a web browser, but ping might fail. This indicates that the web site is operational with Hypertext Transfer Protocol (HTTP), but a firewall is blocking ICMP traffic.
Using Ping to Check Security Posture
You can also use ping to check the security posture of a network. For example, if you’ve configured firewalls and routers to block ping traffic, you can verify the firewalls and routers are blocking the traffic by using ping to check it.
Chapter 4 of the CompTIA Security+: Get Certified Get Ahead: SY0-501 Study Guide covers intrusion prevention systems (IPSs) in more depth, but as an introduction, they can often detect attacks and block them automatically. For example, a simple distributed denial-of-service (DDoS) attack can send thousands of pings to a server and overload it. An IPS can detect the attack and automatically block ICMP traffic, effectively preventing any impact from the attack.
You can use ping to simulate an attack from a couple of computers to repeatedly send ping requests. If the IPS is working, it will block these attacks and the pings will stop receiving replies.
Remember this
Administrators use ping to check connectivity of remote systems and verify name resolution is working. They also use ping to check the security posture of systems and networks by verifying that routers, firewalls, and IPSs block ICMP traffic when configured to do so.
Q. You have configured a firewall in your network to block ICMP traffic. You want to verify that it is blocking this traffic. Which of the following commands would you use?
A. arp
B. ipconfig
C. netstat
D. ping
Answer is D. The ping command sends Internet Control Message Protocol (ICMP) echo requests and checks for ICMP echo replies.
Arp resolves IP addresses to media access control (MAC) addresses and does not use echo Ipconfig checks the configuration of a NIC.
Netstat shows active connections and network statistics.
Check out the Linux and Security+ blog post for more information about Linux commands.
1 thought on “Using Command-Line Tools”