Facebook Google Plus Twitter LinkedIn YouTube RSS Menu Search Resource - BlogResource - WebinarResource - ReportResource - Eventicons_066 icons_067icons_068icons_069icons_070

Tenable Blog

Subscribe

NYC InfraGard Capture The Flag Event

On July 21-22, 2009 Renaud and I attended the New York City Infragard CTF event. It was a great experience being able to participate in the games, learn and teach people about security. Below is a breakdown of how the event was organized, including several examples of attack and defense techniques we performed.

nyc.png

Day 1 - The Game

The game is divided into two areas; one for attackers ("Red Cell") and one for defenders ("Blue Cell"). The Blue Cell is further divided into teams, each defending a set of machines that represents a real company. The attackers can use whatever tools they have at their disposal. The defenders must defend everything from mock SCADA systems, VoIP, Microsoft Exchange and web servers running several different web applications. It is a good representation of what a real company may look like, which makes this type of exercise particularly educational.


Renaud Deraison and I spent the first day participating in the exercise and attacking the Blue Cell. We gained access to the first system by guessing the password based on web reconnaissance (they had renamed a directory to the same value as the root password). This may seem like something that never happens in the real world, but don't forget the Blue Cell teams are under a lot of pressure, and when stressed in this environment, tend to make mistakes. This is one value of the exercise; you get to see what mistakes are made during the game so you don't make them in the real world. Passwords can be the weakest link in your defense and need to be audited frequently by either attempting to crack them or brute force attempts against exposed services. I recommend that organizations implement a password policy and enforce it.

laptop_chat.png
We penetrated the Blue Team chat channel and performed social engineering attacks in the chat room.

The team we were attacking was doing their best to fend off our attacks. They were actively terminating our connections on the firewall, which made it difficult to maintain connections after we gained access to a system. We managed to lock the defenders out of the system by adding new users and then changing the attributes on the /etc/passwd and /etc/shadow files to slow them down when removing our changes. Monitoring system changes for suspicious activity is critical. For example, you could use the Tenable Log Correlation Engine's user tracking feature to identify new users and their IP addresses. You can also use Nessus Compliance Checks to identify changes to file permissions.

One weakness, common in many organizations and in the systems used for the game, was the use of LANMAN hashes. NTLM is a very insecure method of storing password hashes for Windows systems. It is considered a legacy authentication protocol, however it remains in widespread use for backward compatibility. During the game, we were able to use our access to the Linux systems to then compromise the Windows systems. Once a Windows system was compromised, we would obtain the password hashes. Without cracking or brute forcing the password, this gave us access to any other system using the same password. You can use Nessus and smbshell to perform further auditing of hosts with just the password hashes. As a defender, it is important to disable the NTLM hashes . You can use Nessus Compliance Checks to audit registry values across all Windows machines in your environment. Various audit policies will check to be certain that NTLM password hashes are not being stored. For example, the CIS Benchmarks for Windows systems contain checks such as:

# Minor Security Settings - LAN Mangager Authentication Level # # 0 = Send LM &amp; NTLM responses # 1 = Send LM &amp; NTLM - use NTLMv2 session security if negotiated # 2 = Send NTLM response only # 3 = Send NTLMv2 response only # 4 = Send NTLMv2 response only\refuse LM # 5 = Send NTLMv2 response only\refuse LM &amp; NTLM # <custom_item> type: REGISTRY_SETTING description: "Minor Security Settings - LAN Mangager Authentication Level: Send NTLMv2 response only (minimum)" value_type: POLICY_DWORD value_data: [3..5] reg_key: "HKLM\System\CurrentControlSet\Control\Lsa" reg_item: "lmcompatibilitylevel" reg_type: REG_DWORD info: "v1.2.2 Page 18" </custom_item>

We spent some time with web application attacks as well, and found several vulnerabilities, including XSS and SQLi. However, a wide-open phpMyAdmin installation (i.e. did not require a password) on the team's systems was by far the most useful attack vector. PhpMyAdmin allows you to manage your MySQL databases using a web interface. It is the equivalent of a prompt at the MySQL command line. An attacker who has unrestricted access to the database can easily gain full control of the system. We constructed the following SQL query to give us command execution access:

SELECT " system($_REQUEST['cmd']); ?&gt;" FROM LIMIT 0,1 into OUTFILE "/var/www/html/cmd.php"

This query will write out a new PHP file that will allow remote command execution. In order to be successful you need to specify a valid table name, a file path that is writable by the database server and accessible by the web server. From the defenders perspective, it is important not to leave phpMyAdmin open to the world without a password. In fact, a better solution is to make sure phpMyAdmin is not accessible, even with a password, to prevent attackers from accessing the database. If this type of application is required, you can use the Passive Vulnerability Scanner to detect SQL injection attempts. In addition, PVS contains rules that look for the result of operating system commands going across the network. For example, plugin ID 0105 looks for the result of the "id" command on Linux:

pmatch=id match=uid=0(root) gid=0(sys)

There are also plugins that look for Windows commands being run. For example, plugin id 0202 looks for a common error on the Windows command line:

description=The results of an attempt to execute an unknown Windows command occurred in a TCP session normally used for a standard service. This may indicate a successful compromise of this service has occurred. risk=HIGH match=is not recognized match=internal or external command match=^operable program or batch file.

