Sucuri Presents: Sucuri Sit-Down and Sucuri Sync-Up Podcast Series

Malware comes in many different varieties. Analyst Krasimir Konov is on this month’s Sucuri Sit-Down to help keep them all straight. From malicious iframes to SEO spam, join host Justin Channell as he racks Krasimir’s brain on all the different types of malware. Also, Krasimir discusses his recent blog post about a malicious cURL downloader, and Justin breaks down the latest website security news, including patched plugins you should update. Podcast Transcript Justin Channell: Hello, and welcome to the Sucuri Sit Down. I'm your host, Justin Channell, and this is a monthly podcast about website security, where we get in-depth with the malware removal experts here at Sucuri. Later in the show, I'll have our analyst Krasimir Konov to chat about some different types of malware, but first, let's take a look at other topics we've published on our blog and Sucuri labs notes this month. First up, we have some new information about credit card skimming with hackers using a hybrid method to steal payment information from eCommerce websites. Our analyst Dennis Sinegubko wrote about this for the Sucuri blog back at the beginning of June. Now, most credit card stealing malware is a client side JavaScript that grabs data and sends it to a third party server. But, that approach has a drawback for bad actors because it's still possible to track the requests and catch them as being suspicious. Now, to get around that, bad actors have started harvesting information server side by modifying core PHP files. In this case, the infection would be undetectable from the outside, but it's still going to be pretty easy to find because you're rarely modifying any of those core files, so any of those changes that are going to come up are going to be suspicious. To get around both of these drawbacks, we're seeing bad actors combine the two. So client side snippets of JavaScript are sending stolen credit card data to server side scripts that they've installed on the same server as the site. Now, this allows bad actors to cover their tracks a little bit because the traffic that's being redirected is going to the same server, and that's less likely to be flagged as suspicious. It's a bit more complicated to pull this off, but our team has been seeing this hybrid approach in the wild, so it's something to be on the lookout for. Now, another month has passed, and we found more cross site scripting attacks targeting WordPress plugins. Most notably, we discovered one that affects users of the YITH WooCommerce Ajax Product Filter plugin. Now, this is a plugin that allows WooCommerce stores to be filtered by product type, and it's pretty popular. It's got about 100,000 users right now, so with it being vulnerable, it's very important that all of them update to the latest version, which is 3.11.1. Some of the other plugins we found cross site scripting vulnerabilities with included Elementor Page Builder, Careerfy, JobSearch, and Newspaper. If you're looking for a full list of vulnerabilities that have been patched this month, John Castro at the Sucuri Labs blog has you covered. Check out our show notes for the link. Also, this month I had a blog go up detailing what's called a jibberish hack. It's basically the same motivation as an SEO spam attack where bad actors use your site's good standing to redirect visitors to their own sites. But in this attack, you'll find a bunch of randomly named folders filled with a ton of HTML files with really nonsensical file names like cheap-cool-hairstyles-photos.html. It's just going to be a mishmash of keywords that clearly you didn't put there. Unfortunately, just deleting all those HTML files and folders is not going to be enough to get rid of that jibberish hack though. You're going to need to fully clean any hacked files and database tables, and then you're going to have to deal with all the damage caused to your site's standing. And just keep in mind, if you find anything about that process too daunting, we're always here to help. Now, for this month's Sit Down, we have Sucuri analyst Krasimir Konov. Earlier in June, he had written a lab's note about a malicious downloader script that used the curl function, and we chatted a bit about it, but more importantly, we went really in-depth on all the different varieties of malware that website owners need to be aware of. But, before I get started with Krasimir, I just wanted to remind you about the Sucuri Sync-Up, our sister podcast. It's a weekly website security news briefing that you can find anywhere you get your podcasts, as well as the video version on our social media feed, and now you can even get it on your Amazon Alexa smart speakers. Just search Amazon skills for Sucuri Sync-Up, add the flash briefing, and get new content delivered every Monday. Now, on with the show. Hi Krasimir, thanks for joining us on the show. I thought we could start off and maybe have you tell us a little bit about yourself and what you do here at Sucuri? Krasimir Konov: Yeah, sure. Well, I joined Sucuri originally in 2014, but I've been in the IT business for about 10 years. Nine of those I did security. And currently at Sucuri I'm one of the malware analysts. I used to work in the front lines, used to clean websites and whatnot, and then I gradually moved up, and now I'm working in the malware research department. And my day to day job is basically analyzing malware, and then once I analyze it and figure out what it is, then I will create a signature for it. And we'll add those signatures to our tools, so we can automate some of the work we do. And I also write some Labs Notes blog posts. Usually, if I find something interesting in malware or some security topic, I'll write about it. Justin Channell: Yeah. And of those topics recently that you wrote about, one was about a malicious curl downloader, and how exactly did that work? Krasimir Konov:  Right, yeah. That was an interesting one, but not very unique or anything like that. We see that a lot with curl being used as a downloader. It's a very common malware. So rather than including the actual malware in the file, the attackers would use curl to download the malicious code. In this case, they'll download it from Pastebin, but it could be anything. It could be another website or anything like that, and curl would just make a call to the website, request the code. The website will respond with the code, and then later on, there is some code to either save the output somewhere on the website, or you'll just run it through eval and execute the actual code right away. Justin Channell:  Right. And you said that it's commonly found in malware, but let's kind of maybe talk a bit broader about malware in general. What is everything that is classified as malware? Krasimir Konov:  Well, in general it will be anything that the owner of the website didn't authorize, anything that was added by a third party. There is a lot of different malware. It could be even something like a defacement that will also be considered malware because it was something the user did not authorize. Even though it might not be doing anything malicious on the website, it's not infecting users, the visit is still something they did not authorize. So defacement would also be considered malware. And even something like ransomware where the website is technically not really damaged, it's all encrypted, but it's not infecting anybody. It's not doing anything malicious, but it's still encrypting the entire website and asking the user or the customer, the owner of the website for a ransom they need to pay in order to get the website back online. Justin Channell: Okay. Let's maybe break it down to each individual type of malware. For example, what would be a way that maybe I-frames could be maliciously used by a hacker? Krasimir Konov: Yeah. An I-frame can be used maliciously when it loads content from another location. You can look at the I-frame as a window that just opens another website. So anything that website has on it, you're pretty much loading it through the I-frame. So if that website is infected and it's serving some kind of malware, by opening an I-frame, you're loading all those elements, everything that was on this website. And sometimes the I-frame can be as small as pixel or something hidden somewhere off the screen, so you wouldn't even know that it was opening it. Justin Channell: And yeah, I feel like we've also seen a lot of them where they're used almost to mimic popups as well. Krasimir Konov: Yeah. I mean the I-frame, it could just load from another website and the other website could do anything. It could be serving just malware and it would try to infect the user that doesn't even know that they're being connected to the other website. It could just have some other JavaScript that's just trying to open up pop ups on the original website through the I-frame. Yeah, it could be a lot of things. Justin Channell: Okay. And also, let's talk a little bit about conditional redirects and how those work. What allows a script to detect which devices are coming in and where they're coming from? Krasimir Konov: Right. Yeah. That's a common one we see a lot. Basically, a conditional redirect would be something, it's a redirect on the website. It's obviously malicious, but there's certain conditions that need to be met before the redirect is actually executed or the redirect happens. For example, let's say if it's on a phishing website or a phishing page that is hidden somewhere on the website. For example, if Google visits it, obviously the attacker doesn't want Google to see the actual phishing page and record it as a phishing page. So they'll look for, for example, the IP address. They would look for the user agent. And a lot of times they can tell that it's a bot. So they'll just return a 404 response, for example, that will be like, "Oh, page not found." So Google would be like, "Oh, it looks like this page doesn't exist." But then if a regular user goes to the same page, then those conditions will be met. The actual website or the script behind the phishing will check and see, and be like, "Oh, this one is running Firefox or Chrome," and be like, okay. And then they'll look at the IP and be like, "Oh, he's in whatever, he's in United States somewhere." And he's like, "Oh, okay. That's good." And then once all of these conditions are met, then the actual script will serve them the actual phishing page. And it'll be like, "Oh, you need to fill out this to recover your account or whatever, or type in your credentials to log in here." Justin Channell: And so this is the type of thing we're really, a website owner is going to run into this more commonly when people are complaining about they're getting served bad content or whatever, and they can't seem to replicate it. It's likely probably these kind of redirects. Is that right? Krasimir Konov: Right, right. It could be something as specific as, for example, a range of IP addresses that correspond to an ISP or maybe let's say a country. It could be like, "Oh, were targeting only customers in the US," so if you're connecting from another country and you go to the same website or the same page, it would just say 404. It will give you a page not found. But then if you actually have an IP address from the United States, you're connecting from the United States, then it will actually show you the phishing page. Justin Channell: Now another type of malware I feel like we see a lot here is SEO spam. We hear people talking about that. What are some of the top SEO spam keywords that you see coming through? Krasimir Konov: Yeah. We get that a lot. We see a lot of spam on websites. A lot of times attackers will use SEO spam to gain ranking for their own website. Or they'll just try to include some kind of SEO spam in links to another website that they're currently running or something. I mean, these things change all the time. So a website might be up for a week and then it'll disappear, and then they'll start another campaign. But yeah, we see that a lot. We see all kinds of keywords they use. Most common ones will be something like Viagra. We'll have like jerseys for sale. A lot of times, they'll use name brands like Nike, Rolex, Prada. We've seen even some essay writing services for some reason. I'm not sure why, but that's common. We see, for example, pharmaceuticals a lot that will use specific medicine names. They'll use all kinds of replicas, like a replica bag of this, replica this, replica that. We'd see prescription, also payday loans. And obviously there's some adult related sites and things like that keywords. Justin Channell: So pretty much anything that people are going to be searching and clicking on are probably going to be targets for SEO spam? Krasimir Konov: Right. I think a lot of it commonly is pharma related because a lot of people are looking to buy medicine online, and a lot of times will require a prescription. So a lot of people are like, "Oh, let me see if I can find this medicine that I can buy it online somewhere." They don't need a prescription. They don't want to pay to visit a doctor and whatnot, and they'll look for it. And yeah. Justin Channell: Now, whenever somebody's website does get hacked with a SEO spam attack, what kind of effect can it have on the website beyond just being defaced? Krasimir Konov: Yeah. You can have a lot of things can happen, negative things. For example, the website can be blacklisted because of the keywords. And that usually represents a big red warning when you go on the website, depending on who blacklisted it. But if it's Google, for example, you'll see a big warning and it'll tell you this website contains malware or there's something wrong with this website. So, pretty much all the traffic on the website will be gone. And then you can also lose a lot of your reputation if there is a SEO spam on the website. For example, if you were ranked in say number five for certain keywords that represent your product on Google search engines, and then suddenly you get hit with SEO spam, then all these search engines then go and visit the website. And all of a sudden they're like, "Oh, there's all these weird key words on here, all this SEO spam that's causing a lot of mixed signals." And the search engines are like, "Oh, where do we rank this website now? Do we rank them with this product that's originally what the website is about? Or do we take into consideration all these other keywords that are mixed up that are SEO spam?" So, all of a sudden your website might go from being ranked number five on the first page to being on the 10th page. And then you rank for all these other keywords that you didn't intend to. And then people search for something completely different. They're searching for jerseys or something, or now they're searching for Prada products, and then suddenly your website pops up in there. So you're not really getting any good traffic, not targeted traffic. But, yeah. Justin Channell: Okay. So in a lot of ways, the effects of SEO spam would kind of be the same for defacements or any kind of malware with the blacklisting, but it does bring that kind of unique part to it where then it can also then bring traffic that you weren't expecting from somebody searching for jerseys, for example. I had not really ever thought about that. Krasimir Konov: Right, right. Yeah. It will definitely bring some traffic. I've seen a lot of times where websites will be connected. Let's say, there was 1,000 websites that were all infected with SEO spam, and it will kind of link each other to try to bring each other up into the rankings. And so you would see a lot of strange traffic from some random websites that were, for example, that were previously infected, even if they might not be anymore. But yeah, they'll be sending traffic to you or there'll be usually search engines sending you traffic, but for the wrong keywords. People are looking for something else, so obviously they're not going to be interested in your website. They're not going to buy anything because they're not looking for that. Justin Channell:  And now, so thinking of the way websites get infected, a very common way it seems to be is through phishing campaigns. What are some recommendations you have for the best ways to avoid becoming a phishing victim? Krasimir Konov:  Yeah. There is some ways. I mean, it depends really on the type of attack. Obviously, a lot of people, when they think of phishing, they think, "Oh, it's just like a PayPal phishing page and it just looks like the original," but it could be more subtle. If it's just a regular page where you're just going and you get redirected to another website, obviously the first thing to look is if you have the security padlocks, make sure that traffic is encrypted. A lot of these websites don't really have any encryption nowadays. More are starting to get that with pre SSLs being issued and whatnot. But that's the first thing to look and see, make sure. Anywhere you're typing your sensitive information, you want to make sure you have the padlock to make sure everything is encrypted. Krasimir Konov:  But also you want to look at the URL of the actual website you're visiting. A lot of times they'll try to hide it. So you might have to be careful and look closely. Something that might be an I will be an L or something like that. And a capital I and L might look kind of similar into your IRL, so you might miss something like that. Say, if you're looking for PayPal and it might replace the L with an I, and if you don't look closely, it might look exactly the same. And you're like, "Oh, okay, it's paypal.com," but not really. So yeah. Just pay attention to the URL, make sure it is the actual website. There's no paypal.com dot something, dot something else, dot com. Yeah. You want it to just say paypal.com, and then it'll have forward slash and something else. But yeah, it gets more complicated when you have, for example, a phishing page that's injected into a regular page. For example, you have a checkout page on a website that you're buying things from and you go through the checkout page and you're looking at where you type in your credit card information and whatnot. And you might have a phishing page that actually looks exactly like a little box that gives you where you put in your credit card number, or your name, your address, and all that. So that will be more subtle. For example, that could be also an I-frame that's just coming from another page. And it will look exactly like it's part of the website. You're on the legitimate website, but only that portion of the website is actually the phishing page. And you look at it and you're like, "Oh, okay. It looks fine. I'm just putting my credentials." So that one could be a lot harder to figure it out. Usually, if it's something like that, I look for something that looks kind of out of place. Maybe they didn't get the right font. It might not be the same as the original website or there might be something out of place, some fields that are missing or some fields that are squished into the left or the right. It looks kind of awkward. It's like, why would this be like this? The whole website looks professional. There's a pink background or something, for example, and then suddenly there's this white box in the middle. It's like, ah, it looks kind of weird, out of place. Justin Channell: So pretty much if anything looks slightly out of place, you really should double check everything at that point. Krasimir Konov: Right. Right. Yeah. Obviously there's more ways that you can check, but I wouldn't get into more technical, like inspecting elements and looking at stuff, but yeah. Justin Channell: And now another type of malware that's kind of, and it kind of plays in with whatever the other infection is, is backdoors. Can you give us some examples of what backdoors can be? It's mainly just when a hacker can get back into the site to reinfect it, but I know there are a ton of different methods. And what are some of the more common ones and then maybe some that really interesting that you've seen? Krasimir Konov: Yeah, there is a lot. They'll probably be one of the first things the hacker would do is if they compromise a website, obviously they'll try to spread backdoors and just inject code everywhere so they can get back in, even if the owner of the website or webmaster cleans it. They want to try and hide some malicious code somewhere so they can always get back in. There's many variations. A backdoor could be something as simple as a single line of code to just [inaudible 00:20:19] argument, some kind of string or something via get or post. Krasimir Konov: And then it runs into an eval, so it evaluates the code and executes it. And some backdoors are very complex and they can be included in, let's say you have a WordPress site and you have a specific login page where all the login credentials are being processed and everything else. They could even inject code into that to basically bypass the whole login mechanism so that they can just bypass everything. They don't even have to know any user. They don't have to know the password, nothing. They'll just include some lines in there, and every time they'll be just able to log in. Yeah. It gets pretty crazy. Yeah. I mean, there's all kinds of malware. There is always a malware, for example, that just targets credit cards and will just target the eCommerce websites. And they'll just try to steal the login credentials, I mean, the credit cards. They'll try to get your address, your credit card information, any kind of CVV code or whatever you typed into the billing address, everything. And then there's also malware like the backdoors that are just trying to keep the attacker in control and trying to get them back into the website. There's just so many variations of what a malicious user might want to do on a website. Some can be something as simple as just reinfecting the website. They don't want to keep control. They just want to keep reinfecting it with some kind of malware. So even if you clean it, it would just get reinfected. Some of them in the database, otherwise might be in the files. We've seen some added into a [inaudible 00:22:14] job that just keeps running on the server. There could be malware that is just a giant to, for example, attack out of websites. Like for example, a distributed denial service where they put the same malware on thousands of websites. And then they try to send traffic to one website to try to bring it down. Yeah. People try to do all kinds of stuff with websites. We've seen even some cryptocurrency mining malware that you go onto a website and suddenly your PC starts running like crazy. And you're like, what the hell is going on? Your fans turn on and the PC is 100% CPU. And it turns out that the website has some malware that's just by mining Bitcoins with your CPU and it's using all of it. Justin Channell: Wow. Okay. So one question now, the last question I have is of all the malware that you've seen, what do you think is the coolest piece of malware that you've ever seen? Krasimir Konov: I think the coolest would be the ones that are so subtle that you don't even know that it's there. For example, we've seen some that were pretty innovative. It will be just a one liner code that's just one line. And for example, it will be let's say 40-50 characters, something like that. And that's all it is. And they'll hide it somewhere in between the legitimate code. And if you don't know what you're looking for, you would never see it. It doesn't look suspicious. There is no links to some other website. There's no some kind of encrypted code or anything like that. It's just a simple one line. And then if you're just scrolling through the file looking for something, you would never see it. It just looks like all the other code. And then if you look closely, you're like, "Oh, there's this..." Look closely, and you're like, "Oh wow, this is not supposed to be there." And then you keep looking at it and you're like, "This looks really weird." And then you see that it's actually doing some malicious things and trying to evaluate some code or taking output from the outside, I mean, some input from outside, you can call it and give it code to run. Justin Channell: Well, Krasimir, thanks for coming on and talking to us for today. Krasimir Konov: Yeah. Thank you. Thank you. I'm so happy. I'm glad I was able to do this podcast and I can't wait to do another one. Justin Channell: Yeah, we'll have you on again. Thanks. Krasimir Konov: Thank you. Justin Channell: Thanks again to Krasimir for joining us here on the Sit Down. We'll be back with another episode next month. So be sure to subscribe on Apple podcasts, Spotify, Stitcher, or any podcasting platform. Also, be sure to follow us on social media at Sucuri Security and check us out at sucuri.net. That's S-U-C-U-R-I.net. I'm Justin Channell, And this has been the Sucuri Sit Down. Stay safe out there.

