Jump to content

Stealthy G... Malware(?) API(?) DLL(?) - Have you seen me?

Hi all,
 

Recently I've been seeing more and more topics on various forums about a mysterious "G" roaming around on Windows PCs, such as the image below:
 

image.png.2c0fc35f092d34a0556981421e66661a.png


Google search even pulls up 7 MILLION results, although I'm sure some are not relevant
image.png.c9cfd270eb43a215ce2697d3c0012f73.png

Recently I did a clean install of Windows and next day, LOAD AND BEHOLD, I too have G running as the title of several applications....
 

image.png.ad117eb082f1f5be7b10b669fa5ce47a.png
 

People, including myself, have scanned with several types of anti-malware suites, done clean installs and various other tricks. No one seems to know what it is. Is this a new Windows API issue? Rootkit? DLL? If you've seen this issue let me know. If you have this issue, include some specs about your system (Windows Build number, installed applications, anything else you think is useful).

 

Thanks!

PLEASE QUOTE ME IF YOU ARE REPLYING TO ME

Desktop Build: Ryzen 7 2700X @ 4.0GHz, AsRock Fatal1ty X370 Professional Gaming, 48GB Corsair DDR4 @ 3000MHz, RX5700 XT 8GB Sapphire Nitro+, Benq XL2730 1440p 144Hz FS

Retro Build: Intel Pentium III @ 500 MHz, Dell Optiplex G1 Full AT Tower, 768MB SDRAM @ 133MHz, Integrated Graphics, Generic 1024x768 60Hz Monitor


 

Link to comment
Share on other sites

Link to post
Share on other sites

Is this how it appears in task manager/resource monitor, or is it hidden from there?

 

I don't have this issue on 1803, and haven't had this issue on any previous version of Windows 10. 

Link to comment
Share on other sites

Link to post
Share on other sites

3 minutes ago, Tabs said:

Is this how it appears in task manager/resource monitor, or is it hidden from there?

 

I don't have this issue on 1803, and haven't had this issue on any previous version of Windows 10. 

Doesn't appear in task manager, resource monitor, or process explorer. HOWEVER, if you are adept at programming and pull all Window Handles on the system and then get the title of each one, it easily shows up. If you trust random powershell scripts, here's what I have in powershell for getting "G" window handles

 

$TypeDef = @"

using System;
using System.Text;
using System.Collections.Generic;
using System.Runtime.InteropServices;

namespace Api
{

 public class WinStruct
 {
   public string WinTitle {get; set; }
   public int WinHwnd { get; set; }
 }

 public class ApiDef
 {
   private delegate bool CallBackPtr(int hwnd, int lParam);
   private static CallBackPtr callBackPtr = Callback;
   private static List<WinStruct> _WinStructList = new List<WinStruct>();

   [DllImport("User32.dll")]
   [return: MarshalAs(UnmanagedType.Bool)]
   private static extern bool EnumWindows(CallBackPtr lpEnumFunc, IntPtr lParam);

