Silicon SheckySilicon Shecky

Tag: InfoSec

We’ve been Hacked! A Client’s issue

by on Jan.25, 2014, under Security

I deal with a lot of small businesses and getting them to understand security risks of old software and why hackers would want to hack them is difficult at best. Recently one client of mine learned the hard way.

Money they say is the root of all evil, and for SMBs a root of security problems. They do not want to spend money to upgrade PCs and servers until the last possible minute before they crash out. You tell them that they are insecure because of the old systems, and they come back with, “We are small and have nothing that a hacker would want.” This is due to the way hacks are presented in the media. All you hear about are the hacks of government systems, or large companies that have credit card data. SMBs don’t have huge secrets (most of the time), and just don’t get it.

This attitude recently bit one of my clients in the rear big time. They noticed that things were running slow on their SBS2003 server. they also noticed a bunch of new user accounts set up on the server. We would delete the accounts and they would say, ok, we will watch for this to happen again. I ran malware detection programs such as Malwarebytes on their machines and server to find nothing more than a couple of tracking cookies and a few common adware toolbars. I’d remove these and we would then wait. The waiting is the hardest part. Finally it became so annoying they asked what we could really do, as they were not spending money on a new system. So, at their behest, I went on site where I could focus on the task at hand without being disturbed by other clients, and watch the system from the console. That is where the fun really began.

I started off using process explorer to just take a general look at the system health. I noticed the CPU was being heavily used, but I have seen that on SBS servers before, usually because of e-mail coming in and being scanned, or SQL databases being used. Still,. I kept Process explorer open and opened the Terminal Server manager, where I noticed a clue to what was happening.

In the matter of minutes I watched a listener connect and disconnect, an obvious brute force attack on remote access for the server. this prompted me to open up Wireshark and take a look at incoming connections. This is what I saw:

primecoin wireshark

A quick check online of this IP Address showed it to be in Germany. Now why would someone from Germany try to brute force this small company? Well the next clue was hiding in plain site.

The problem with working in the IT field is overconfidence. It is what makes us overlook the obvious. In this case I was not noticing something in Process Explorer.

Process Explorer hack primecoin

Yes the suspended processes in the screen shot were the culprits. Don’t they look like normal Windows Processes though? They key was their actual path. Svchost.exe normall resides in C:\Windows\System32, but in the case of the processes I suspended they were located in c:\Windows\System. Odd I thought so I went to the C:\Windows\System directory and noticed a bunch of files I had not seen before, including a subdirectory. I double checked on a different client’s SBS2003 server (Yes I have a few that still run it), and sure enough, the subdirectories and extra files I had found were not supposed to be there. The System directory is not supposed to have any subdirectories at all. Add on that one of the directories was called Primecoin. Well a quick Google search revealed that Primecoin is a Bitcoin competitor, and obviously that the mining of Primecoins was the reason people were interested in this server.

The WMIAPSRV.exe seen above actually had the handles below:

