Threat actors target a range of services often either due to credential resale value or to target higher value accounts in credential stuffing campaigns. Last month, WMC Global tracked three unique Netflix-branded phishing campaigns that resulted in over 390,000 unique URLs (Figure 1). These campaigns were solely distributed via text messages (SMS) to US mobile numbers. WMC Global’s analysis in the campaigns provides unparalleled visibility into Netflix-branded phishing attacks.

StackedGraph - Screenshot from 2020-09-03 17-29-23Figure 1: Sample Netflix-Branded Phishing Campaigns in August 2020

 

The Phishing Page

The same phishing kit was used across the three Netflix-branded campaigns. With this phishing kit, cataloged by KITIntel, consumers view a message explaining why they need to submit their login credentials and payment information again; this demonstrates a stark contrast to more traditional Netflix-branded phishing attacks that simulate the Netflix customer login environment.

The phishing site initially requires a user to enter their email address (Figure 2) and then proceeds to ask for the user’s address and name. This second page, continue.php, also displays the users IP address and email address which was entered on the first page (Figure 3).

1 Screenshot from 2020-09-04 09-44-12                    2 - Screenshot from 2020-09-04 09-30-34
Figure 2: Netflix-Branded Phishing Page, User Flow 1     |     Figure 3: Netflix-Branded Phishing Page, User Flow 2

The final page of the phishing site asks the user to enter their payment card details (Figure 4). Upon completing the required data entry into the phishing page, the site hides the form input and notably does not redirect the user to the legitimate Netflix site, like many other phishing sites do.

Screen Shot 2020-09-04 at 5.40.57 AM (1)
Figure 4: Netflix-Branded Phishing Page, User Flow 3

In all three campaigns, the phishing sites are configured so that only a consumer accessing the site using a mobile user-agent is routed to the phishing site. If accessed without a mobile user-agent, the site displays a 404 status page and does not reveal the phishing site to the consumer.

WMC Global first detected these large-scale SMS-based phishing campaigns targeting Netflix customers in early August--on the first day 1,093 unique URLs were identified. The text message content for the three campaigns was identical aside from each message having a unique URL. Padding each message with a unique URL gives the threat actor the ability to track whether or not a targeted phone number clicks on the phishing link. Shortly after the discovery of the initial campaign, a much larger campaign launched, taking the prize for largest SMS-based phishing campaign tracked by WMC Global to date.

 

Campaign #1

The initial campaign was launched in early August, and for the first few days it sent only one URL per day. However, on August 5th, the total number of unique URLs for this campaign exceeded 1,000. This was the start of a very notable campaign. The campaign continued to send out URLs and on August 6th the campaign sent out 6,424 unique URLs. The upward trend in the number of URLs sent per day continued throughout the month of August. The largest day of the campaign occurred on August 25th, where WMC Global detected over 95,000 unique URLs sent during one day via SMS channels (Figure 5).

Camp2 - Screenshot from 2020-09-03 14-32-22
Figure 5: Netflix-Branded Phishing URLs Sent via SMS in August 2020

The total number of phishing URLs sent via SMS during the initial August campaign was 385,759. Given the rise in usage of the Netflix platform in 2020, it is no wonder the popular streaming service has been the target of large campaigns.

This campaign leveraged over 200 unique domains to host all the phishing kits. The vast majority of the domains were hijacked domains; however, some were stood up for the campaign using services such as dynamic DNS providers.

 

Campaign #2

In the second campaign tracked by WMC Global, the URLs all contained distinctive PHP parameters enabling the team to efficiently track and monitor the campaign.

The first, and largest for this campaign, batch of URLs were sent out by the threat actor on August 3rd, totaling 1,464 unique URLs sent within a 24 hour period. The threat actors continued to send small volumes of URLs for the rest of the month, averaging 19 URLs a day.

Camp1 - Screenshot from 2020-09-03 14-24-42

In total, WMC Global detected 1,817 events related to this campaign over the month of August. This campaign consisted of 30 unique domains the threat actors leveraged to host their phishing kits.

 