ciscohuman.png
The event was held at the Cisco Systems office in New York City. Depicted above is the "Human Network".

Day 2 - The Debrief

The second day provided an opportunity to teach the players (both Red and Blue teams) how we compromised the systems, the tools that were used and some defensive measures that could have been implemented. I provided a demonstration of several tools used by the attackers, including Nessus, how to integrate Nmap data into Nessus, import Nessus results into other tools and use the new Nessus web application testing features. The interesting part of the demonstration was that I was attacking a live network that was actively being defended. I showed how Nessus is configured to run a scan, and went through the results in real-time, showing how it was able to find anonymous FTP access, cross-site scripting and missing Windows patches. It was a great opportunity for everyone to see Nessus in action and ask questions. Since we were hosted in the Cisco office in New York City, there were some questions about whether or not Nessus had support for IPv6 (which was added in version 3.2-beta).

Conclusion

This was an educational event for both the defenders and the attackers. It provided an opportunity for people to test their skills in computer security and learn about tools and techniques in a real-world environment. From the attacker's perspective, a combination of automated tools,manual testing and persistence was a successful strategy. Automated tools, such as Nessus, proved very useful for the attackers to quickly identify vulnerabilities in the target systems. The defenders also benefitted from tools such as Nessus to help identify vulnerabilities and remediate as quickly as possible. Tenable's enterprise tools contain functionality that help the defenders identify attacks, both on the network and from the system logs.

Related Articles

Cybersecurity News You Can Use

Enter your email and never miss timely alerts and security guidance from the experts at Tenable.

Tenable Vulnerability Management

Enjoy full access to a modern, cloud-based vulnerability management platform that enables you to see and track all of your assets with unmatched accuracy.

Your Tenable Vulnerability Management trial also includes Tenable Lumin and Tenable Web App Scanning.

Tenable Vulnerability Management

Enjoy full access to a modern, cloud-based vulnerability management platform that enables you to see and track all of your assets with unmatched accuracy. Purchase your annual subscription today.

100 assets

Choose Your Subscription Option:

Buy Now

Tenable Vulnerability Management

Enjoy full access to a modern, cloud-based vulnerability management platform that enables you to see and track all of your assets with unmatched accuracy.

Your Tenable Vulnerability Management trial also includes Tenable Lumin and Tenable Web App Scanning.

Tenable Vulnerability Management

Enjoy full access to a modern, cloud-based vulnerability management platform that enables you to see and track all of your assets with unmatched accuracy. Purchase your annual subscription today.

100 assets

Choose Your Subscription Option:

Buy Now

Tenable Vulnerability Management

Enjoy full access to a modern, cloud-based vulnerability management platform that enables you to see and track all of your assets with unmatched accuracy.

Your Tenable Vulnerability Management trial also includes Tenable Lumin and Tenable Web App Scanning.

Tenable Vulnerability Management

Enjoy full access to a modern, cloud-based vulnerability management platform that enables you to see and track all of your assets with unmatched accuracy. Purchase your annual subscription today.

100 assets

Choose Your Subscription Option:

Buy Now

Try Tenable Web App Scanning

Enjoy full access to our latest web application scanning offering designed for modern applications as part of the Tenable One Exposure Management platform. Safely scan your entire online portfolio for vulnerabilities with a high degree of accuracy without heavy manual effort or disruption to critical web applications. Sign up now.

Your Tenable Web App Scanning trial also includes Tenable Vulnerability Management and Tenable Lumin.

Buy Tenable Web App Scanning

Enjoy full access to a modern, cloud-based vulnerability management platform that enables you to see and track all of your assets with unmatched accuracy. Purchase your annual subscription today.

5 FQDNs

$3,578

Buy Now

Try Tenable Lumin

Visualize and explore your exposure management, track risk reduction over time and benchmark against your peers with Tenable Lumin.

Your Tenable Lumin trial also includes Tenable Vulnerability Management and Tenable Web App Scanning.

Buy Tenable Lumin

Contact a Sales Representative to see how Tenable Lumin can help you gain insight across your entire organization and manage cyber risk.

Try Tenable Nessus Professional Free

FREE FOR 7 DAYS

Tenable Nessus is the most comprehensive vulnerability scanner on the market today.

NEW - Tenable Nessus Expert
Now Available

Nessus Expert adds even more features, including external attack surface scanning, and the ability to add domains and scan cloud infrastructure. Click here to Try Nessus Expert.

Fill out the form below to continue with a Nessus Pro Trial.

Buy Tenable Nessus Professional

Tenable Nessus is the most comprehensive vulnerability scanner on the market today. Tenable Nessus Professional will help automate the vulnerability scanning process, save time in your compliance cycles and allow you to engage your IT team.

Buy a multi-year license and save. Add Advanced Support for access to phone, community and chat support 24 hours a day, 365 days a year.

Select Your License

Buy a multi-year license and save.

Add Support and Training

Try Tenable Nessus Expert Free

FREE FOR 7 DAYS

Built for the modern attack surface, Nessus Expert enables you to see more and protect your organization from vulnerabilities from IT to the cloud.

Already have Tenable Nessus Professional?
Upgrade to Nessus Expert free for 7 days.

Buy Tenable Nessus Expert

Built for the modern attack surface, Nessus Expert enables you to see more and protect your organization from vulnerabilities from IT to the cloud.

Select Your License

Buy a multi-year license and save more.

Add Support and Training