Our main goal at Sucuri is to make the internet a safer place. One of our investments is creating the best educational content about website security to share our knowledge with the community. With that in mind, we have decided to start podcasting.

The Sucuri Sit-Down podcast aims at explaining what is going on in the website security field. We are going to talk about the latest website vulnerabilities, attacks and hacks. We are also going to interview website security experts.

We have also launched the Sucuri Sync-Up, our weekly website security news briefing.

Check out our weekly briefings

You can find this wherever you get your podcasts, as well as our social media, and a flash briefing on Amazon Alexa smart speakers. Just search Amazon skills for “Sucuri Sync-Up,” to add the flash briefing and get new content delivered every week. It should be coming soon on Google Assistant briefings too!

Talk to us in our social media channels if you have any content suggestions for our podcasts. Stay tuned!

Podcast Transcript

Justin Channell: Hello, and welcome to the first episode of the Sucuri Sit Down. I’m your host Justin Channell and this podcast is here to bring you a recap of what’s been happening in website security for May 2020. Later in the show I’ll have our analyst Ben Martin on to discuss a credit card skimmer that was found on a WordPress site running WooCommerce, but first we’re going to take a quick look at other topics that we’ve published on our blog and Sucuri labs this month. First up, we had an analysis of malicious code that revealed reconnaissance strategies for hackers that were targeting WooCommerce. Our analyst, Luke Leal, said that the reconnaissance is performed by a malicious file that was injected into a website’s hosting environment, and this allowed a bad actor to map out WooCommerce installs from the same C panel user. Another topic that Luke wrote about on the blog was that our remediation team found a fishing campaign that was targeting YouTube creators.