Campaign #3

On August 20th, a third and final campaign activated. Threat actors sent out 3,360 unique URLs within a six hour period. Although this campaign was very short lived, it distributed a large volume of URLs as compared to other ongoing campaigns at the time. The change in URL design would constitute a change in tactics, techniques, and procedures (TTPs), which many threat intelligence teams and abuse desks could easily miss--a noteworthy shift in the campaign’s structure.

 

Conclusion

WMC Global observed a notable increase in SMS-configured and Netflix-branded phishing campaigns in August. The concurrent nature of the three campaigns and their utilization of the same phishing kit is intriguing, further to their differing volumes by campaign. Alongside the three campaigns outlined above, WMC Global tracked hundreds of small-scale and single site Netflix-branded phishing campaigns, which continue to propagate online targeting Netflix customers.

 

Indicators of Compromise

URL Regexes

Campaign #1

(https?:\/\/)?.*?netfl(i|x)?.*-\w{5,11}\.\w+-?(\.?\w+)*\/?$

Campaign #2

(https?:\/\/)?.*?(\.|-).*?netflix.*?\?\w{2,4}=\w{8,14}\/?$

Campaign #3

(https?:\/\/)?\w{3}-netflix\w{8}\..+?\..+?\/?$

 

 50 Random URL Samples

Campaign #1

http://app[.]netflixorg-ecvpohojdh[.]workalert[.]io

http://app[.]netflixorg-ekpxslttiu[.]workalert[.]io

http://app[.]netflixorg-gnvflumith[.]workalert[.]io

http://app[.]netflixorg-hrmpylzhww[.]workalert[.]io

http://app[.]netflixorg-iqmljvwymm[.]workalert[.]io

http://app[.]netflixorg-iroquqvmrl[.]workalert[.]io

http://app[.]netflixorg-kunkvswtoq[.]workalert[.]io

http://app[.]netflixorg-losnxxwuyw[.]workalert[.]io

http://app[.]netflixorg-lzlkqkspmm[.]workalert[.]io

http://app[.]netflixorg-mjlzvyvkrv[.]workalert[.]io

http://app[.]netflixorg-motuvtpopr[.]workalert[.]io

http://app[.]netflixorg-mxvwmqnmuo[.]workalert[.]io

http://app[.]netflixorg-nrlvlskjto[.]workalert[.]io

http://app[.]netflixorg-osnmzssqlq[.]workalert[.]io

http://app[.]netflixorg-tlrpjhmphw[.]workalert[.]io

http://app[.]netflixorg-ustjqurytq[.]workalert[.]io

http://app[.]netflixorg-vimvygknle[.]workalert[.]io

http://app[.]netflixorg-vthzihhmvh[.]workalert[.]io

http://app[.]netflixorg-wqjysikvjy[.]workalert[.]io

http://app[.]netflixorg-xsvoystooz[.]workalert[.]io

http://app[.]netflixorg-yfyxjovpoy[.]workalert[.]io

http://app[.]netflixorg-zcqtpzovom[.]workalert[.]io

http://app[.]netflixorg-zowhythdyv[.]workalert[.]io

http://applnetflix-otemdoxee[.]hodgelegalservices[.]com

http://miss[.]netflix[.]com-gehdolgo[.]choftv[.]ma

http://miss[.]netflix[.]com-ikwjiyxh[.]choftv[.]ma

http://miss[.]netflix[.]com-jergqmot[.]choftv[.]ma

http://miss[.]netflix[.]com-jjymyjpq[.]choftv[.]ma

http://miss[.]netflix[.]com-kyowzpwg[.]choftv[.]ma

http://miss[.]netflix[.]com-nqlpever[.]choftv[.]ma

http://miss[.]netflix[.]com-orrxuklk[.]choftv[.]ma

http://miss[.]netflix[.]com-pmzjqprg[.]choftv[.]ma

http://miss[.]netflix[.]com-pyyvlxmt[.]choftv[.]ma

http://miss[.]netflix[.]com-qpunryfo[.]choftv[.]ma

