Category Archives: Security

Hypervisor Anti-rootkit: Hooksafe

Microsoft and researchers at North Carolina State suggest rootkits in virtual environments can be found and removed or blocked by leveraging the hypervisor’s physical memory:

With hook indirection, HookSafe relocates protected hooks to a continuous memory space and regulates accesses to them by leveraging hardware based page-level protection. Our experimental results with nine real-world rootkits show that HookSafe is effective in defeating their hook-hijacking attempts. Our performance benchmarks show that HookSafe only adds about 6% performance overhead.

Cisco ASA 5500 IPv6 Vulnerability

Cisco has released six new security patches including a couple for their firewall products. One (CVE-2011-0393) involves a denial of service condition when the ASA when configured to be in “transparent” mode .

Cisco ASA 5500 Series Adaptive Security Appliances are affected by the following vulnerabilities:

* Transparent Firewall Packet Buffer Exhaustion Vulnerability
* Skinny Client Control Protocol (SCCP) Inspection Denial of Service Vulnerability
* Routing Information Protocol (RIP) Denial of Service Vulnerability
* Unauthorized File System Access Vulnerability

Transparent mode is like a bridge so you can listen at layer 2 and above instead of layer 3 (in routed mode). This means you can leave alone the addresses on either side of the firewall and filter on non-IP (using EtherType ACLs). Administrators who want to avoid changing IP address on servers, or firewall legacy systems, are likely advocates of transparent mode. It also may make it easier than routed mode to pass multicast or the ol’ non-routable protocols: “(AppleTalk, IPX, BPDUs, and MPLS)”.

The vulnerability stems from buffer exhaustion for a newer protocol. Ah, the irony. While transparent mode is good for silently managing older protocols, apparently it falls over when IPv6 starts to show up.

The number of available packet buffers may decrease when a security appliance receives IPv6 traffic and is not configured for IPv6 operation. Administrators can check packet buffer utilization by issuing the command show blocks and inspecting the output for the number of available 1,550-byte blocks. If the number of blocks is zero (indicated by 0 in the CNT column), then the security appliance may be experiencing this issue. For example:

    ciscoasa# show blocks 
      SIZE    MAX    LOW    CNT
         0    400    360    400
         4    200    199    199
        80    400    358    400
       256   1412   1381   1412
      1550   6274      0      0
      ...

So, we all now know a convenient, albeit noisy, way to find an (un-patched) Cisco ASA 5500 hiding in transparent mode.

Langner Stuxnet Interview

Cigital interviews Ralph Langner of Langner Communications

Ralph was the first to determine that Stuxnet is a directed cybersecurity attack against the kinds of Siemens control systems used to control nuclear centrifuges in Iran. Gary and Ralph discuss what’s involved in introducing the concept of cybersecurity to control systems engineers, how anti-virus vendors originally responded to the Stuxnet, as well as plenty of detailed technical info about the worm with an emphasis on its payload.

#59 MP3

There is a little of the usual “for the first time” talk from Cigital and attempts to apply complex information security models to control systems, but Langner makes excellent points about the slow pace of change in engineering and the different, simple and intended design of control systems.

Siemens PLC

The bottom-line seems to be that the attack, aside from figuring out the Siemens calling conventions, was very basic. Note that at the end of the recording Cigital accuses Siemens of having no security and only just beginning their own security program. Reverse engineering of the calling conventions might be hard, but obviously that’s not the only way to figure them out…

  • “Single task real-time system” completely different from IT security. No authentication, no authorization.
  • Vulnerabilities in control systems are not bugs. Legitimate product features, they often can not be patched.
  • Speculation about attack on SCADA database to ex-filtrate intellectual property did not make sense. Raw data useless.
  • Affect on controller was the turning point in Langner investigation because “controllers is all we do. We don’t bother with Windows computers”.
  • Wireshark gave results very quickly. Easy to see infection.
  • Applied different Siemens equipment to infected Windows system. Process of elimination to figure out which specific controller type and target configuration for Natanz
  • Stuxnet attack very basic. DLL on Windows was renamed and replaced with new DLL to get on embedded real-time systems (controller). It was not necessary to write good code because of the element of surprise — only had to work pretty well
  • Ladderlogic loader puts code onto a Siemens controller by ethernet or MPI or PROFIBUS, using that one DLL
  • Original Siemens DLL had symbolic information but attackers had to reverse engineer calling conventions (protected by obfuscation and believed to be insider knowledge)
  • Bad code ran simultaneously alongside Siemens code — “stealth system”
  • Very easy to insert calls at beginning of OB1 and OB35
  • OB1 main routine called when controller started (like main function but called in a loop many times per second). Stuxnet inserted at beginning of code block (inserts function calls) and makes decision to pass requests to legitimate code or intercept for 315
  • OB35 is an event handler called 10 times per second. Stuxnet inserted code at beginning of code block so it would be called 10 times per second
  • Easy to do. Controller has no checks for authenticity. No checks for code integrity. Just insert code. Works on any of millions of Siemens 7 controllers found in food and beverage, chemical plants, power plants, etc.
  • Frequency converter attacks will only work on specific models and specific installation — attack code queries how many frequency converters attached to 315
  • Reading values from frequency converter was compromised — every time a 315 function was called another function ran
  • Those who typically program controllers would just take system functions for granted. Attackers know they could be overwritten and the program would still work
  • Early mentions of Bushier were Langner’s fault due to speculation and layman understanding of strategic/natural targets of Israel. It was not a Stuxnet target despite presence of expensive Siemens 417 used there. In late September the data structures in code were linked to the actual plant layout in Natanz. Symantec was wrong because they focused on the delivery system instead of the payload. Must look at outside world and plant layout, not just do code analysis.
  • 417 used for safety (prevent disaster by monitoring thresholds), 315 used for production (produce uranium). The attack vectors were not about fooling operators, who are the last line of defense (could be at lunch or bathroom). Stuxnet attack on 417 designed to fool front-line automated safety systems that are meant to react within seconds.
  • The media did an excellent job reporting on the problem but the tax-payer funded organizations that are required to do the same did not (e.g. DHS)
  • Problem of security eduction is not the engineers — it is with the CEOs

False Labels on “Local” Food

It’s hard to verify claims of food origin these days. Yet another audit confirms the problem — in England about a third of food labels are said to be a unverifiable or false.

Local Government Regulation inspectors tested 558 items in 300 shops, restaurants, markets and factories.

They found misleading labels including “Welsh lamb” which actually came from New Zealand, “Somerset butter” from Scotland and “Devon ham” from Denmark.

And then you might find someone selling Cheddar not made in Cheddar, England and Budweiser not from the Czech Republic….

This seems like better news than finding out your food is laced with poison, or that it was repacked after being declared rotten, or even that it was obtained unethically; but it still creates a curious breach of trust.

I can imagine several ways to address this, aside from RFID labels and real-time tracking databases. The most successful approaches likely will emphasize change in demand with encouragement to consumers to build trust with growers and re-learn traditional supply limitations (e.g. no lamb except in the spring).