   [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
   static extern int GetWindowText(IntPtr hWnd, StringBuilder lpString, int nMaxCount);

   private static bool Callback(int hWnd, int lparam)
   {
       StringBuilder sb = new StringBuilder(256);
       int res = GetWindowText((IntPtr)hWnd, sb, 256);
      _WinStructList.Add(new WinStruct { WinHwnd = hWnd, WinTitle = sb.ToString() });
       return true;
   }   

   public static List<WinStruct> GetWindows()
   {
      _WinStructList = new List<WinStruct>();
      EnumWindows(callBackPtr, IntPtr.Zero);
      return _WinStructList;
   }

 }
}
"@

Add-Type -TypeDefinition $TypeDef -Language CSharpVersion3

[Api.Apidef]::GetWindows() | Where-Object { $_.WinTitle -like "G" } | Sort-Object -Property WinTitle | Select-Object WinTitle,@{Name="Handle"; Expression={"{0:X0}" -f $_.WinHwnd}}

 

PLEASE QUOTE ME IF YOU ARE REPLYING TO ME

Desktop Build: Ryzen 7 2700X @ 4.0GHz, AsRock Fatal1ty X370 Professional Gaming, 48GB Corsair DDR4 @ 3000MHz, RX5700 XT 8GB Sapphire Nitro+, Benq XL2730 1440p 144Hz FS

Retro Build: Intel Pentium III @ 500 MHz, Dell Optiplex G1 Full AT Tower, 768MB SDRAM @ 133MHz, Integrated Graphics, Generic 1024x768 60Hz Monitor


 

Link to comment
Share on other sites

Link to post
Share on other sites

I'm curious if this is specific to non-English localised versions of Windows...

 

The title isn't a core part of a running program - more of a user aid than anything else. It seems unlikely that a piece of malware is causing this, since if it was malware and is advanced enough to remain undetected by every modern virus or malware scanning engine for this long, it's also advanced enough to not be visible to the user in such an obnoxious way.

 

Have you run something like VMMap from Sysinternals on any of the running executables with the weird G as title to get a full list of all loaded dll's in each process? 

Link to comment
Share on other sites

Link to post
Share on other sites

Not sure if it's actually this trojan since it's just the compiled executable name we're going off of but my searching led me to a family of trojans called Backdoor.Graybird that has used that executable name in the past.

 

If you open file explorer and go to the root of your C:/ drive, try using the search box to find 

g.*

The search will take a while as it's going to be going through millions of files.

[Out-of-date] Want to learn how to make your own custom Windows 10 image?

 

Desktop: AMD R9 3900X | ASUS ROG Strix X570-F | Radeon RX 5700 XT | EVGA GTX 1080 SC | 32GB Trident Z Neo 3600MHz | 1TB 970 EVO | 256GB 840 EVO | 960GB Corsair Force LE | EVGA G2 850W | Phanteks P400S

Laptop: Intel M-5Y10c | Intel HD Graphics | 8GB RAM | 250GB Micron SSD | Asus UX305FA

Server 01: Intel Xeon D 1541 | ASRock Rack D1541D4I-2L2T | 32GB Hynix ECC DDR4 | 4x8TB Western Digital HDDs | 32TB Raw 16TB Usable

Server 02: Intel i7 7700K | Gigabye Z170N Gaming5 | 16GB Trident Z 3200MHz

Link to comment
Share on other sites

Link to post
Share on other sites

Just now, Tabs said:

I'm curious if this is specific to non-English localised versions of Windows...

 

The title isn't a core part of a running program - more of a user aid than anything else. It seems unlikely that a piece of malware is causing this, since if it was malware and is advanced enough to remain undetected by every modern virus or malware scanning engine for this long, it's also advanced enough to not be visible to the user in such an obnoxious way.

 

Have you run something like VMMap from Sysinternals on any of the running executables with the weird G as title to get a full list of all loaded dll's in each process? 

Working on it now. I'm hoping for a dll in common or I'm once again going to be a loss.

PLEASE QUOTE ME IF YOU ARE REPLYING TO ME

Desktop Build: Ryzen 7 2700X @ 4.0GHz, AsRock Fatal1ty X370 Professional Gaming, 48GB Corsair DDR4 @ 3000MHz, RX5700 XT 8GB Sapphire Nitro+, Benq XL2730 1440p 144Hz FS

Retro Build: Intel Pentium III @ 500 MHz, Dell Optiplex G1 Full AT Tower, 768MB SDRAM @ 133MHz, Integrated Graphics, Generic 1024x768 60Hz Monitor


 

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, 2FA said:

Not sure if it's actually this trojan since it's just the compiled executable name we're going off of but my searching led me to a family of trojans called Backdoor.Graybird that has used that executable name in the past.

 

If you open file explorer and go to the root of your C:/ drive, try using the search box to find g.exe. The search will take a while as it's going to be going through millions of files.

It's not a file called g.exe though, it's just window titles which is the mystery to begin with

PLEASE QUOTE ME IF YOU ARE REPLYING TO ME

Desktop Build: Ryzen 7 2700X @ 4.0GHz, AsRock Fatal1ty X370 Professional Gaming, 48GB Corsair DDR4 @ 3000MHz, RX5700 XT 8GB Sapphire Nitro+, Benq XL2730 1440p 144Hz FS

Retro Build: Intel Pentium III @ 500 MHz, Dell Optiplex G1 Full AT Tower, 768MB SDRAM @ 133MHz, Integrated Graphics, Generic 1024x768 60Hz Monitor


 

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, rcmaehl said:

It's not a file called g.exe though, it's just window titles which is the mystery to begin with

I edited my post to be more clear

[Out-of-date] Want to learn how to make your own custom Windows 10 image?

 

Desktop: AMD R9 3900X | ASUS ROG Strix X570-F | Radeon RX 5700 XT | EVGA GTX 1080 SC | 32GB Trident Z Neo 3600MHz | 1TB 970 EVO | 256GB 840 EVO | 960GB Corsair Force LE | EVGA G2 850W | Phanteks P400S

Laptop: Intel M-5Y10c | Intel HD Graphics | 8GB RAM | 250GB Micron SSD | Asus UX305FA

Server 01: Intel Xeon D 1541 | ASRock Rack D1541D4I-2L2T | 32GB Hynix ECC DDR4 | 4x8TB Western Digital HDDs | 32TB Raw 16TB Usable

Server 02: Intel i7 7700K | Gigabye Z170N Gaming5 | 16GB Trident Z 3200MHz

Link to comment
Share on other sites

Link to post
Share on other sites

6 minutes ago, 2FA said:

I edited my post to be more clear

There are 11,182 results for files on C:\ using "g.*". However, files aren't Window Handles... If I went to http://linustechtips.com I'm not going to find "chrome.exe" by searching "Forums - Linus Tech Tips". I already know what processes/files have the title of "g" and where they're located. They're normal files belonging to normal programs. This could be possibly be DLL injection @Tabs is implying but it's definitely not just "g.*"

PLEASE QUOTE ME IF YOU ARE REPLYING TO ME

Desktop Build: Ryzen 7 2700X @ 4.0GHz, AsRock Fatal1ty X370 Professional Gaming, 48GB Corsair DDR4 @ 3000MHz, RX5700 XT 8GB Sapphire Nitro+, Benq XL2730 1440p 144Hz FS

Retro Build: Intel Pentium III @ 500 MHz, Dell Optiplex G1 Full AT Tower, 768MB SDRAM @ 133MHz, Integrated Graphics, Generic 1024x768 60Hz Monitor


 

Link to comment
Share on other sites

Link to post
Share on other sites

2 minutes ago, rcmaehl said:

There are 11,182 results for files on C:\ using "g.*". However, files aren't Window Handles... If I went to http://linustechtips.com I'm not going to find "chrome.exe" by searching "Forums - Linus Tech Tips". I already know what processes/files have the title of "g" and where they're located. They're normal files belonging to normal programs. This could be possibly be DLL injection @Tabs is implying but it's definitely not just "g.*"

I just tried that search myself and that is not the behavior I expected. o.O

 

I'll try that Powershell script in a VM and see what it shows for me. (I don't like doing testing on my host)