The attack was first discovered on a compromised WordPress site, and it was designed to appear as though the victim received a YouTube creator award. Now in this attack, bad actors were looking to gain access to the victim’s username, password and recovery phone numbers with the recovery phone number, of course, being there to bypass any two factor authentication on the account. Once the victim would give up that information, it would be sent out through a PHP file through two separate post requests, and at the time of discovery, the malicious domain found in the redirect had not been blacklisted by any other major vendor. Now, during a routine research audit for our firewall, we discovered an unauthenticated persistent cross site scripting vulnerability in a WordPress plugin. This affected more than 40,000 users of the WP Product Review plugin. Our researcher, John Castro, said the bug has been fixed in the latest version.

So users of WP Product Review are urged to upgrade as soon as possible, also worth noting is that there were some interesting malware campaigns and vulnerabilities that came about from COVID-19 in April. This includes what we would expect, which are SEO spam and phishing campaigns using language that really played off of the fear and uncertainty of the pandemic. But one interesting vulnerability that came about was in WordPress learning management software, Lindsey O’Donnell at Threatpost had a story about a flaw that allowed students to steal personal information and gain teacher privileges to change grades. So, hopefully any educational resources have updated their LMS plugins. Now the three that were targeted were LearnPress, LearnDash and LifterLMS. So those three are going to be especially important to keep up to date. Now, April also saw eCommerce platforms take a big hit from hackers. Our teams reported new skimmers found on eCommerce sites running on open source platforms like Magento and WooCommerce, but even paid platforms like PinnacleCart.