Type    Name
Desktop    \Default
Directory    \BaseNamedObjects
Directory    \KnownDlls
Event    \BaseNamedObjects\crypt32LogoffEvent
File    \Device\WMIDataDevice
File    \Device\Tcp
File    C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca
File    \Device\Tcp
File    \Device\Afd
File    \Device\Afd
File    \Device\Afd
File    \Device\Tcp
File    \Device\Afd
File    C:\WINDOWS\system\Primecoin\chainstate\015178.sst
File    \Device\NamedPipe\uRGbKdRczuUDzDTuzx7VIdviMwLONGGIPD6f3it5Br5zV6wrIiu37N5igtR6IoSJe62SrbPkkc3byxULtHhVzwGwlQ1jmxJLyTpomhoKfpPkJ4yyIArQA4
File    \Device\NamedPipe\AwB7B3gyoJxp8Jk4WcCDjrJzOto8OOwUfuQr9g7csXW2ql7KI6Pbd26p9VHiIEJPO1PVE4nABknBmzUIQ8dlkWwaKO6fU4LJXp5CprT4CxPbJFToZaCb6e
File    C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.3053_x-ww_b80fa8ca
File    \Device\WMIDataDevice
File    \Device\WMIDataDevice
File    C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_5.82.3790.5190_x-ww_D21E1F39
File    C:\WINDOWS\system\Primecoin\chainstate\015181.sst
File    C:\WINDOWS\system\Primecoin\chainstate\015183.sst
File    \Device\Tcp
File    \Device\Afd
File    \Device\Afd
File    \Device\Tcp6
File    \Device\Afd
File    \Device\Afd
File    \Device\Tcp
File    \Device\Tcp
File    \Device\Afd
File    \Device\Afd
File    \Device\Tcp
File    \Device\Afd
File    \Device\Tcp
File    \Device\Afd
File    \Device\Afd
File    \Device\Tcp
File    C:\WINDOWS\system\Primecoin\chainstate\015179.sst
File    C:\WINDOWS\system\Primecoin\chainstate\015180.sst
File    \Device\Tcp
File    C:\WINDOWS\system\Primecoin\chainstate\015182.sst
File    C:\WINDOWS\system\Primecoin\chainstate\015177.sst
File    C:\WINDOWS\system\Primecoin\database\log.0000000004
File    C:\WINDOWS\system\Primecoin\database\log.0000000004
File    C:\WINDOWS\system\Primecoin\chainstate\015176.sst
File    C:\WINDOWS\system\Primecoin\wallet.dat
File    C:\WINDOWS\system\Primecoin\wallet.dat
File    C:\WINDOWS\system\Primecoin\chainstate\015175.sst
File    \Device\Tcp
File    \Device\Tcp
File    C:\WINDOWS\system\Primecoin\blocks\index\003151.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\003150.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\007322.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\007321.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\007320.sst
File    \Device\Tcp
File    C:\WINDOWS\system\Primecoin\blocks\index\007317.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\007374.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\006726.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\004791.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\006724.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\006723.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\006722.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\007323.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\006720.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\006719.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\006718.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\006717.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\007373.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\004800.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\004799.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\007372.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\004798.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\004797.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\004796.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\004795.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\007371.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\004794.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\004793.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\004792.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\007319.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\007370.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\007376.sst
File    C:\WINDOWS\system\Primecoin\chainstate\MANIFEST-015172
File    C:\WINDOWS\system\Primecoin\chainstate\015174.log
File    C:\WINDOWS\system\Primecoin\chainstate\LOCK
File    C:\WINDOWS\system\Primecoin\chainstate\LOG
File    C:\WINDOWS\system\Primecoin\blocks\index\MANIFEST-007378
File    C:\WINDOWS\system\Primecoin\blocks\index\007379.sst
File    C:\WINDOWS\system\Primecoin\blocks\index\007380.log
File    C:\WINDOWS\system\Primecoin\blocks\index\LOCK
File    C:\WINDOWS\system\Primecoin\blocks\index\LOG
File    \Device\Afd
File    \Device\Tcp
File    \Device\Afd
File    \Device\Tcp6
File    C:\WINDOWS\system\Primecoin\db.log
File    \Device\Tcp
File    C:\WINDOWS\system\Primecoin\debug.log
File    C:\WINDOWS\system\Primecoin\.lock
File    \Device\Tcp
File    \Device\Tcp
File    \Device\Tcp
File    \Device\KsecDD
File    C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.3790.5190_x-ww_319264BE
File    \Device\Ip
File    \Device\Ip
File    \Device\Ip
File    \Device\Tcp
File    \Device\Tcp
File    \Device\Tcp
File    C:\WINDOWS\system
Key    HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\DllNXOptions
Key    HKLM\SYSTEM\ControlSet001\Services\MSExchangeAL\Performance
Key    HKLM\SYSTEM\ControlSet001\Services\PerfOS\Performance
Key    HKLM\SYSTEM\ControlSet001\Control\Nls\Language Groups
Key    HKLM\SYSTEM\ControlSet001\Control\Nls\Locale
Key    HKLM\SYSTEM\ControlSet001\Control\Nls\Locale\Alternate Sorts
Key    HKLM\SYSTEM\ControlSet001\Services\MSExchangeAL\Performance
Key    HKLM\SYSTEM\ControlSet001\Services\MSExchangeAL\Performance
Key    HKLM\SYSTEM\ControlSet001\Services\ASP.NET_2.0.50727\Names
Key    HKLM\SYSTEM\ControlSet001\Services\MSExchangeAL\Performance
Key    HKLM\SYSTEM\ControlSet001\Services\MSExchangeAL\Performance
Key    HKLM\SYSTEM\ControlSet001\Services\MSExchangeAL\Performance
Key    HKU\.DEFAULT
Key    HKLM\SYSTEM\ControlSet001\Services\WinSock2\Parameters\NameSpace_Catalog5
Key    HKLM\SYSTEM\ControlSet001\Services\WinSock2\Parameters\Protocol_Catalog9
Key    HKLM\SYSTEM\ControlSet001\Services\NetBT\Parameters
Key    HKLM\SYSTEM\ControlSet001\Services\NetBT\Parameters\Interfaces
Key    HKLM\SYSTEM\ControlSet001\Services\Tcpip\Parameters
Key    HKLM\SYSTEM\ControlSet001\Services\Tcpip\Linkage
Key    HKLM
Key    HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
Key    HKLM\SYSTEM\ControlSet001\Services\PerfOS\Performance
Key    HKLM\SYSTEM\ControlSet001\Services\MSExchangeAL\Performance
Key    HKLM\SYSTEM\ControlSet001\Services\PerfOS\Performance
Key    HKLM\SYSTEM\ControlSet001\Services\PerfOS\Performance
Key    HKLM\SYSTEM\ControlSet001\Services\PerfOS\Performance
Key    HKLM\SYSTEM\ControlSet001\Services\PerfOS\Performance
Key    HKLM\SYSTEM\ControlSet001\Services\PerfOS\Performance
KeyedEvent    \KernelObjects\CritSecOutOfMemoryEvent
Mutant    \BaseNamedObjects\__PDH_PLA_INSTALL_MUTEX__
Mutant    \BaseNamedObjects\__PDH_PLA_MUTEX__
Process    wmiapsrv.exe(7476)
Semaphore    \BaseNamedObjects\shell.{210A4BA0-3AEA-1069-A2D9-08002B30309D}
Semaphore    \BaseNamedObjects\shell.{A48F1A32-A340-11D1-BC6B-00A0C90312E1}
Thread    wmiapsrv.exe(7476): 2080
Thread    wmiapsrv.exe(7476): 6564
Thread    wmiapsrv.exe(7476): 4568
Thread    wmiapsrv.exe(7476): 6860
Thread    wmiapsrv.exe(7476): 6652
Thread    wmiapsrv.exe(7476): 8060
Thread    wmiapsrv.exe(7476): 6780
Thread    wmiapsrv.exe(7476): 7884
Thread    wmiapsrv.exe(7476): 7892
Thread    wmiapsrv.exe(7476): 6076
Thread    wmiapsrv.exe(7476): 6860
Thread    wmiapsrv.exe(7476): 8072
Thread    wmiapsrv.exe(7476): 7892
Thread    wmiapsrv.exe(7476): 6076
Thread    wmiapsrv.exe(7476): 6860
Thread    wmiapsrv.exe(7476): 7884
Thread    wmiapsrv.exe(7476): 6192
Thread    wmiapsrv.exe(7476): 7460
Thread    wmiapsrv.exe(7476): 6916
Thread    wmiapsrv.exe(7476): 7496
Thread    wmiapsrv.exe(7476): 6904
Thread    wmiapsrv.exe(7476): 5016
Thread    wmiapsrv.exe(7476): 6540
Thread    wmiapsrv.exe(7476): 7608
Thread    wmiapsrv.exe(7476): 6708
Thread    wmiapsrv.exe(7476): 6312
Thread    wmiapsrv.exe(7476): 5356
Thread    wmiapsrv.exe(7476): 7160
Thread    wmiapsrv.exe(7476): 3300
Thread    wmiapsrv.exe(7476): 7568
Thread    wmiapsrv.exe(7476): 7568
WindowStation    \Windows\WindowStations\Service-0×0-3e7$