[Out-of-date] Want to learn how to make your own custom Windows 10 image?

 

Desktop: AMD R9 3900X | ASUS ROG Strix X570-F | Radeon RX 5700 XT | EVGA GTX 1080 SC | 32GB Trident Z Neo 3600MHz | 1TB 970 EVO | 256GB 840 EVO | 960GB Corsair Force LE | EVGA G2 850W | Phanteks P400S

Laptop: Intel M-5Y10c | Intel HD Graphics | 8GB RAM | 250GB Micron SSD | Asus UX305FA

Server 01: Intel Xeon D 1541 | ASRock Rack D1541D4I-2L2T | 32GB Hynix ECC DDR4 | 4x8TB Western Digital HDDs | 32TB Raw 16TB Usable

Server 02: Intel i7 7700K | Gigabye Z170N Gaming5 | 16GB Trident Z 3200MHz

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, rcmaehl said:

There are 11,182 results for files on C:\ using "g.*". However, files aren't Window Handles... If I went to http://linustechtips.com I'm not going to find "chrome.exe" by searching "Forums - Linus Tech Tips". I already know what processes/files have the title of "g" and where they're located. They're normal files belonging to normal programs. This could be possibly be DLL injection @Tabs is implying but it's definitely not just "g.*"

Indeed. Let us know what you find - the files themselves are unlikely to have been tampered with in any way, so it's most likely to be a dll that's been registered, if anything.

 

 I have a few different Windows images available in case you wish to verify any individual file checksums - let me know and I'll try to help.

 

There's the possibility also that this is some issue with language packs, I haven't yet spent a lot of time looking through the google results, but all of the ones I've seen so far are on non-English versions of Windows. Possibly a glitch in some MUI deployments?

 

Is your own install using any MUI's?

Link to comment
Share on other sites

Link to post
Share on other sites

2 minutes ago, Tabs said:

Indeed. Let us know what you find - the files themselves are unlikely to have been tampered with in any way, so it's most likely to be a dll that's been registered, if anything.

 

 I have a few different Windows images available in case you wish to verify any individual file checksums - let me know and I'll try to help.

 

There's the possibility also that this is some issue with language packs, I haven't yet spent a lot of time looking through the google results, but all of the ones I've seen so far are on non-English versions of Windows. Possibly a glitch in some MUI deployments?

 

Is your own install using any MUI's?

I personally haven't installed any. I've only got en-US (verified under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MUI\UILanguages)

Regardless, I'm thinking this might be input related as the only thing that acts similar is "Default IME" or the default input layer provided by Windows. 

I'm working on grabbing all the info from VMMap currently and I'll compare it once I get done, https://docs.google.com/spreadsheets/d/1FCvqeKZu_QyfL66AchKNl0Tp4Z17QhuQDlqEPZKar1A/edit?usp=sharing