Now, that WooCommerce skimmer blog post got a lot of people talking. So I wanted to get the chance to let Ben Martin, the analyst who blogged about the skimmer, to sit down and explain it a little bit more. We’re going to be sitting down with Ben in just a moment, but first I wanted to let you know about the Sucuri Sync-Up. That’s our weekly website security news briefing. You can find this anywhere you get your podcasts as well as our social media and now on Amazon Alexa smart speakers. Just search ‘Amazon skills for Sucuri’ that’s S U C U R I Sync-Up and add the flash briefing to get new content delivered every week now on with the show.

All right, so I’m here with Ben Martin. He’s a security analyst here at Sucuri. Ben, can you tell us a little bit about what you do?

Ben Martin: Yeah, I would love to, happy to be here. Thanks for having me on, my name is Ben I hail from Victoria British Columbia, and I’ve been a security analyst at Sucuri for just about six and a half years now. I’ve been, working in the trenches, cleaning websites for quite a while now. I mean, basically the short of it is when your website gets hacked, what do you do? You call Sucuri and I’m the guy that cleans your website, removes the malware. I work with a lot of websites, kind of the more difficult cases, I work with a lot of eCommerce websites, I work not just with WordPress, but I work with Magento and PrestaShop and OpenCarts and now recently we’ve started to see credit card swipers on WooCommerce. I wrote an article about it that was posted on our blog.

