New Linux malware – aka Drovorub (13th Aug 2020)

Preface: New Linux malware silently conducting the attack. The FBI and NSA issue joint security alert.

Official announcement – https://media.defense.gov/2020/Aug/13/2002476465/-1/-1/0/CSA_DROVORUB_RUSSIAN_GRU_MALWARE_AUG_2020.PDF

Remedy: To prevent attacks, the agency recommends that US organizations update any Linux system to a version running kernel version 3.7 or later, “in order to take full advantage of kernel signing enforcement,” a security feature that would prevent APT28 hackers from installing Drovorub’s rootkit.

Reference: On older versions of Linux, two buffers allocated next to each other on the heap could result in the first buffer overwriting the second buffer’s metadata. By setting the in-use bit to zero of the second buffer and setting the length to a small negative value which allows null bytes to be copied, when the program calls free() on the first buffer it will attempt to merge these two buffers into a single buffer.

Impact: Heap overflows to gain arbitrary code execution.

Headline News: https://www.zdnet.com/article/fbi-and-nsa-expose-new-linux-malware-drovorub-used-by-russian-state-hackers/?ftag=TREc64629f&bhid=22308921349725635516834735786487&mid=12982564&cid=717383279

SAP completes the remediation – Let’s review the flaw – CVE-2020-6286

Preface: Path traversal vulnerability perhaps will be ignore by some people. But this design weakness similar provide a channel to attacker conduct a search. The vulnerability described in SAP security notes 2934135 contains with two different vulnerabilities.

Background: SAP NetWeaver is a software stack for many of SAP SE’s applications.It can be used for custom development and integration with other applications and systems, and is built primarily using the ABAP programming language, but also uses C, C++, and Java. AS Java is part of the SAP NetWeaver Application Platform. It provides the complete infrastructure for deploying and running Java applications.

Vulnerability details:

CVE-2020-6287 – Multiple Vulnerabilities in SAP NetWeaver AS JAVA (LM Configuration Wizard)
– Additional CVE – CVE-2020-6286
– Affected Product – SAP NetWeaver AS JAVA (LM Configuration Wizard); Versions – 7.30, 7.31, 7.40, 7.50

Impact: SAP NetWeaver AS JAVA (LM Configuration Wizard), versions – 7.30, 7.31, 7.40, 7.50, allows an unauthenticated attacker to relies on path traversal vulnerability reach EJB Environment and download zip files. After the attack is successful, it can also create user IDs and administrator roles. If you are interested to learn more. Please refer to the diagram.

Official announcement – https://wiki.scn.sap.com/wiki/pages/viewpage.action?pageId=552603345

Cyber security Focus – IE Scripting Engine Memory Corruption Vulnerability (11th Aug 2020)

Preface: In Windows 10, there are two ways to uninstall Internet Explorer.

Option 1:Turn Windows features on or off option
Option 2: Disable IE11 using PowerShell commands

Open PowerShell and Run as administrator. Execute the following command:
Disable-WindowsOptionalFeature -FeatureName Internet-Explorer-Optional-amd64 –Online

Security Focus: CVE-2020-1380 – Scripting Engine Memory Corruption Vulnerability

Even you turn off the Internet Explorer, there still have way let the ongoing works involves related system component of Internet Explorer. The fact is that mshtml.dll is the major component of Internet Explorer. This component manage the HTML, CSS parsing and rendering functionality. For example, when a user browses from an HTML page to a Word document, mshtml. dll is swapped out for the DLL provided by Word, which then renders that document type. In the sense that if vulnerability occurs in Internet Explorer. Perhaps you do not use, but still require to do the patching. Should you have interest to know the details, please refer to attached diagram.

Vulnerability Details: CVE-2020-1380 is a remote code execution vulnerability affecting Internet Explorer 11. According to the official information issued by Microsoft on 12th Feb 2020. The technical details of CVE-2020-0674 explicitly same as design weakness for this vulnerability. Since the official details did not describe the actual technical problem of this matter. I believe that it will let the attacker exploit use-after-free vulnerability.

Official announcement : https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2020-1380

CVE-2020-5413: vmware (kryo_codec) – Deserialization of Untrusted Data (Aug 2020)