Digging into the folder I found the config file which had a bunch on nodes listed in it:

rpcuser=user
rpcpassword=pass
rpcport=8001
gen=1
server=1
daemon=1
genproclimit=-1
datadir=C:\windows\system\data
sievesize=1000000
maxconnections=256
rpcallowip=127.0.0.1
addnode=211.233.71.251
addnode=61.56.64.173
addnode=140.116.182.4
addnode=210.242.25.21
addnode=218.211.253.204
addnode=140.127.176.69
addnode=2.228.165.179
addnode=118.96.53.165

This was all fine and good, but removing these files and directories, while cleaning up the system and bringing the processor load down, does not remove the way that they were getting in. Yes we had removed all the obvious fake accounts, but what else were they using? Turns out that when they had gotten the Admin Password cracked, they had enabled a couple of built in accounts, given them admin rights plus created a couple of accounts that sounded like they should be there. The biggest culprit was a built in support account which should have been disabled by default. I proceeded to remove or disable the accounts and reset permissions as needed, along with changing the admin password, and forcing the whole company to change their individual passwords, plus add on factors to the passwords to make them stronger.

There was one last thing to take care of, and that was the brute force attack on the server. I went in and reconfigured the Firewall and the Terminal Services to allow a rather low connection count/retries on the port that we had terminal services open on.