Justin Channell: That did really well, it got picked up a little by a lot of publications, like Bleeping Computer and Threatpost, and it was the most popular story on our blog last month. A lot of people were, talking about it. So that’s why I kind of wanted to have you on to dig into it a little bit deeper. Can you tell us exactly how does it work?

Ben Martin: Well, that’s an excellent question. I think the first time we saw a credit card swiper targeting WooCommerce was kind of late last year, but the same malware was also affecting Magento websites. So it wasn’t necessarily targeting the WooCommerce platform, but this was the first time that I’d actually seen, a dedicated purpose-built credit card swiper targeting the WooCommerce platform. This wasn’t like a vulnerability and WooCommerce, there’s nothing wrong with WooCommerce. A lot of people think, they probably saw my blog post and were like, ‘oh no, WooCommerce isn’t safe to use anymore’ but no, it just so happened to be targeting it. There’s nothing wrong with WooCommerce, it’s a fine plugin, as long as you keep your stuff updated, it’s safe to use it’s okay.

In fact, it is the most popular eCommerce solution on the web now. So far as that’s concerned, it was only a matter of time before we started seeing attacks targeting this platform. But what was interesting about the malware is that it didn’t actually target the WooCommerce files themselves. If you are a WordPress eCommerce website owner, and you use WooCommerce, and you start getting complaints from your clients about ‘my clients or credit card details are getting stolen.’ Well, the first thing you’re going to do is probably re-install WooCommerce or, check those plugin files, that stands to reason, right? But this attack wasn’t targeting those files at all.