PLEASE QUOTE ME IF YOU ARE REPLYING TO ME

Desktop Build: Ryzen 7 2700X @ 4.0GHz, AsRock Fatal1ty X370 Professional Gaming, 48GB Corsair DDR4 @ 3000MHz, RX5700 XT 8GB Sapphire Nitro+, Benq XL2730 1440p 144Hz FS

Retro Build: Intel Pentium III @ 500 MHz, Dell Optiplex G1 Full AT Tower, 768MB SDRAM @ 133MHz, Integrated Graphics, Generic 1024x768 60Hz Monitor


 

Link to comment
Share on other sites

Link to post
Share on other sites

6 minutes ago, rcmaehl said:

I personally haven't installed any. I've only got en-US (verified under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MUI\UILanguages)

Regardless, I'm thinking this might be input related as the only thing that acts similar is "Default IME" or the default input layer provided by Windows. 

I'm working on grabbing all the info from VMMap currently and I'll compare it once I get done, https://docs.google.com/spreadsheets/d/1FCvqeKZu_QyfL66AchKNl0Tp4Z17QhuQDlqEPZKar1A/edit?usp=sharing

That's a great idea, and interesting diagnostic format. You may be able to get more relevant results if you filter VMMap by "image" and then sort by "Details", as that will then arrange the dll's by image path and allow you to very easily exclude images that aren't common to all of the programs you're testing.

Link to comment
Share on other sites

Link to post
Share on other sites

So I just tested the PS script in my VM. Windows 10 .iso was freshly downloaded within a Linux VM, temporarily moved to host so it could be installed into a VM.

 

4f22050c2f.png

 

I can only conclude that this is part of Windows as I doubt my .iso could be injected within seconds of directly being placed on my host.

[Out-of-date] Want to learn how to make your own custom Windows 10 image?

 

Desktop: AMD R9 3900X | ASUS ROG Strix X570-F | Radeon RX 5700 XT | EVGA GTX 1080 SC | 32GB Trident Z Neo 3600MHz | 1TB 970 EVO | 256GB 840 EVO | 960GB Corsair Force LE | EVGA G2 850W | Phanteks P400S

Laptop: Intel M-5Y10c | Intel HD Graphics | 8GB RAM | 250GB Micron SSD | Asus UX305FA

Server 01: Intel Xeon D 1541 | ASRock Rack D1541D4I-2L2T | 32GB Hynix ECC DDR4 | 4x8TB Western Digital HDDs | 32TB Raw 16TB Usable

Server 02: Intel i7 7700K | Gigabye Z170N Gaming5 | 16GB Trident Z 3200MHz

Link to comment
Share on other sites

Link to post
Share on other sites

9 hours ago, 2FA said:

So I just tested the PS script in my VM. Windows 10 .iso was freshly downloaded within a Linux VM, temporarily moved to host so it could be installed into a VM.

 

4f22050c2f.png

 

I can only conclude that this is part of Windows as I doubt my .iso could be injected within seconds of directly being placed on my host.

So it's a part of Windows but we still don't know what it is. Microsoft is doing undocumented stuff again... :dry:

PLEASE QUOTE ME IF YOU ARE REPLYING TO ME

Desktop Build: Ryzen 7 2700X @ 4.0GHz, AsRock Fatal1ty X370 Professional Gaming, 48GB Corsair DDR4 @ 3000MHz, RX5700 XT 8GB Sapphire Nitro+, Benq XL2730 1440p 144Hz FS

Retro Build: Intel Pentium III @ 500 MHz, Dell Optiplex G1 Full AT Tower, 768MB SDRAM @ 133MHz, Integrated Graphics, Generic 1024x768 60Hz Monitor


 

Link to comment
Share on other sites

Link to post
Share on other sites

From another forum:
 

image.png.0f7a3b48b8b848b2a104596067d9b5a1.png


It appears Windows is doing stuff with unmanaged resources... what specifically is yet to be found...

PLEASE QUOTE ME IF YOU ARE REPLYING TO ME

Desktop Build: Ryzen 7 2700X @ 4.0GHz, AsRock Fatal1ty X370 Professional Gaming, 48GB Corsair DDR4 @ 3000MHz, RX5700 XT 8GB Sapphire Nitro+, Benq XL2730 1440p 144Hz FS

Retro Build: Intel Pentium III @ 500 MHz, Dell Optiplex G1 Full AT Tower, 768MB SDRAM @ 133MHz, Integrated Graphics, Generic 1024x768 60Hz Monitor


 

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×