Preface: Serialization in Java is a mechanism of writing the state of an object into a byte-stream. It is mainly used in Hibernate, RMI, JPA, EJB and JMS technologies. The reverse operation of serialization is called deserialization where byte-stream is converted into an object.

Product background: Spring Integration framework provides Kryo Codec implementations as an alternative for Java (de)serialization. About 11 years ago. VMWare has announced the acquisition of SpringSource, a provider of Web application development and management services.

Vulnerability details: When Kryo is configured with default options, all unregistered classes are resolved on demand. This leads to the “deserialization gadgets” exploit when provided data contains malicious code for execution during deserialization.

Remedy: Kryo can be configured to require a set of trusted classes for (de)serialization. Spring Integration should be proactive against blocking unknown “deserialization gadgets” when configuring Kryo in code. For more details, please refer to the link – https://spring.io/blog/2020/07/22/spring-integration-4-3-23-5-1-12-5-2-8-5-3-2-available-cve-2020-5413

c-ares 1.16.0 (Use-After-Free) – 9th Aug 2020

Preface: c-ares 1.16.0: ares_destroy() with pending ares_getaddrinfo() leads to use-after-free

Background: Google added support for a feature known as asynchronous DNS to Google Chrome, which aims to speed up page loading times by resolving the IP address of a website before you click the link.
Recent versions of Google Chrome employ a feature called Async DNS. This feature bypasses the normal operating system mechanisms for resolving domain names and uses the browser directly. In this mode, DNS requests will uses SSL to communicate directly with Googles own DNS servers and some third party providers.
DNS features no only for domain lookup. Modern world technology can exploit DNS activities to do monitoring. (The word surveillance perhaps not suitable in this matter).

What is c-ares?
c-ares is a C library for asynchronous DNS requests (including name resolves).

Vulnerability details: PendingResolutions get destroyed when complete or when c-ares sent ARES_EDESTRUCTION. Refer to attached diagram, ARES_EDESTRUCTION only happened when the resolver was destroyed. Meanwhile, PendingResolutions can be destroyed, without the callback target being aware. This leads to potential use after free issues.

Additional: The recommendation remedy method posted on Feb 2020. If you want to do additional protection., please refer to information shown on bottom of the diagram.

DLL Hijacking vulnerability and the Remedy solution – 7th Aug 2020

Preface: Software application could allow an authenticated, local attacker to perform a DLL hijacking attack. To exploit this vulnerability, the attacker would need to have valid credentials on the Windows system.

Vulnerability details: If workstation install Python, by default it will install on the C Driver :\directory instead of the C Drive:\Program Files. Therefore the authenticated users will have write access in that directory. If user compromised by phishing attack. This give a way to conducting the privilege escalation because the attacker can share the authenticated user permission write a malicious DLL in Python program directory. When the computer reboot in next time the process will restart with the permission of that process. The vulnerability is due to insufficient validation of resources that are loaded by the application at run time. Or, it is a programming technique misused? Whether, it is a unknown matter?

Scenario of attack:

  • An attacker could plant a DLL with the same name earlier in the import resolution search path, such as the application directory. Protected directories are more difficult – but not impossible – for an attacker to change.
  • If the DLL is missing from the application, %windows%\system32, and %windows% directories, import resolution falls through to the current directory. An attacker could plant a DLL there.

Microsoft’s remedy: If you specify the link option /DEPENDENTLOADFLAG:0x800 (the value of the flag LOAD_LIBRARY_SEARCH_SYSTEM32), then the module search path is limited to the %windows%\system32 directory. It offers some protection from planting attacks on the other directories.

Operation technology environment – Staying Alert! (CVE-2020-15492)

Preface: Computer technology enlightens the automation industry. Due to modern CNC (Computer Numeric Control) technology, tiny parts are easy to produce. Who is the hero of this industry? I believe it is CAD technology.

Background: CAD administrators use INNEO “Startup TOOLS” to manage working environments including licenses and standardized library elements and maintain their correct configuration. Users are relieved of routine tasks and can easily place many design elements instead of having to design them from scratch.
This is one of the reasons why companies rely on INNEO “Startup TOOLS” to make their work easier and more efficient.