http://miss[.]netflix[.]com-qtvxulns[.]choftv[.]ma

http://miss[.]netflix[.]com-qxounjwn[.]choftv[.]ma

http://miss[.]netflix[.]com-qxtpviwu[.]choftv[.]ma

http://miss[.]netflix[.]com-rnwpkxks[.]choftv[.]ma

http://miss[.]netflix[.]com-rprnmith[.]choftv[.]ma

http://miss[.]netflix[.]com-rqrpstqv[.]choftv[.]ma

http://miss[.]netflix[.]com-rvrtnjni[.]choftv[.]ma

http://miss[.]netflix[.]com-uuuqnrtt[.]choftv[.]ma

http://miss[.]netflix[.]com-ypnxypuv[.]choftv[.]ma

http://miss[.]netflix[.]com-ysqynylm[.]choftv[.]ma

http://miss[.]netflix[.]com-znctpkrz[.]choftv[.]ma

http://netflix[.]com-up---czomwgdl[.]onlineindus[.]tv

http://netflix[.]com-up---ehcaoify[.]onlineindus[.]tv

http://netflix[.]com-up---kciovuuc[.]onlineindus[.]tv

http://netflix[.]com-up---xmuwphvc[.]onlineindus[.]tv

http://netflix[.]com-up---ywffxaxo[.]onlineindus[.]tv

Campaign #2

http://invalid[.]netflix[.]tv-applauncher[.]br-pashot[.]com/?relx=fjhlecqr

http://invalid[.]netflix[.]tv-applauncher[.]br-pashot[.]com/?relx=ooiquxhx

http://invalid[.]netflix[.]tv-applauncher[.]br-pashot[.]com?relx=fjhlecqr

http://invalid[.]netflix[.]tv-applauncher[.]br-pashot[.]com?relx=ooiquxhx

http://launch[.]netflix-app-us-failedtopay[.]assurica[.]in?nop=ymvylkrjks

http://launch[.]netflix-app-us-failedtopay[.]assurica[.]in?nop=yqyjsjjotnt

http://launch[.]netflix-app-us-failedtopay[.]assurica[.]in?nop=yzslyuzktzk

http://launch[.]netflix-app-us-failedtopay[.]assurica[.]in?nop=zmuwsnxowsy

http://launch[.]netflix-app-us-failedtopay[.]assurica[.]in?nop=znsxjstionx

http://launch[.]netflix-app-us-failedtopay[.]assurica[.]in?nop=zsncfroabej

http://launch[.]netflix-app-us-failedtopay[.]assurica[.]in?nop=zzigswkolx

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=bpwsvztlq

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=ftplpvrhwk

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=fuvlhinv

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=iucmsusfm

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=jlswmtrtf

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=jurvoylkju

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=kyjwirrlp

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=mjwyxyhzuk

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=mtqyzqvmrm

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=muvrywzoplu

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=nhzgvrgfzo

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=ohgykswnh

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=oxmxtwxwvnw

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=qoizmvcjlz

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=qwsnkwwy

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=qxfmguuxiif

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=qxrjvymy

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=rwmurkzqv

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=siyojsjmwmw

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=smogsykgpq

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=srtuvorr

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=ugwmjqngq

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=vjtxlykiliw

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=xoxvvnnp

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=xqmxnklv

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=xyzlgywtx

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=yyisntviqfo

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=zjhpxxsulv

http://lnc[.]appnetflix[.]tv-failedattemp[.]dafnegangelt[.]de?del=zsjxiquig

http://lnch[.]netflixus-tv-linkyourtv[.]mologi[.]co?apx=ffqrahmxco

https://bioanda[.]ca/netflix[.]com?app=kjgizqqv

https://bioanda[.]ca/netflix[.]com?app=lecihltvzu

https://bioanda[.]ca/netflix[.]com?app=lonlmnoxnqrpzq

https://bioanda[.]ca/netflix[.]com?app=mfxspsyl

https://bioanda[.]ca/netflix[.]com?app=mphftgjzqqx

