Welcome!

Cloud Security Authors: Elizabeth White, Xenia von Wedel, John Walsh, James Carlini, Mehdi Daoudi

Related Topics: Cloud Security, Mobile IoT

Cloud Security: Article

Network Security: Arp Cache Poisoning and Sniffing Packets

ARP Cache Poisoning allows any computer on the local area network to obtain one of the most powerful attack postures in network

In a switched network environment packets are sent to their destination port by MAC address. This requires that hardware be able to create and maintain a table associating MAC addresses to ports. In a switched environment packets are only sent to devices that they are meant for. Even in this switched environment there are ways to sniff other devices' packets. One such way is to spoof your MAC address and poison the arp table. Since there is no state information about ARP traffic kept, as it's a simple protocol, the arp cache can be overwritten (unless the entry was explicitly marked as permanent).

Arp cache poisoning puts the attacker in position to intercept communications between the two computers. Computer A believes it is communicating with Computer B, but because of the poisoned arp table, the communication actually goes to the attacker's computer. The attacker can then either respond to computer A (pretending to be computer B), or simply forward the packets to its intended destination, but only after the packet information is captured and logged for later sue by the attacker. Likewise, the response from Computer B can be captured and logged by the attacker, who has also used Arp poisoning to make Computer B think its Computer A. this type of attack is known as Man in the Middle attack.

This article will cover a number of tools used in arp cache poisoning including ettercap, arpspoof, nemesis, p0f, dsniff, and scapy.

Running Ettercap
For arp cache poisoning to take place the attacker needs to be in the same network segment as the systems that are to communicate between each other. The first step is to obtain a list of IP addresses and the associated MAC. This can be accomplished a couple of different ways, one with a tool called ettercap. Ettercap is a suite for man in the middle attacks on your local LAN. It features sniffing of live connections, content filtering on the fly and more. It supports active and passive dissection of many protocols some of them we will cover in this paper.

# ettercap -T -M arp:remote //

This command will quickly sniff all hosts within your subnet, to view the results type L or hit h for the help menu and you will be given a list of commands.

Arp Cache DOS
To arp poison a given IP address to knock them off line so they cant communicate with anyone use arpspoof from the dsniff suite. Arpspoof is much simpler than ettercap to redirect packets, here is an example:

# arpspoof -i eth0 -t <target> host

Specifying the interface is optional but required if more than one interface is present. The -t specifies the particular host to ARP poison and if not specified all hosts on the LAN will be poisoned. The host can be the default gateway and this will keep the target from communicating beyond the local segment. Arpspoof redirects packets from a target host or all hosts on the LAN intended for another host on the LAN by forging ARP replies. The beauty of this program comes from the arp_send() function, which also uses libnet to spoof packets. The arp_send() sends out one ARP packet with source/target IP and Ethernet hardware addresses supplied by the user. Libnet is a generic networking API that provides access to several protocols.

To better understand how this works lets look at another tool called nemesis. If we have the IP and MAC of the intended target and host we can use nemesis to arp poison our target and leave them with a denial of service. Nemesis is a command-line network packet crafting and injection utility. Nemesis can craft and inject ARP, DNS, ETHERNET, ICMP, IGMP, IP, OSPF, RIP, TCP and UDP packets. By crafting your own packet using nemesis you can see how the arp cache poisoning works.

$ sudo nemesis arp -v -r -d eth0 -S 192.168.1.2 -D 192.168.1.133 -h 00:22:6E:71:04:BB -m 00:0C:29:B2:78:9E -H 00:22:6E:71:04:BB -M 00:0C:29:B2:78:9E

Then we create a packet to send in the other direction.

$ sudo nemesis arp -v -r -d eth0 -S 192.168.1.133 -D 192.168.1.2 -h 00:22:6E:71:04:BB -m 00:22:6B:7E:AD:7C -H 00:22:6E:71:04:BB -M 00:22:6B:7E:AD:7C

These two commands spoof ARP replies from 192.168.1.2 to 192.168.1.133 then from 192.168.1.33 to 192.168.1.2. The nemesis arp options -S specifies the source IP address, -D the destination IP address, -h the senders MAC address, -m the target MAC address, -H the source MAC address, and -M the destination MAC address. These two commands send bogus ARP replies to keep the ARP caches poisoned and traffic redirected. I find understanding this aspect allows you a better understanding of how the arp cache poisoning works. Lets replay them every 10 seconds with a loop.

$ while true

> do