Similar to another client that I worked with last week, another new WooCommerce credit card swiper, both of these attacks targeted files that were sure to load on all pages of the website. In the first instance, the case that I wrote about on our blog, it largely targeted the WordPress core files, right? So of course, that’s going to load on pretty much every page on the website, depending on which files you target. And this other client that I worked with last week, the targeted files were interestingly Google Analytics, because that is going to load on every page on the website, right? So it was a clever kind of maneuver by them. In the first instance it was, I mean, honestly, it was pretty easy to find because a check of the integrity of the WordPress core files is kind of the first thing you do, if you’re not able to find the payload on a website. But the second case that I worked with last week with the Google Analytics injection, that was a little more sneaky because you’re talking about checking the plugin integrity of the files, right? And there are thousands of WordPress plugins and there’s sometimes dozens, hundreds of different versions of those plugin files. But to answer your question, basically the short of it is that the attackers would intercept the payment details or the transaction details, credit card numbers, verification codes, all that stuff, and dump those details into an image file that was somewhere in WP content/upload/whatever, and download them and then clear the files. That was an interesting thing because when I saw in the malware that it was dumping the payment details into these image files, first thing you’re going to do is, well, let’s check out those image files and see what’s in there. And they were all empty. Which was very interesting because normally attackers are not so … usually they’re lazier than that.

So I think what they were doing was actually grabbing the payment details from these image files and then saving them and then clearing out the files. What does that do? Well, that makes it more difficult for the website owner to understand the scope of the compromise. How many of my clients were infected? Who do I notify to contact their credit card companies? That information’s just not there. I mean, it was very interesting. Like I said, it was only a matter of time before we started seeing this. And in fact, if anything, I’m surprised that it took the attackers so long to start targeting WooCommerce.

Justin Channell: Yeah. And now we know a little bit about what the attackers were doing when they got in there. How did they get in, in the first place?

Ben Martin: I get asked that question every single day at work. We don’t do a lot of forensics at Sucuri. Our position is typically just burn it all. Change all your passwords, because I find that trying to pinpoint exactly how they got in and which vulnerability did they exploit and which command did they run and what country were they from, in my view encourages a very myopic, narrow scope of what you’re concerned about. If your website gets infected, just change everything. Change all your passwords. But in any event, I’m not entirely sure exactly what caused the compromise, but attackers typically go for low hanging fruit. So really all they would have to do is brute force a WP admin administrator account and then they’re in. That’s it.

Brute force, for those of you who aren’t aware is trying sequentially all the most common passwords until you get in, which is why obviously it’s very important to have long and complex passwords. But I mean, really all you have to do … I see this every day, all the time, once the attackers can establish … once they’re into WP admin and get their administrator access, injecting the site is trivial. It’s child’s play. All you have to do is go to the theme editor, go to the 404.php file, upload your filesman backdoor web shell, and then connect to that, and then you have full access to the file system. You could connect to the database, everything.

So probably if I were to guess, the attackers got in through probably WP admin and once you’re in there, you can … by default … and this is one of those many examples of why out of the box configurations are typically not very secure is because WordPress wants to be easy to use and it wants to be convenient. And so by default, unless you turn this off, administrators can directly edit files on the file system. And so all you have to do is go to the theme editor, upload your backdoor, whatever, there, you’re done. Easy, trivial. Which is one of the reasons why in the blog article that I wrote is that you should … unless you make heavy use of the direct file editing from WP admin, turn that off. So all you have to do is disallow file edit to your WP config file and even if one of your admin accounts gets compromised, they’re not going to be able to edit files in that same way.

Justin Channell: Since it was only a matter of time really until a WordPress eCommerce site running WooCommerce would get targeted by a credit card swiper, what kind of a eCommerce site … or what kind of malware usually targets a WordPress site? What do they usually see whenever you’re cleaning them up?

Ben Martin: Oh, just regular … Regular for me, as a security analyst. Phishing, spam, Viagra spam, redirects to tech support scams, redirects to adult dating websites. This is the usual stuff that we see and I’ve even seen Magento websites compromised with this, from my perspective, pedestrian, run-of-the-mill everyday malware. So that’s usually what we see on WordPress. Again, the attackers always go for low hanging fruit and the more difficult it is for them to attack or spread their malware, the less you tend to see it. And so this is also why in the wake of new vulnerabilities that get disclosed and popular plugins or themes, you’ll see spikes in certain types of malware that will affect thousands or tens of thousands or sometimes more websites. But usually it’s spam, phishing, malicious redirects is the stuff that we see the most. But I work with a lot of the more difficult cases that come to Sucuri, and so I work with a lot of eCommerce websites. So I see a lot of credit card swipers too.

Justin Channell: Now, in terms of swiper versus skimmer … Sometimes I hear those terms a lot. Now, are those the same thing? Are they interchangeable or is there a difference between one or the other?

