Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

ABTV

8/13/2019
10:45 AM
Larry Loeb
Larry Loeb
Larry Loeb
50%
50%

A Brace Helps to Balance the Load

A syntax construct inside the TCL language is allowing injection attacks to occur.

Load balancers have the potential inside them for a real problem, it's been discovered. It arises from the language used to control the load balancing, called Tool Command Language (TCL).

A senior security consultant for F-Secure, Christoffer Jerkeby, realized there was a problem with the language and first wrote a paper about the problem in May, with an update in June. Public attention was only drawn to the problem recently, with F-secure posting to its blog and F5 issuing a security advisory.

F5 is involved in this because TCL is used with its BIG-IP OS for load balancers so you can tell the puppy what you want it to do. BIG-IP is very popular with larger enterprises like banks.

Security Now talked with Jerkeby on whether this was a hypothetical attack, or based on real-world observations. He told SN that, "I discovered this issue while performing a security assessment for a client, and have since verified it with other companies. However, we are not aware of any cases where it has been used in real attacks." Not yet, anyway.

What's going on is a syntax construct (it's actually a required feature that lets substitutions occur during the evaluation of statements) inside the TCL language that can allow injection attacks to occur. As F5 put it, "The design of the Tcl language allows for substitutions in statements and commands and this feature of Tcl can allow injection attacks similar to those seen in SQL or shell scripting languages, where arbitrary user input is interpreted as code and executed."

Because it's in the language itself, it cannot be patched. Also, the problem may not affect every installation. You have to check your particular balancer to see if the way it was programmed before being put into production will leave it open to this exploit. Did I mention that a Shodan search turned up 300,000 worldwide active BIG-IP implementations with 60% of them in the US? There's the potential for big stuff here.

Let's get something straight. Like the advisory says, "This is not a vulnerability in Tcl, or F5 products, but rather an issue relating to coding practices used when writing Tcl code."

So, F5 can't make users write bulletproof code. But they can call them out on it when they don't. The mitigation is that expressions in Tcl should always be "braced." This may be as simple as enclosing the expression in curly braces '{}'.

There are some open source tools on GitHub for those who have the "touch" to try things on their installations. A BIG-IP tester will look at what rules you now have in place, though the documentation says it's for “when you don't have the balls to test your iRules directly in production.”

An automated scan tool that will pick the vulnerable implementations out of a network is also available.

— Larry Loeb has written for many of the last century's major "dead tree" computer magazines, having been, among other things, a consulting editor for BYTE magazine and senior editor for the launch of WebWeek.

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
Manchester United Suffers Cyberattack
Dark Reading Staff 11/23/2020
As 'Anywhere Work' Evolves, Security Will Be Key Challenge
Robert Lemos, Contributing Writer,  11/23/2020
Cloud Security Startup Lightspin Emerges From Stealth
Kelly Sheridan, Staff Editor, Dark Reading,  11/24/2020
Register for Dark Reading Newsletters
White Papers
Video
Cartoon Contest
Write a Caption, Win an Amazon Gift Card! Click Here
Latest Comment: This comment is waiting for review by our moderators.
Current Issue
2021 Top Enterprise IT Trends
We've identified the key trends that are poised to impact the IT landscape in 2021. Find out why they're important and how they will affect you today!
Flash Poll
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2019-20934
PUBLISHED: 2020-11-28
An issue was discovered in the Linux kernel before 5.2.6. On NUMA systems, the Linux fair scheduler has a use-after-free in show_numa_stats() because NUMA fault statistics are inappropriately freed, aka CID-16d51a590a8c.
CVE-2020-29368
PUBLISHED: 2020-11-28
An issue was discovered in __split_huge_pmd in mm/huge_memory.c in the Linux kernel before 5.7.5. The copy-on-write implementation can grant unintended write access because of a race condition in a THP mapcount check, aka CID-c444eb564fb1.
CVE-2020-29369
PUBLISHED: 2020-11-28
An issue was discovered in mm/mmap.c in the Linux kernel before 5.7.11. There is a race condition between certain expand functions (expand_downwards and expand_upwards) and page-table free operations from an munmap call, aka CID-246c320a8cfe.
CVE-2020-29370
PUBLISHED: 2020-11-28
An issue was discovered in kmem_cache_alloc_bulk in mm/slub.c in the Linux kernel before 5.5.11. The slowpath lacks the required TID increment, aka CID-fd4d9c7d0c71.
CVE-2020-29371
PUBLISHED: 2020-11-28
An issue was discovered in romfs_dev_read in fs/romfs/storage.c in the Linux kernel before 5.8.4. Uninitialized memory leaks to userspace, aka CID-bcf85fcedfdd.