> sudo nemesis arp -v -r -d eth0 -S 192.168.1.2 -D 192.168.1.133 -h 00:22:6E:71:04:BB -m 00:0C:29:B2:78:9E -H 00:22:6E:71:04:BB -M 00:0C:29:B2:78:9E

> sudo nemesis arp -v -r -d eth0 -S 192.168.1.133 -D 192.168.1.2 -h 00:22:6E:71:04:BB -m 00:22:6B:7E:AD:7C -H 00:22:6E:71:04:BB -M 00:22:6B:7E:AD:7C

> echo "Redirecting"

> sleep 10

> done

Once this is done the targeted box will be off-line and unable to communicate with the rest of the network. I made a video on my site that demonstrates this attack and is available at http://pbnetworks.net.

Sniffing the LAN
The bridge mode in ettercap requires two interfaces that are placed in the network segment. If you setup in-line with network bridge mode you are very hard to detect. In bridge mode you intercept packets and can read, sniff, or change them before sending them on to the victim. This mode is stealthy because you don't send out ARP packets on the LAN.

# ettercap -Tq -i eth0 -B eth1

The -i sets the primary interface as eth0, the -B sets the second bridging interface (see Figure #1).

If you run in GTK+ user interface you can do this by Sniff => Bridged sniffing

Figure 1: Sniffing traffic

Logging data
If you would like to log all the packets in a file you can use a number of different tools such as p0f which is a versatile passive OS fingerprinting and masquerade detection utility. It can be used for evidence or information gathering on servers, firewalls, and intrusion detection systems. Ettercap can also fingerprint hosts (find the Operating System running) with the -P option, just need to specify an open port. Once we find out what Operating system we are dealing with then it we can anticipate how the system will react.

# ettercap -Tq -P finger /192.168.1.121/22

To allow the p0f utility to write packets to tcpdump snapshot use the -w option.

p0f -w dumpfile.pcap

dsniff has a collection of tools used for network penetration testing and audits. These tools include dsniff, filesnarf, mailsnarf, nsgsnarf, urlsnard, and webspy passively monitor a network for interesting data. Arpspoof, dnsspoof, and macof tools facilitate the interception of network traffic normally unavailable to an attacker due to layer-2 switching. Below we are using the -w option to to write packets to file.

dsniff -w dumpfile.pcap

Ettercap allows dumping packet data to file with the -w option as well.

ettercap -T -M arp:remote /192.168.1.1/ /192.168.1.130/ -w dumpfile.pcap

It is easier and less intrusive if you specify a specific box to sniff traffic and write to a file then trying to sniff the whole LAN segment. Otherwise you may crash ettercap. You can then view the output in Scapy if you have a graphical PostScript/PDF. Scapy is a powerful interactive packet manipulation program that has the ability to forge or decode packets of a wide number of protocols. It can perform tasks like scanning, tracerouting, probing, unit tests, network discovery, tcpdump, tethereal, p0f and much more. Start by typing scapy at the terminal prompt.

$ scapy

>>> a=rdpcap("/home/cr0wn/dumpfile.pcap")

>>> a

<dumpfile.pcap: TCP:9522 UDP:2386 IMCP:15 Other:611>

>>> a[423].pdfdump(layer_shift=1)

See Figure 2

Figure 2 Scapy graphical output

A good way to protect yourself while you are web-browsing is to use HTTP Everywhere by the Electronic Frontier Foundation (EFF). This will allow https to be used instead of http which passes information in clear-text and would be read by an attacker that is sniffing the local network segment. This is becomes more significant when using unknown wireless networks like at coffee shops or airports.

Sniffing with Scapy
The ability to capture packets and clone tcpdump is possible with scapy. Here we find a host that we want to sniff traffic on and use this command:

>>> sniff(filter="tcp and hsot 192.168.1.131", count=50)

>>> a=_

>>> a.nsummary()

Here we are sniffing the next 50 packets traveling the network on the host 192.168.1.131

(see Figure 3).

Figure 3 sniffing 50 packets

If we use the sprintf() function we can get even more control over what is displayed.

>>> pkts = sniff(prn=lambda x:x.sprintf("{IP:%IP.src% → %IP.dst%\n}{Raw:%Raw.load%\n}"))

(see Figure 4).

Figure #4 different control displays in scapy

If we use the sprintf() function we can get even more control over what is displayed.

>>> pkts = sniff(prn=lambda x:x.sprintf("{IP:%IP.src% → %IP.dst%\n}{Raw:%Raw.load%\n}"))

see Figure #4).

We can narrow down the ports that we sniff on such as port 25 and 110, common ports for mail client. Enter the following command in scapy:

>>> a=sniff(filter="tcp and ( port 25 or port 110 )",

prn=lambda x: x.sprintf(%IP.src%:TCP.sport% → %IP.dst%:%TCP.dport% %2s,TCP.flags% : %TCP.payload%"))

In the above we are sniffing for tcp on ports 25 and 110 and using the lambda operator, used to denote anonymous functions, with the sprintf() function for more control over displayed information.

The above can be viewed in Figure 5.

Figure 5 sniffing user names and passwords using Scapy

Scapy can also graph what you are sniffing on the network by producing a simple diagram of packet flow. The conversations() method will create a conversation graph which requires graphviz and ImageMagick to work. Here I am using scapy to sniff the wireless interface (wlan0) that is connected to a foreign network, all displayed in a graphic format.

>>> a=sniff(iface="wlan0", prn=lambda x: x.summary())

>>> a.conversations()

The output above can be seen in Figure 6.

Figure 6 graphical output with Scapy

Conclusion
ARP Cache Poisoning allows any computer on the local area network to obtain one of the most powerful attack postures in network security called "Man in the Middle" (MITM). MITM is able to monitor, filter, modify and edit any and all network traffic moving between LANs. In this article we have identified some open source tools that can be used to launch attacks on switched networks. We have identified some easy ways to prevent data loss by using a browser add-on. By making yourself aware and familiar with some of these tools you can see how secure your network really is. A good solution is to provide port security integrated into your switches and by running arpwatch to monitor address resolution protocol traffic on your network.

This article appears in Admin Network & Security Magazine on-line edition.  They had a difficult time getting all the .jpgs to work with their web application so I am publishing the article here as well.

Let pbnetworks get your pen test on target

Visit us and learn how http://pbnetworks.net

How secure is your network?

More Stories By David Dodd

David J. Dodd is currently in the United States and holds a current 'Top Secret' DoD Clearance and is available for consulting on various Information Assurance projects. A former U.S. Marine with Avionics background in Electronic Countermeasures Systems. David has given talks at the San Diego Regional Security Conference and SDISSA, is a member of InfraGard, and contributes to Secure our eCity http://securingourecity.org. He works for Xerox as Information Security Officer City of San Diego & pbnetworks Inc. http://pbnetworks.net a Service Disabled Veteran Owned Small Business (SDVOSB) located in San Diego, CA and can be contacted by emailing: dave at pbnetworks.net.

@ThingsExpo Stories
"IBM is really all in on blockchain. We take a look at sort of the history of blockchain ledger technologies. It started out with bitcoin, Ethereum, and IBM evaluated these particular blockchain technologies and found they were anonymous and permissionless and that many companies were looking for permissioned blockchain," stated René Bostic, Technical VP of the IBM Cloud Unit in North America, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Conventi...
In his session at 21st Cloud Expo, Carl J. Levine, Senior Technical Evangelist for NS1, will objectively discuss how DNS is used to solve Digital Transformation challenges in large SaaS applications, CDNs, AdTech platforms, and other demanding use cases. Carl J. Levine is the Senior Technical Evangelist for NS1. A veteran of the Internet Infrastructure space, he has over a decade of experience with startups, networking protocols and Internet infrastructure, combined with the unique ability to it...
22nd International Cloud Expo, taking place June 5-7, 2018, at the Javits Center in New York City, NY, and co-located with the 1st DXWorld Expo will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud ...
"Cloud Academy is an enterprise training platform for the cloud, specifically public clouds. We offer guided learning experiences on AWS, Azure, Google Cloud and all the surrounding methodologies and technologies that you need to know and your teams need to know in order to leverage the full benefits of the cloud," explained Alex Brower, VP of Marketing at Cloud Academy, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clar...
Gemini is Yahoo’s native and search advertising platform. To ensure the quality of a complex distributed system that spans multiple products and components and across various desktop websites and mobile app and web experiences – both Yahoo owned and operated and third-party syndication (supply), with complex interaction with more than a billion users and numerous advertisers globally (demand) – it becomes imperative to automate a set of end-to-end tests 24x7 to detect bugs and regression. In th...
Widespread fragmentation is stalling the growth of the IIoT and making it difficult for partners to work together. The number of software platforms, apps, hardware and connectivity standards is creating paralysis among businesses that are afraid of being locked into a solution. EdgeX Foundry is unifying the community around a common IoT edge framework and an ecosystem of interoperable components.
"MobiDev is a software development company and we do complex, custom software development for everybody from entrepreneurs to large enterprises," explained Alan Winters, U.S. Head of Business Development at MobiDev, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Large industrial manufacturing organizations are adopting the agile principles of cloud software companies. The industrial manufacturing development process has not scaled over time. Now that design CAD teams are geographically distributed, centralizing their work is key. With large multi-gigabyte projects, outdated tools have stifled industrial team agility, time-to-market milestones, and impacted P&L stakeholders.
"Akvelon is a software development company and we also provide consultancy services to folks who are looking to scale or accelerate their engineering roadmaps," explained Jeremiah Mothersell, Marketing Manager at Akvelon, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
"Space Monkey by Vivent Smart Home is a product that is a distributed cloud-based edge storage network. Vivent Smart Home, our parent company, is a smart home provider that places a lot of hard drives across homes in North America," explained JT Olds, Director of Engineering, and Brandon Crowfeather, Product Manager, at Vivint Smart Home, in this SYS-CON.tv interview at @ThingsExpo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Coca-Cola’s Google powered digital signage system lays the groundwork for a more valuable connection between Coke and its customers. Digital signs pair software with high-resolution displays so that a message can be changed instantly based on what the operator wants to communicate or sell. In their Day 3 Keynote at 21st Cloud Expo, Greg Chambers, Global Group Director, Digital Innovation, Coca-Cola, and Vidya Nagarajan, a Senior Product Manager at Google, discussed how from store operations and ...
"There's plenty of bandwidth out there but it's never in the right place. So what Cedexis does is uses data to work out the best pathways to get data from the origin to the person who wants to get it," explained Simon Jones, Evangelist and Head of Marketing at Cedexis, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
SYS-CON Events announced today that CrowdReviews.com has been named “Media Sponsor” of SYS-CON's 22nd International Cloud Expo, which will take place on June 5–7, 2018, at the Javits Center in New York City, NY. CrowdReviews.com is a transparent online platform for determining which products and services are the best based on the opinion of the crowd. The crowd consists of Internet users that have experienced products and services first-hand and have an interest in letting other potential buye...
SYS-CON Events announced today that Telecom Reseller has been named “Media Sponsor” of SYS-CON's 22nd International Cloud Expo, which will take place on June 5-7, 2018, at the Javits Center in New York, NY. Telecom Reseller reports on Unified Communications, UCaaS, BPaaS for enterprise and SMBs. They report extensively on both customer premises based solutions such as IP-PBX as well as cloud based and hosted platforms.
It is of utmost importance for the future success of WebRTC to ensure that interoperability is operational between web browsers and any WebRTC-compliant client. To be guaranteed as operational and effective, interoperability must be tested extensively by establishing WebRTC data and media connections between different web browsers running on different devices and operating systems. In his session at WebRTC Summit at @ThingsExpo, Dr. Alex Gouaillard, CEO and Founder of CoSMo Software, presented ...
WebRTC is great technology to build your own communication tools. It will be even more exciting experience it with advanced devices, such as a 360 Camera, 360 microphone, and a depth sensor camera. In his session at @ThingsExpo, Masashi Ganeko, a manager at INFOCOM Corporation, introduced two experimental projects from his team and what they learned from them. "Shotoku Tamago" uses the robot audition software HARK to track speakers in 360 video of a remote party. "Virtual Teleport" uses a multip...
A strange thing is happening along the way to the Internet of Things, namely far too many devices to work with and manage. It has become clear that we'll need much higher efficiency user experiences that can allow us to more easily and scalably work with the thousands of devices that will soon be in each of our lives. Enter the conversational interface revolution, combining bots we can literally talk with, gesture to, and even direct with our thoughts, with embedded artificial intelligence, whic...
SYS-CON Events announced today that Evatronix will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Evatronix SA offers comprehensive solutions in the design and implementation of electronic systems, in CAD / CAM deployment, and also is a designer and manufacturer of advanced 3D scanners for professional applications.
Leading companies, from the Global Fortune 500 to the smallest companies, are adopting hybrid cloud as the path to business advantage. Hybrid cloud depends on cloud services and on-premises infrastructure working in unison. Successful implementations require new levels of data mobility, enabled by an automated and seamless flow across on-premises and cloud resources. In his general session at 21st Cloud Expo, Greg Tevis, an IBM Storage Software Technical Strategist and Customer Solution Architec...
To get the most out of their data, successful companies are not focusing on queries and data lakes, they are actively integrating analytics into their operations with a data-first application development approach. Real-time adjustments to improve revenues, reduce costs, or mitigate risk rely on applications that minimize latency on a variety of data sources. In his session at @BigDataExpo, Jack Norris, Senior Vice President, Data and Applications at MapR Technologies, reviewed best practices to ...