Ben Martin: They are interchangeable terms. They’re basically the same thing. And one interesting quirk about this type of malware that I did mention in the blog article at Sucuri, the amount of money that these attackers make on stolen credit cards are … you have to steal a lot of credit card numbers and sell a lot of them on the black market for them to be profitable. So in fact, for anybody interested in internet security, I would recommend the book Spam Nation by Brian Krebs. He goes into a lot of stuff, but one of the interesting things I learned from that book was that credit cards can go for as low as a few … a stolen credit card number on the black market can cost a couple dollars, like

Two or three bucks because the rate on returns is low. So if you buy a credit card number off of the dark web, if you want to call it that, you have a very limited amount of time to use that credit card and a limited number of things that you can buy with it. Because the first thing that’s going to happen is that as soon as the credit card owner looks at their statement and sees these strange transactions they don’t recognize, and activity out of Estonia or whatever, they’re going to call their credit card company and they’re going to cancel it. And so they can’t actually do much with a lot of these cards. And so you actually have to have a pretty substantial amount of these cards to make any meaningful sum of money with them. And some people do, but you know, probably most attackers aren’t even making that much cash on them anyway.

Justin Channell: Yeah. And probably even with… Most banks are going to alert people probably before even they see it on the statement. Generally, I think anytime I’ve ever had a card number compromise, it’s like I get the call pretty much within seconds of them trying to use it. So I don’t know if that’s the same with all banks or if I’ve just been lucky every time, but yeah. I’ve always questioned like, well, how long do they even get to have those numbers and really get to have that pay off at the end. Now, one thing I was kind of curious about is how does it work with dumping the information into a JPEG or a PNG image? Is that akin to real images? Or does it just kind of like dump it into a file that’s been named JPEG to hide it?

Both are true. I’ve seen both. In fact, there was another blog piece I wrote God, I think it was a couple of years ago now, but it was a Magento website. I mean, you can, if you’re writing a piece of code, you can make the output dump to whatever you want, right? It can be dot PNG or dot JPEG or whatever. Most of the time, they just happen to have that file extension. And if you actually try to open it in your browser or whatever, it’s just going to say error loading the image. But I’ve seen cases before where it was a fully functional image and related to the products that the website was selling, which was very clever.

In this case, I don’t know because the files were zero bytes in size by the time it got to them. I would say it’s probably a lot more common for them to just happen to have that file extension and not actually be custom images. Because I mean, by the time their malware is found by someone like myself, for example, I’m going to see whatever content has been dumped in there, whether it’s a legit image or not. So it’s not in a super effective way of obfuscating or hiding their tracks, but I have seen both before.

Justin Channell: How have skimmers evolved and increased over the years?

Ben Martin: Oh, very good question. I remember it was the autumn or winter, I think, of 2015. And we started seeing all these Magento websites come into our queue. Most of the websites that we work with naturally are WordPress and that’s not because WordPress has any inherent flaws in it or anything like that, it’s just that it is the most commonly used content management system, therefore it is the most targeted. And, and so there’s nothing wrong with- I hear a lot of people say things like, oh, people get hacked because they use WordPress or Magento. Like, no. That’s not how it works like at all.

But I think it was the winter of 2015 when we kept seeing these Magento websites come into our queue, which was very odd for us. We had never seen so many e-commerce websites come at kind of the same time. And that was when credit card swiping kind of really took off as far as I know. I’m sure it was a thing before that, but that’s when it started becoming kind of more commonplace, more organized and, certain platforms were getting targeted with malware, in this case, Magento. Now that kind of didn’t really change much for a while. You would sort of see the same types of malware pop up on other eCommerce platforms like PrestaShop and OpenCart and X-Cart and osCommerce. In many cases, interestingly, a lot of this malware is kind of, kind of interchangeable.

When our research team writes a signature for credit card swiping malware, they’ll often name it Magento shoplifts zero one three, or whatever, right? And then you’d be working on a PrestaShop website and you’d see a Magento signature get triggered. So it’s like, they’re targeting multiple platforms with exactly the same malware. And why wouldn’t they, right? So that didn’t really change up until just a few months ago where, and I’ve been seeing WooCommerce swipers pop up a lot this year. 2020s is definitely the year when that has shifted over to the WordPress e-commerce market and why wouldn’t it, right? Again, I want to stress that it’s not like they’re targeting it because it’s vulnerable or there’s something wrong with it, it just so happens that that’s a very popular e-commerce solution for small business owners, and so it was only a matter of time. And I’ve been seeing new WooCommerce swipers, like all year. They’re popping up a lot.

Justin Channell: Wow. So what do you recommend to WooCommerce store owners and even just eCommerce store owners in general that want to avoid hacks and any kind of credit card swipers getting on their site?

Ben Martin: Well, number one is take security seriously. I can’t stress that enough. It is something that’s, I mean- I’ve been working with website owners for many years now, and the trend tends to be that people don’t seem to care about security on their website until their website is belching out malware and blacklisted by Google. It’s kind of a very reactive attitude that people have towards it.