https://bioanda[.]ca/netflix[.]com?app=qzvjplxvlxskpo

https://bioanda[.]ca/netflix[.]com?app=skuqyrzoxpsp

https://bioanda[.]ca/netflix[.]com?app=sotuoprtwjtmjj

https://bioanda[.]ca/netflix[.]com?app=uwvmqrlvxoojnm

Campaign #3

http://rev-netflixdzmeeqez[.]farmaciasponza[.]it

http://rev-netflixdzmeeqez[.]farmaciasponza[.]it

http://rev-netflixetuqlcyx[.]farmaciasponza[.]it

http://rev-netflixetuqlcyx[.]farmaciasponza[.]it

http://rev-netflixflgfluqz[.]farmaciasponza[.]it

http://rev-netflixflgfluqz[.]farmaciasponza[.]it

http://rev-netflixihtzsimo[.]farmaciasponza[.]it

http://rev-netflixihtzsimo[.]farmaciasponza[.]it

http://rev-netflixiumpzrow[.]farmaciasponza[.]it

http://rev-netflixiumpzrow[.]farmaciasponza[.]it

http://rev-netflixiysitqvt[.]farmaciasponza[.]it

http://rev-netflixiysitqvt[.]farmaciasponza[.]it

http://rev-netflixkknnqnxk[.]farmaciasponza[.]it

http://rev-netflixkknnqnxk[.]farmaciasponza[.]it

http://rev-netflixlgitusje[.]farmaciasponza[.]it

http://rev-netflixlgitusje[.]farmaciasponza[.]it

http://rev-netflixljplxvpy[.]farmaciasponza[.]it

http://rev-netflixljplxvpy[.]farmaciasponza[.]it

http://rev-netflixltxletne[.]farmaciasponza[.]it

http://rev-netflixltxletne[.]farmaciasponza[.]it

http://rev-netflixmryumpur[.]farmaciasponza[.]it

http://rev-netflixmryumpur[.]farmaciasponza[.]it

http://rev-netflixnmqdigcg[.]farmaciasponza[.]it

http://rev-netflixnmqdigcg[.]farmaciasponza[.]it

http://rev-netflixohwubgfh[.]farmaciasponza[.]it

http://rev-netflixohwubgfh[.]farmaciasponza[.]it

http://rev-netflixpfructoz[.]farmaciasponza[.]it

http://rev-netflixpfructoz[.]farmaciasponza[.]it

http://rev-netflixpqkdlola[.]farmaciasponza[.]it

http://rev-netflixpqkdlola[.]farmaciasponza[.]it

http://rev-netflixqoghcrjk[.]farmaciasponza[.]it

http://rev-netflixqoghcrjk[.]farmaciasponza[.]it

http://rev-netflixqsssuxol[.]farmaciasponza[.]it

http://rev-netflixqsssuxol[.]farmaciasponza[.]it

http://rev-netflixqtuotjjs[.]farmaciasponza[.]it

http://rev-netflixqtuotjjs[.]farmaciasponza[.]it

http://rev-netflixrdjwxjvy[.]farmaciasponza[.]it

http://rev-netflixrdjwxjvy[.]farmaciasponza[.]it

http://rev-netflixrgixmzjj[.]farmaciasponza[.]it

http://rev-netflixrgixmzjj[.]farmaciasponza[.]it

http://rev-netflixrorohpov[.]farmaciasponza[.]it

http://rev-netflixrorohpov[.]farmaciasponza[.]it

http://rev-netflixrrujxprn[.]farmaciasponza[.]it

http://rev-netflixrrujxprn[.]farmaciasponza[.]it

http://rev-netflixrwxpopkr[.]farmaciasponza[.]it

http://rev-netflixrwxpopkr[.]farmaciasponza[.]it

http://rev-netflixsiwgiffl[.]farmaciasponza[.]it

http://rev-netflixsiwgiffl[.]farmaciasponza[.]it

http://rev-netflixsnzounzq[.]farmaciasponza[.]it

http://rev-netflixzzmhzfjv[.]farmaciasponza[.]it