Vulnerability details: An issue was discovered in INNEO Startup TOOLS 2017 M021 12.0.66.3784 through 2018 M040 13.0.70.3804. The sut_srv.exe web application (served on TCP port 85) includes user input into a filesystem access without any further validation. This might allow an unauthenticated attacker to read files on the server via Directory Traversal, or possibly have unspecified other impact.

Observation: INNEO Startup TOOLS (2018 M040 13.0.70.3804) uses PHP version 5.2.13. So attacker can rely on the PHP programming to conduct the null-byte injection attack. Perhaps the intellectual property might at risk.

Remedy: The vendor has a newer version 6.x.x.x and ongoing which is the successor of the deprecated versions of 2018 and before.

Express-fileupload module design weakness (CVE-2020-7699) – 4th Aug 2020

Preface: A large number of mobile apps and websites allow users to upload profile pictures and other files. Therefore, handling files upload is a common requirement while building a REST API with Node.js & Express (Express-fileupload). Express-fileupload is a middleware.

Technical background: How express-fileupload works? It makes the uploaded files accessible from req[.]files property. For example, if you are uploading a file called my-profile[.]jpg, and your field name is avatar, you can access it via req[.]files[.]avatar.

Vulnerability details: CVE-2020-7699 – This affects the package express-fileupload before 1.1.8. If the parseNested option is enabled, sending a corrupt HTTP request can lead to denial of service or arbitrary code execution. For more details, please refer to attached diagram. Besides, you can find proof of concept details in following link. https://blog.p6.is/Real-World-JS-1/

Currently, only a few antivirus vendors can successfully detect it. Preventive control should be apply. (03-08-2020)

Preface: In 2017, Honeypot detected that malware spread a new payload targeting 60001 TCP port. The ultimate goal is the JAWS Web Server & MVPower DVR. It turns out that there will be a Shell Command Execution vulnerability. Security expert has doubt on IoT device especially DVR which make use of TCP 60001 port.

Observation: There is an unknown malware ultimate goal to spread the remote access Trojan to IT world. Even though the authority Virus Total shows that only one vendor can correctly detect and isolate this malware (see attached picture). What’s going on?

Since there are many versions of Media Feature Pack nowadays. The fact is that the Media Feature Pack version that corresponds to your Windows OS build. So a lot of time the installer won’t copy ml.dll in place. As a result cyber criminal relies above matter to do a distribution a free copy of crafted ml.dll file on Internet for download.

After the loader has finished decrypting “svchost.dll”, the loader now has a decrypted version of Taidoor, which is a DLL. The loader then uses the API calls GetProcessHeap, GetProcAddress, and LoadLibrary to load the following DLLs, KERNEL32.dll, ADVAPI32.dll, and WS2_32.dll, which Taidoor will utilize.

Advises:
– Maintain up-to-date antivirus signatures and engines.
– Keep operating system patches up-to-date.
– Scan all software downloaded from the Internet prior to executing.

Umbraco cms 7.12.4 RCE vulnerability overview (3rd Aug 2020)

Preface: When we read the vulnerability article, we will despise those vulnerabilities that require authentication to execute. However, this type of design flaw should be considered because it is not limited to the inside threat area.

Background: Umbraco is the #1 Microsoft open source CMS in the world
Popular Sites Using Umbraco, For example: Instagram,slideshare,flickr,zippyshare,cnblogs,wattpad,…etc.

Technical details: Umbraco is primarily written in C#. It stores all data in relational database (Microsoft SQL Server) working on Microsoft IIS. For preventive protection, IT admin will install Reverse proxy in front of IIS server.

Vulnerability: Umbraco CMS design limitation causes Remote Code Execution. In this discussion, we predict that attackers can exploit previous vulnerabilities. For example: Umbraco CMS 8.2.2 cross-site request forgery CSRF. Exploitation of this vulnerability is usually carried out through malicious social engineering, such as tricking the victim into sending a fake email or link to the server. Therefore, stealing user credentials is not only a theory. For current vulnerabilities, the web server will encounter unknown risks. For details, please refer to attached diagram.