So the number one thing, just generally speaking that I would recommend, is that if you are, I mean, any website owner at all, but especially if you’re dealing with people’s payment information, processing transactions and whatnot, is that you have a responsibility as a website owner to take care of those people. Because a lot of stuff can go wrong, as I have seen. So number one would be take security seriously. What does that mean? Keep all of your software up to date, don’t have unnecessary plugins or themes installed, have long and complex passwords, use file integrity monitoring, we have the security scanner, WordPress plugin that you can use. Just all the basic stuff that we’ve been talking about for years.

I would say also, as I mentioned at the beginning of this interview. If you do not heavily rely on direct file editing in WordPress, you should disable that in WP config. Obviously having a SSL certificate is not going to hurt, it’s not going to prevent you from getting hacked, but have one anyway.

I think that you should also … as a eCommerce website owner in particular, you’re probably going to want to choose your platform pretty carefully. So for example, if your website store doesn’t really require you to have a high degree of customization or a lot of custom stuff you want to do with it. Then you could use something like Etsy or Shopify. You can just offload all that responsibility onto someone whose job it is to keep that secure. And then you don’t have to worry about it. So choosing your platform.

And if you’re going to use a WordPress and WooCommerce, or if you’re going to use Magento, or if you’re going to use PrestaShop or whatever. Just make sure you choose your eCommerce solution based on the needs of your store. And if you don’t require a high degree of customization or crazy plugins you want to use or whatever. Then choose something else. That being said, WooCommerce is fine. Magento, if you keep it up to date and patched is fine. All of these eCommerce solutions are fine. But they have varying degrees of responsibility associated with them.

So for example, Magento is a little … to say the least, a little more tricky to maintain than a WordPress, WooCommerce store. It’s not necessarily just a one click update that you can just do when you have your morning coffee or whatever. And so typically, Magento websites, a lot of them are dealing with not tens of thousands, not hundreds of thousands. But kind of millions in dollars of sale. And so they have that ability to kind of scale and invest in maintenance and all that sort of work that’s just associated with having a website. But if you’re selling widgets and trinkets, then you don’t need something so complicated.

And another thing that I touched on briefly earlier is that, there’s a common myth that, Oh, well, people get hacked because they use WordPress. Or people get hacked because they use Magento. They get hacked because they use these prebuilt solutions. And I have worked with clients who have custom coded their own eCommerce websites. And I’ll tell you, it’s not pretty. Those things are more vulnerable than anything else I’ve ever seen. Because e-commerce is very complicated. It requires all sorts of degrees of different features and requirements.

And those things are best, I would say, best left to the open source community. Because when there’s security vulnerabilities and patches that need to be issued. Yeah, that happens. It does happen. It happens with any software. There will be bugs, there will be security vulnerabilities, there be patches that need to be issued. But when you’re working with software, like WooCommerce, like Magento, like WordPress, you have the open source community there to spot those bugs and to write patches for them. And react to whatever problems happen with them.

So I would say that, the fact that people get hacked because of the certain software that they use is a total myth. The fact of the matter is, if you don’t want any bugs or security vulnerabilities in your software, then don’t have software. But that’s obviously not how the web works. And so that’s just the reality and what we have to deal with. And that’s just kind of how it works.

Justin Channell: Yeah. Yeah. Now in your time here at Sucuri, what is the coolest malware that you’ve encountered?

Ben Martin: What a wonderful question. I have seen everything under the sun. I’ve seen all sorts of crazy malware. I’ve seen malware that … incredibly complicated stuff. And I’ve seen malware that will delete the database just purely out of spite or I’ve seen a lot of things.

But I would say that probably the coolest hack that I’ve ever seen was something that my colleague Caesar wrote about. And it was an open cart hack. And all it was, was one character. It was just the comment out character. And what it did was it commented out the part of the CMS platform that authenticates the password. What happened was they just put in one character. And so when you’d go to website.com/admin, whatever it was, you would just press login and then you’re in the admin section.

Justin Channell: Wow.

Ben Martin: Without having to enter in a username or password. And that was incredible, like credit where credit was due. That was awesome. Like that was awesome. So hard to find like one character difference. And then they had like full administrative access to the website just from doing that one tiny little thing. So that was easily the coolest hack I’ve ever seen.

Justin Channell: Wow. That does sound amazing. Amazing what the power of just one single character can do.

Ben Martin: One character. Yeah, that’s all it took.

Justin Channell: All right. Well, Ben, thank you very much for coming on and explaining a little bit more about that to us.

Ben Martin: Hey, my pleasure and hope to be on again sometime soon.

Justin Channell: Thanks again to Ben Martin for being our first guests on The Sucuri Sit Down. We’ll be back with another episode next month. So be sure to subscribe on Apple podcasts, Spotify, Stitcher, or any podcast platform. Also be sure to follow us on social media at Sucuri Security and check us out at sucuri.net. That’s S-U-C-U-R-I .net for more security content. I’m Justin Channell and this has been the Sucuri Sit Down. Stay safe out there.

Subscribe for more podcasts

You May Also Like