Since going through all these steps, there have not been any signs of the server being hacked. No odd accounts have shown up, no odd directories have shown up, and most importantly the server is running smooth and the CPU has not been spiking. Does this mean they are completely clean? Of course not, but the prognosis is leaning that way. We all know once compromised, a machine is easier to compromise again. Vigilance is the key here, at least until they decide to get a new server.

 

Disclaimer: The client I talk about in this article knows I was going to write about this and have left their name out of the article at their request.

Leave a Comment :, , , , , , more...

Deck the Halls with Security advice

by on Nov.27, 2013, under Computers, Internet/Music, Security

It is that time of year. Holiday shopping, Black Friday, Cyber Monday (that still sounds like a XXX movie), and the like. Special offers abound, and the bad guys are ready to get you. Some simple steps to stay safer during the holidays.

This is the time of year that the criminal digital underground loves. People rushing to get the best deals they can, be it online or offline. The odds of someone clicking on a malicious link, increases with desperation, and of course making the deals looks good. Nothing will 100% guarantee that your going to be free of malware, or that your identity will not be swiped, but there are some simple things to remember to keep the risks at more of a minimum.

1) If it looks to be too good of a deal, it probably is, especially online. Deals are the easiest thing to snag someone online with. Pair that with fake URLs that look legit, and you have a recipe for disaster. The trick here is to find out what the real URL is. In Outlook and most browsers out can hover over links to see what they are sending you to. Doing a right click and copy hyperlink then pasting into notepad is a good way to see the full link itself for a quick check. If it shows something that bothers you, don’t go to it, don’t click on it.

2) Keep up to date with your purchases. This is easy enough to do with online banking. Check at minimum once a week online with your bank and credit card companies. Look for anything out of the ordinary. the faster you see something that looks fraudulent the faster things can be taken care of, and the less hassle there is overall.

3) Single Click on the web! I see this all too often. We as a society have gotten so use to double clicking to open programs that we forget it is a single click on a link. This is important because that second click could hit a hijacked ad on the site you were going to and at that point it is game over. You are pwnd and let the malware flood gates open.

4) Backup Backup Backup. Get an external drive that you only connect to backup your files, Use Mozy or Carbonite, do something to backup your files. Especially with Cryptolocker out there, the clean backup is important so you don’t have to pay to recover your files and take the risk that the bad guys are not going to keep their end of the bargain.

5) If you do not have to enter your pin on a pad, DON’T! Most bank cards can be used as “Credit Cards” (They have the Mastercard or Visa logo on them) meaning you do not have to punch in your security pin. Who knows if that pin pad is secure. Yes it only stops the pin from being gotten but that can be enough to stop someone from emptying your account.

Yes, these are basics, and yes milli0ns of people each year tend to not think about them. They are simple and pretty effective, but remember not perfect. If someone hacks the store or bank, you have no control over that. If the credit card or ATM machine has been tampered with, you don’t have control over that. Just do what you can to keep a little safer, and have a great holiday season!

 

-Shecky

 

Leave a Comment :, , , , more...

Can the DMCA Kill the Cloud?

by on Sep.10, 2012, under Computers, Rants, Security

The DMCA (Digital Millennium Copyright Act) is a powerful tool for copyright holders. Take down notices get served to many websites daily to remove infringing items, yet many are false positives. Will the DMCA harm cloud computing? I think its a good possibility.

I recently read an interesting article on SC Magazine about a security researcher who had her MediaFire account suspended for 36 hours because of a DCMA notification. The infringing files she had on the account for years, and were malware files that had been or were being researched by her and others. There is also the case of speeches from the recent political conventions been taken down off You Tube because of automated filters to prevent DMCA take down notices. The amount of false positives reported to the news outlets it a small portion of what actually is out there, but they tend to make big news.

So what does this all have to do with killing the cloud? The answer is quite a lot. If the filters and DMCA searches are conducted in a way that can breed a lot of false positives, such as just going by file names and sizes, then what is to prevent a DMCA notice and fight over a companies private files that have the same name as some other companies files? Better yet, what if something is named too similar to something from the entertainment industry? a presentation that uses music, hey there can be a DMCA takedown notice right there if a file scanner digs into it, or if you leave the name of the song in the filename.

The idea being that all these notices can help make people gun shy about moving or even using the cloud. Copyright is needed, yet has been blown way out of proportion in its longevity. Life of the artist plus 75 years is way to long, considering that copyrights were meant to foster innovation, not to allow someone to sit back on their laurels. Now we see that it can affect researchers which are reaching to the cloud to help analyze items in a file. This can affect not only the infosec area but other areas such as medicinal or other science research. All this because one is guilty until proven innocent. This can and will affect the future in more ways than we can see at this time.

 

Leave a Comment :, , , , , more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!