SlideShare a Scribd company logo
The “Great Cannon” Has Been Deployed Again
Summary
The ​Great Cannon​ is a distributed denial of service tool (“DDoS”) that operates by injecting
malicious Javascript into pages served from behind the ​Great Firewall​. These scripts, potentially
served to millions of users across the internet, hijack the users’ internet connection to make
multiple requests against the targeted site. These requests consume all the resources of the
targeted site, making it unavailable:
Figure 1:​ Simplified diagram of how the Great Cannon operates
The Great Cannon was the subject of intense research after it was used to ​disrupt access​ to the
website Github.com in 2015. Little has been seen of the Great Cannon since 2015, however
we’ve recently observed new attacks, which are detailed below.
Most Recent Attacks against LIHKG
The Great Cannon is currently attempting to take the website ​LIHKG​ offline. LIHKG has been
used to organise protests in Hong Kong. Using a ​simple script​ that uses data from ​UrlScan.io​,
we identified new attacks likely starting Monday November 25th, 2019.
Websites​ are indirectly serving a malicious javascript ​file​ from either:
● http://push.zhanzhang.baidu.com/push.js​; or
● http://js.passport.qihucdn.com/11.0.1.js
Normally these URLs serve standard analytics tracking scripts. However, for a certain
percentage of requests the Great Cannon swaps these on the fly with malicious code:
Figure 2: ​Malicious code​ served from the Great Cannon
The code attempts to repeatedly request the following resources through an image proxy on the
LIHKG website (at ​https://i.lih.kg/540/ ​) in order to overwhelm the LIHKG website and
prevent it from being accessible:
● https://66.media.tumblr.com/e06eda7617fb1b98cbaca0edf9a427a8/tumblr_oqrv3wHXoz1sehac7o1
_540.gif
● https://live.staticflickr.com/65535/48978420208_76b67bec15_o.gif
● https://i.loli.net/2019/09/29/hXHglbYpykUGIJu.gif
● https://na.cx/i/XibbJAS.gif
● https://na.cx/i/UHr3Dtk.gif
● https://na.cx/i/9hjf7rg.gif
● https://na.cx/i/qKE4P2C.gif
● https://na.cx/i/0Dp4P29.gif
● https://na.cx/i/mUkDptW.gif
● https://na.cx/i/ekL74Sn.gif
● https://i.ibb.co/ZBDcP9K/LcSzXUb.gif
● https://na.cx/i/6hxp6x9.gif
● https://img.eservice-hk.net/upload/2018/08/09/181951_60e1e9bedea42535801bc785b6f48e7a.g
if
● https://na.cx/i/E3sYryo.gif
● https://na.cx/i/ZbShS2F.gif
● https://na.cx/i/LBppBac.gif
● http://i.imgur.com/5qrZMPn.gif
● https://na.cx/i/J3q35jw.gif
● https://na.cx/i/QR7JjSJ.gif
● https://na.cx/i/haUzqxN.gif
● https://na.cx/i/3hS5xcW.gif
● https://na.cx/i/z340DGp.gif
● https://luna.komica.org/23/src/1573785127351.gif
● https://image.ibb.co/m10EAH/Atsps_Smd_Pc.gif
● https://img.eservice-hk.net/upload/2018/06/02/213756_d33e27ec27b054afcc911be1411b5e5a.g
if
● https://media.giphy.com/media/9LZTc9dQjAAL5jmuCK/giphy.gif
● https://img.eservice-hk.net/upload/2018/06/13/171314_55de6aac9af0e3c086b83bf433493004.g
if
These may seem like an odd selection of websites and memes to target, however these meme
images appear on the LIHKG forums so the traffic is likely intended to blend in with normal
traffic. The URLs are appended to the LIHKG image proxy url (eg; ​https://na.cx/i/6hxp6x9.gif
becomes ​https://i.lih.kg/540/https://na.cx/i/6hxp6x9.gif?t=6009966493​) which causes LIHKG
to perform the bandwidth and computationally expensive task of taking a remote image,
changing it’s size, then serving it to the user.
Impact
It is unlikely these sites will be seriously impacted. This is partly due to LIHKG sitting behind the
anti-DDoS service Cloudflare, and partly due to some bugs in the malicious Javascript code. We
won’t discuss the bugs here as it would provide suggestions on how to improve the attack.
Still, it is disturbing to see an attack tool with the potential power of the Great Cannon in use
more regularly, and again causing collateral damage to US based file-hosting services.
Mitigations
These attacks would not be successful if the following resources were served over HTTPS
instead of HTTP:
● http://push.zhanzhang.baidu.com/push.js
● http://js.passport.qihucdn.com/11.0.1.js
You may want to consider blocking these URLs when not sent over HTTPS.
Timeline of Historical Great Cannon Incidents
Below we have described previous Great Cannon attacks, including previous attacks against
LIHKG in September 2019.
2015: GreatFire and GitHub
During the 2015 attacks, DDoS scripts were sent in response to requests sent to a ​number of
domains​, for both Javascript and HTML pages served over HTTP from behind the Great
Firewall.
A number of distinct stages and targets were identified:
● March 3 to March 6, 2015: Initial, ​limited test firing​ of the Great Cannon starts.
● March 10: Real attacks start against a Chinese-language news site (Sinasjs.cn).
● March 13: New attacks against an organisation that monitors censorship (GreatFire.org).
 
Figure 3:​ Snippet of the code used in early Great Cannon attacks. Later scripts were improved
to not require external javascript libraries.
● March 25: Attacks against GitHub.com start, targeting content hosted from the site
GreatFire.org and a Chinese edition of the New York Times. This resulted in a ​global
outage​ of the GitHub service.
Figure 4:​ The URLs targeted in the attack against Github.com.
● March 26th - Attacks began using code hidden with the Javascript obfuscator “​packer​”: 
Figure 5:​ Snippet of the obfuscated code. Current attacks continue to use the same
obfuscation.
Research by ​CitizenLab​ identified multiple likely points where the malicious code is injected.
The Great Cannon operated probabilistically, injecting return packets to a certain percentage of
requests for Javascript from certain IP addresses. As noted by commentators at the time, the
same functionality could also be used to insert exploitation code to enable “​Man-on-the-side​”
attacks to compromise key targets.
2017 and Onward: Attacks against Mingjingnews
In August 2017, Great Cannon attacks against a Chinese-language news website
(​Mingjingnews.com​) were ​identified​ by a user on Stack Overflow. The code in the 2017 attack is
significantly re-written and is largely unchanged in the attacks were seen in 2019.
 
 
Figure 6:​ An excerpt of the code to target Mingjingnews.com in 2017.
We have continued to see ​attacks against​ Mingjingnews in the last year.
2019: Attacks Against Hong Kong Democracy Movement
On August 31, 2019, the Great Cannon ​initiated​ an attack against a website (lihkg.com) used by
members of the Hong Kong democracy movement to plan protests.
The Javascript code is very similar to the packed code used in the attacks against Mingjingnews
observed in 2017 and onward, and the code was served from at least two locations:
- http://push.zhanzhang.baidu.com/push.js
- http://js.passport.qihucdn.com/11.0.1.js
Initial versions targeted a single page on lihkg.com.
Figure 7:​ The Javascript code originally targeting lihkg.com.
Later versions targeted multiple pages and attempted (unsuccessfully) to bypass Cloudflare
DDoS mitigations that the website owners had implemented.
 
Figure 8:​ The Javascript code later targeting lihkg.com.
Detection
We detect the Great Cannon serving malicious Javascript with the following Suricata rules from
Alien Labs and Emerging Threats Open.
alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"AV INFO JS File associated with Great
Cannon DDoS"; flow:to_server,established; content:"GET"; http_method; content:"push.js";
http_uri; content:"push.zhanzhang.baidu.com"; http_host; flowbits:set,AVCannonDDOS;
flowbits:noalert; classtype:misc-activity; sid:xxx; rev:1;)
alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"AV INFO JS File associated with Great
Cannon DDoS"; flow:to_server,established; content:"GET"; http_method; content:"11.0.1.js";
http_uri; content:"js.passport.qihucdn.com"; http_host; flowbits:set,AVCannonDDOS;
flowbits:noalert; classtype:misc-activity; sid:xxx; rev:1;)
alert http $EXTERNAL_NET any -> $HOME_NET any (msg:"AV INFO Potential DDoS attempt related
to Great Cannon Attacks"; flow:established,to_client; content:"200"; http_stat_code;
file_data; content:"isImgComplete"; flowbits:isset,AVCannonDDOS;
reference:url,otx.alienvault.com/pulse/5d6d4da02ee2b6fbff703067; classtype:policy-violation;
sid:xxx; rev:1;)
alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"AV INFO JS File associated with Great
Cannon DDoS"; flow:to_server,established; content:"GET"; http_method; content:"hm.js";
http_uri; content:"hm.baidu.com"; http_host; flowbits:set,AVCannonDDOS; flowbits:noalert;
classtype:misc-activity; sid:xxx; rev:1;)
alert http $EXTERNAL_NET any -> $HOME_NET any (msg:"AV MALWARE GreatCannon Malicous JScript
Inbound"; flow:established,to_client; content:"200"; http_stat_code; file_data;
content:"!function(n){"; depth:1000;
content:"1e9*n[a][s](9*n[a][g]())+n[a][s](999999999*n[a][g]())"; distance:0;
content:"n[y]=3e5,n[_]=1482184792,n[p]=1e6"; distance:0;
reference:url,otx.alienvault.com/pulse/5d6d4da02ee2b6fbff703067; classtype:trojan-activity;
sid:xxx; rev:1;)
ET WEB_CLIENT Great Cannon DDoS JS M1 sid:2027961
ET WEB_CLIENT Great Cannon DDoS JS M2 sid:2027962
ET WEB_CLIENT Great Cannon DDoS JS M3 sid:2027963
ET WEB_CLIENT Great Cannon DDoS JS M4 sid:2027964
Additional indicators and code samples are available in the Open Threat Exchange ​pulse​.

More Related Content

Similar to The great cannon has been deployed again

Cryptojacking - by Vishwaraj101
Cryptojacking - by Vishwaraj101Cryptojacking - by Vishwaraj101
Cryptojacking - by Vishwaraj101
v_raj
 
JSconf JP - Analysis of an exploited npm package. Event-stream's role in a su...
JSconf JP - Analysis of an exploited npm package. Event-stream's role in a su...JSconf JP - Analysis of an exploited npm package. Event-stream's role in a su...
JSconf JP - Analysis of an exploited npm package. Event-stream's role in a su...
Jarrod Overson
 
Compromised e commerce_sites_lead_to_web-based_keyloggers
Compromised e commerce_sites_lead_to_web-based_keyloggersCompromised e commerce_sites_lead_to_web-based_keyloggers
Compromised e commerce_sites_lead_to_web-based_keyloggers
Andrey Apuhtin
 
HallTumserFinalPaper
HallTumserFinalPaperHallTumserFinalPaper
HallTumserFinalPaper
Daniel Tumser
 
DevOps Automation Principles
DevOps Automation PrinciplesDevOps Automation Principles
DevOps Automation Principles
E2E Networks Limited
 
STUDY OF DEEP WEB AND A NEW FORM BASED CRAWLING TECHNIQUE
STUDY OF DEEP WEB AND A NEW FORM BASED CRAWLING TECHNIQUESTUDY OF DEEP WEB AND A NEW FORM BASED CRAWLING TECHNIQUE
STUDY OF DEEP WEB AND A NEW FORM BASED CRAWLING TECHNIQUE
IAEME Publication
 
Software management, the seasonal return of DDoS - This Week in Security.pdf
Software management, the seasonal return of DDoS - This Week in Security.pdfSoftware management, the seasonal return of DDoS - This Week in Security.pdf
Software management, the seasonal return of DDoS - This Week in Security.pdf
Lior Rotkovitch
 
Chrome Extensions: Masking risks in entertainment
Chrome Extensions: Masking risks in entertainmentChrome Extensions: Masking risks in entertainment
Chrome Extensions: Masking risks in entertainment
Eduardo Chavarro
 
A look at the prevalence of client-side JavaScript vulnerabilities in web app...
A look at the prevalence of client-side JavaScript vulnerabilities in web app...A look at the prevalence of client-side JavaScript vulnerabilities in web app...
A look at the prevalence of client-side JavaScript vulnerabilities in web app...
IBM Rational software
 
Deep and Dark internet Safari, How to hire a hacker? Robbrecht van Amerongen
Deep and Dark internet Safari, How to hire a hacker? Robbrecht van AmerongenDeep and Dark internet Safari, How to hire a hacker? Robbrecht van Amerongen
Deep and Dark internet Safari, How to hire a hacker? Robbrecht van Amerongen
Getting value from IoT, Integration and Data Analytics
 
The Digital Demise - by Robin Turner
The Digital Demise - by Robin TurnerThe Digital Demise - by Robin Turner
The Digital Demise - by Robin Turner
robinturner
 
Case Study: Q2 2014 Global DDoS Attack Report | Akamai Document
Case Study:  Q2 2014 Global DDoS Attack Report | Akamai  DocumentCase Study:  Q2 2014 Global DDoS Attack Report | Akamai  Document
Case Study: Q2 2014 Global DDoS Attack Report | Akamai Document
Prolexic
 
SeanRobertsThesis
SeanRobertsThesisSeanRobertsThesis
SeanRobertsThesis
Sean Roberts
 
A web content analytics
A web content analyticsA web content analytics
A web content analytics
csandit
 
(In)Security Implication in the JS Universe
(In)Security Implication in the JS Universe(In)Security Implication in the JS Universe
(In)Security Implication in the JS Universe
Stefano Di Paola
 
JavaScript Supply Chain Security
JavaScript Supply Chain SecurityJavaScript Supply Chain Security
JavaScript Supply Chain Security
Adam Baldwin
 
CS6262_Group9_FinalReport
CS6262_Group9_FinalReportCS6262_Group9_FinalReport
CS6262_Group9_FinalReport
Garrett Mallory
 
Ignorance is bliss, but not for MongoDB
Ignorance is bliss, but not for MongoDBIgnorance is bliss, but not for MongoDB
Ignorance is bliss, but not for MongoDB
ITrust - Cybersecurity as a Service
 
bh-usa-07-grossman-WP.pdf
bh-usa-07-grossman-WP.pdfbh-usa-07-grossman-WP.pdf
bh-usa-07-grossman-WP.pdf
cyberhacker7
 
Bringing a Cannon to a Knife Fight
Bringing a Cannon to a Knife FightBringing a Cannon to a Knife Fight
Bringing a Cannon to a Knife Fight
Johannes Gilger
 

Similar to The great cannon has been deployed again (20)

Cryptojacking - by Vishwaraj101
Cryptojacking - by Vishwaraj101Cryptojacking - by Vishwaraj101
Cryptojacking - by Vishwaraj101
 
JSconf JP - Analysis of an exploited npm package. Event-stream's role in a su...
JSconf JP - Analysis of an exploited npm package. Event-stream's role in a su...JSconf JP - Analysis of an exploited npm package. Event-stream's role in a su...
JSconf JP - Analysis of an exploited npm package. Event-stream's role in a su...
 
Compromised e commerce_sites_lead_to_web-based_keyloggers
Compromised e commerce_sites_lead_to_web-based_keyloggersCompromised e commerce_sites_lead_to_web-based_keyloggers
Compromised e commerce_sites_lead_to_web-based_keyloggers
 
HallTumserFinalPaper
HallTumserFinalPaperHallTumserFinalPaper
HallTumserFinalPaper
 
DevOps Automation Principles
DevOps Automation PrinciplesDevOps Automation Principles
DevOps Automation Principles
 
STUDY OF DEEP WEB AND A NEW FORM BASED CRAWLING TECHNIQUE
STUDY OF DEEP WEB AND A NEW FORM BASED CRAWLING TECHNIQUESTUDY OF DEEP WEB AND A NEW FORM BASED CRAWLING TECHNIQUE
STUDY OF DEEP WEB AND A NEW FORM BASED CRAWLING TECHNIQUE
 
Software management, the seasonal return of DDoS - This Week in Security.pdf
Software management, the seasonal return of DDoS - This Week in Security.pdfSoftware management, the seasonal return of DDoS - This Week in Security.pdf
Software management, the seasonal return of DDoS - This Week in Security.pdf
 
Chrome Extensions: Masking risks in entertainment
Chrome Extensions: Masking risks in entertainmentChrome Extensions: Masking risks in entertainment
Chrome Extensions: Masking risks in entertainment
 
A look at the prevalence of client-side JavaScript vulnerabilities in web app...
A look at the prevalence of client-side JavaScript vulnerabilities in web app...A look at the prevalence of client-side JavaScript vulnerabilities in web app...
A look at the prevalence of client-side JavaScript vulnerabilities in web app...
 
Deep and Dark internet Safari, How to hire a hacker? Robbrecht van Amerongen
Deep and Dark internet Safari, How to hire a hacker? Robbrecht van AmerongenDeep and Dark internet Safari, How to hire a hacker? Robbrecht van Amerongen
Deep and Dark internet Safari, How to hire a hacker? Robbrecht van Amerongen
 
The Digital Demise - by Robin Turner
The Digital Demise - by Robin TurnerThe Digital Demise - by Robin Turner
The Digital Demise - by Robin Turner
 
Case Study: Q2 2014 Global DDoS Attack Report | Akamai Document
Case Study:  Q2 2014 Global DDoS Attack Report | Akamai  DocumentCase Study:  Q2 2014 Global DDoS Attack Report | Akamai  Document
Case Study: Q2 2014 Global DDoS Attack Report | Akamai Document
 
SeanRobertsThesis
SeanRobertsThesisSeanRobertsThesis
SeanRobertsThesis
 
A web content analytics
A web content analyticsA web content analytics
A web content analytics
 
(In)Security Implication in the JS Universe
(In)Security Implication in the JS Universe(In)Security Implication in the JS Universe
(In)Security Implication in the JS Universe
 
JavaScript Supply Chain Security
JavaScript Supply Chain SecurityJavaScript Supply Chain Security
JavaScript Supply Chain Security
 
CS6262_Group9_FinalReport
CS6262_Group9_FinalReportCS6262_Group9_FinalReport
CS6262_Group9_FinalReport
 
Ignorance is bliss, but not for MongoDB
Ignorance is bliss, but not for MongoDBIgnorance is bliss, but not for MongoDB
Ignorance is bliss, but not for MongoDB
 
bh-usa-07-grossman-WP.pdf
bh-usa-07-grossman-WP.pdfbh-usa-07-grossman-WP.pdf
bh-usa-07-grossman-WP.pdf
 
Bringing a Cannon to a Knife Fight
Bringing a Cannon to a Knife FightBringing a Cannon to a Knife Fight
Bringing a Cannon to a Knife Fight
 

More from Christopher Doman

Five Reasons Why You Need Cloud Investigation & Response Automation
Five Reasons Why You Need Cloud Investigation & Response AutomationFive Reasons Why You Need Cloud Investigation & Response Automation
Five Reasons Why You Need Cloud Investigation & Response Automation
Christopher Doman
 
Azure Incident Response Cheat Sheet.pdf
Azure Incident Response Cheat Sheet.pdfAzure Incident Response Cheat Sheet.pdf
Azure Incident Response Cheat Sheet.pdf
Christopher Doman
 
AWS Incident Response Cheat Sheet.pdf
AWS Incident Response Cheat Sheet.pdfAWS Incident Response Cheat Sheet.pdf
AWS Incident Response Cheat Sheet.pdf
Christopher Doman
 
A New Perspective on Resource-Level Cloud Forensics
A New Perspective on Resource-Level Cloud ForensicsA New Perspective on Resource-Level Cloud Forensics
A New Perspective on Resource-Level Cloud Forensics
Christopher Doman
 
Cloud Forensics Tools
Cloud Forensics ToolsCloud Forensics Tools
Cloud Forensics Tools
Christopher Doman
 
Cloud Forensics and Incident Response Training.pdf
Cloud Forensics and Incident Response Training.pdfCloud Forensics and Incident Response Training.pdf
Cloud Forensics and Incident Response Training.pdf
Christopher Doman
 
AWS Guard Duty Forensics & Incident Response.pdf
AWS Guard Duty Forensics & Incident Response.pdfAWS Guard Duty Forensics & Incident Response.pdf
AWS Guard Duty Forensics & Incident Response.pdf
Christopher Doman
 
EKS Forensics & Incident Response.pdf
EKS Forensics & Incident Response.pdfEKS Forensics & Incident Response.pdf
EKS Forensics & Incident Response.pdf
Christopher Doman
 
AWS IAM Forensics & Incident Response
AWS IAM Forensics & Incident ResponseAWS IAM Forensics & Incident Response
AWS IAM Forensics & Incident Response
Christopher Doman
 
AWS Forensics & Incident Response
AWS Forensics & Incident ResponseAWS Forensics & Incident Response
AWS Forensics & Incident Response
Christopher Doman
 
Lambda Forensics & Incident Response.pdf
Lambda Forensics & Incident Response.pdfLambda Forensics & Incident Response.pdf
Lambda Forensics & Incident Response.pdf
Christopher Doman
 
Case Studies Denonia - Lambda DFIR.pdf
Case Studies Denonia - Lambda DFIR.pdfCase Studies Denonia - Lambda DFIR.pdf
Case Studies Denonia - Lambda DFIR.pdf
Christopher Doman
 
Cloud Security Fundamentals for Forensics and Incident Response.pdf
Cloud Security Fundamentals for Forensics and Incident Response.pdfCloud Security Fundamentals for Forensics and Incident Response.pdf
Cloud Security Fundamentals for Forensics and Incident Response.pdf
Christopher Doman
 
AWS Detective Forensics & Incident Response.pdf
AWS Detective Forensics & Incident Response.pdfAWS Detective Forensics & Incident Response.pdf
AWS Detective Forensics & Incident Response.pdf
Christopher Doman
 
Google Cloud Forensics & Incident Response
Google Cloud Forensics & Incident ResponseGoogle Cloud Forensics & Incident Response
Google Cloud Forensics & Incident Response
Christopher Doman
 
GKE Forensics & Incident Response.pdf
GKE Forensics & Incident Response.pdfGKE Forensics & Incident Response.pdf
GKE Forensics & Incident Response.pdf
Christopher Doman
 
AWS SSM Forensics and Incident Response
AWS SSM Forensics and Incident ResponseAWS SSM Forensics and Incident Response
AWS SSM Forensics and Incident Response
Christopher Doman
 
Kubernetes Docker Forensics & Incident Response.pdf
Kubernetes Docker Forensics & Incident Response.pdfKubernetes Docker Forensics & Incident Response.pdf
Kubernetes Docker Forensics & Incident Response.pdf
Christopher Doman
 
Case Studies TeamTNT - AWS & Container Cryptomining Worm DFIR.pdf
Case Studies TeamTNT - AWS & Container Cryptomining Worm DFIR.pdfCase Studies TeamTNT - AWS & Container Cryptomining Worm DFIR.pdf
Case Studies TeamTNT - AWS & Container Cryptomining Worm DFIR.pdf
Christopher Doman
 
EC2 Forensics & Incident Response.pdf
EC2 Forensics & Incident Response.pdfEC2 Forensics & Incident Response.pdf
EC2 Forensics & Incident Response.pdf
Christopher Doman
 

More from Christopher Doman (20)

Five Reasons Why You Need Cloud Investigation & Response Automation
Five Reasons Why You Need Cloud Investigation & Response AutomationFive Reasons Why You Need Cloud Investigation & Response Automation
Five Reasons Why You Need Cloud Investigation & Response Automation
 
Azure Incident Response Cheat Sheet.pdf
Azure Incident Response Cheat Sheet.pdfAzure Incident Response Cheat Sheet.pdf
Azure Incident Response Cheat Sheet.pdf
 
AWS Incident Response Cheat Sheet.pdf
AWS Incident Response Cheat Sheet.pdfAWS Incident Response Cheat Sheet.pdf
AWS Incident Response Cheat Sheet.pdf
 
A New Perspective on Resource-Level Cloud Forensics
A New Perspective on Resource-Level Cloud ForensicsA New Perspective on Resource-Level Cloud Forensics
A New Perspective on Resource-Level Cloud Forensics
 
Cloud Forensics Tools
Cloud Forensics ToolsCloud Forensics Tools
Cloud Forensics Tools
 
Cloud Forensics and Incident Response Training.pdf
Cloud Forensics and Incident Response Training.pdfCloud Forensics and Incident Response Training.pdf
Cloud Forensics and Incident Response Training.pdf
 
AWS Guard Duty Forensics & Incident Response.pdf
AWS Guard Duty Forensics & Incident Response.pdfAWS Guard Duty Forensics & Incident Response.pdf
AWS Guard Duty Forensics & Incident Response.pdf
 
EKS Forensics & Incident Response.pdf
EKS Forensics & Incident Response.pdfEKS Forensics & Incident Response.pdf
EKS Forensics & Incident Response.pdf
 
AWS IAM Forensics & Incident Response
AWS IAM Forensics & Incident ResponseAWS IAM Forensics & Incident Response
AWS IAM Forensics & Incident Response
 
AWS Forensics & Incident Response
AWS Forensics & Incident ResponseAWS Forensics & Incident Response
AWS Forensics & Incident Response
 
Lambda Forensics & Incident Response.pdf
Lambda Forensics & Incident Response.pdfLambda Forensics & Incident Response.pdf
Lambda Forensics & Incident Response.pdf
 
Case Studies Denonia - Lambda DFIR.pdf
Case Studies Denonia - Lambda DFIR.pdfCase Studies Denonia - Lambda DFIR.pdf
Case Studies Denonia - Lambda DFIR.pdf
 
Cloud Security Fundamentals for Forensics and Incident Response.pdf
Cloud Security Fundamentals for Forensics and Incident Response.pdfCloud Security Fundamentals for Forensics and Incident Response.pdf
Cloud Security Fundamentals for Forensics and Incident Response.pdf
 
AWS Detective Forensics & Incident Response.pdf
AWS Detective Forensics & Incident Response.pdfAWS Detective Forensics & Incident Response.pdf
AWS Detective Forensics & Incident Response.pdf
 
Google Cloud Forensics & Incident Response
Google Cloud Forensics & Incident ResponseGoogle Cloud Forensics & Incident Response
Google Cloud Forensics & Incident Response
 
GKE Forensics & Incident Response.pdf
GKE Forensics & Incident Response.pdfGKE Forensics & Incident Response.pdf
GKE Forensics & Incident Response.pdf
 
AWS SSM Forensics and Incident Response
AWS SSM Forensics and Incident ResponseAWS SSM Forensics and Incident Response
AWS SSM Forensics and Incident Response
 
Kubernetes Docker Forensics & Incident Response.pdf
Kubernetes Docker Forensics & Incident Response.pdfKubernetes Docker Forensics & Incident Response.pdf
Kubernetes Docker Forensics & Incident Response.pdf
 
Case Studies TeamTNT - AWS & Container Cryptomining Worm DFIR.pdf
Case Studies TeamTNT - AWS & Container Cryptomining Worm DFIR.pdfCase Studies TeamTNT - AWS & Container Cryptomining Worm DFIR.pdf
Case Studies TeamTNT - AWS & Container Cryptomining Worm DFIR.pdf
 
EC2 Forensics & Incident Response.pdf
EC2 Forensics & Incident Response.pdfEC2 Forensics & Incident Response.pdf
EC2 Forensics & Incident Response.pdf
 

Recently uploaded

学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
zyfovom
 
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
vmemo1
 
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
cuobya
 
Search Result Showing My Post is Now Buried
Search Result Showing My Post is Now BuriedSearch Result Showing My Post is Now Buried
Search Result Showing My Post is Now Buried
Trish Parr
 
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
zoowe
 
Explore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories SecretlyExplore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories Secretly
Trending Blogers
 
Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!
Toptal Tech
 
Discover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to IndiaDiscover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to India
davidjhones387
 
留学学历(UoA毕业证)奥克兰大学毕业证成绩单官方原版办理
留学学历(UoA毕业证)奥克兰大学毕业证成绩单官方原版办理留学学历(UoA毕业证)奥克兰大学毕业证成绩单官方原版办理
留学学历(UoA毕业证)奥克兰大学毕业证成绩单官方原版办理
bseovas
 
Should Repositories Participate in the Fediverse?
Should Repositories Participate in the Fediverse?Should Repositories Participate in the Fediverse?
Should Repositories Participate in the Fediverse?
Paul Walk
 
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
ukwwuq
 
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalmanuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
wolfsoftcompanyco
 
Azure EA Sponsorship - Customer Guide.pdf
Azure EA Sponsorship - Customer Guide.pdfAzure EA Sponsorship - Customer Guide.pdf
Azure EA Sponsorship - Customer Guide.pdf
AanSulistiyo
 
Gen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needsGen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needs
Laura Szabó
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
uehowe
 
Design Thinking NETFLIX using all techniques.pptx
Design Thinking NETFLIX using all techniques.pptxDesign Thinking NETFLIX using all techniques.pptx
Design Thinking NETFLIX using all techniques.pptx
saathvikreddy2003
 
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
ysasp1
 
Understanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdfUnderstanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdf
SEO Article Boost
 
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
xjq03c34
 
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
uehowe
 

Recently uploaded (20)

学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
 
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
 
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
 
Search Result Showing My Post is Now Buried
Search Result Showing My Post is Now BuriedSearch Result Showing My Post is Now Buried
Search Result Showing My Post is Now Buried
 
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
 
Explore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories SecretlyExplore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories Secretly
 
Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!
 
Discover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to IndiaDiscover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to India
 
留学学历(UoA毕业证)奥克兰大学毕业证成绩单官方原版办理
留学学历(UoA毕业证)奥克兰大学毕业证成绩单官方原版办理留学学历(UoA毕业证)奥克兰大学毕业证成绩单官方原版办理
留学学历(UoA毕业证)奥克兰大学毕业证成绩单官方原版办理
 
Should Repositories Participate in the Fediverse?
Should Repositories Participate in the Fediverse?Should Repositories Participate in the Fediverse?
Should Repositories Participate in the Fediverse?
 
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
 
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaalmanuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
manuaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal
 
Azure EA Sponsorship - Customer Guide.pdf
Azure EA Sponsorship - Customer Guide.pdfAzure EA Sponsorship - Customer Guide.pdf
Azure EA Sponsorship - Customer Guide.pdf
 
Gen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needsGen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needs
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
 
Design Thinking NETFLIX using all techniques.pptx
Design Thinking NETFLIX using all techniques.pptxDesign Thinking NETFLIX using all techniques.pptx
Design Thinking NETFLIX using all techniques.pptx
 
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
 
Understanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdfUnderstanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdf
 
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
 
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
留学挂科(UofM毕业证)明尼苏达大学毕业证成绩单复刻办理
 

The great cannon has been deployed again

  • 1. The “Great Cannon” Has Been Deployed Again Summary The ​Great Cannon​ is a distributed denial of service tool (“DDoS”) that operates by injecting malicious Javascript into pages served from behind the ​Great Firewall​. These scripts, potentially served to millions of users across the internet, hijack the users’ internet connection to make multiple requests against the targeted site. These requests consume all the resources of the targeted site, making it unavailable: Figure 1:​ Simplified diagram of how the Great Cannon operates The Great Cannon was the subject of intense research after it was used to ​disrupt access​ to the website Github.com in 2015. Little has been seen of the Great Cannon since 2015, however we’ve recently observed new attacks, which are detailed below. Most Recent Attacks against LIHKG The Great Cannon is currently attempting to take the website ​LIHKG​ offline. LIHKG has been used to organise protests in Hong Kong. Using a ​simple script​ that uses data from ​UrlScan.io​, we identified new attacks likely starting Monday November 25th, 2019. Websites​ are indirectly serving a malicious javascript ​file​ from either: ● http://push.zhanzhang.baidu.com/push.js​; or
  • 2. ● http://js.passport.qihucdn.com/11.0.1.js Normally these URLs serve standard analytics tracking scripts. However, for a certain percentage of requests the Great Cannon swaps these on the fly with malicious code: Figure 2: ​Malicious code​ served from the Great Cannon The code attempts to repeatedly request the following resources through an image proxy on the LIHKG website (at ​https://i.lih.kg/540/ ​) in order to overwhelm the LIHKG website and prevent it from being accessible: ● https://66.media.tumblr.com/e06eda7617fb1b98cbaca0edf9a427a8/tumblr_oqrv3wHXoz1sehac7o1 _540.gif ● https://live.staticflickr.com/65535/48978420208_76b67bec15_o.gif ● https://i.loli.net/2019/09/29/hXHglbYpykUGIJu.gif ● https://na.cx/i/XibbJAS.gif ● https://na.cx/i/UHr3Dtk.gif ● https://na.cx/i/9hjf7rg.gif ● https://na.cx/i/qKE4P2C.gif ● https://na.cx/i/0Dp4P29.gif ● https://na.cx/i/mUkDptW.gif ● https://na.cx/i/ekL74Sn.gif ● https://i.ibb.co/ZBDcP9K/LcSzXUb.gif ● https://na.cx/i/6hxp6x9.gif ● https://img.eservice-hk.net/upload/2018/08/09/181951_60e1e9bedea42535801bc785b6f48e7a.g if ● https://na.cx/i/E3sYryo.gif ● https://na.cx/i/ZbShS2F.gif ● https://na.cx/i/LBppBac.gif ● http://i.imgur.com/5qrZMPn.gif ● https://na.cx/i/J3q35jw.gif ● https://na.cx/i/QR7JjSJ.gif ● https://na.cx/i/haUzqxN.gif ● https://na.cx/i/3hS5xcW.gif ● https://na.cx/i/z340DGp.gif ● https://luna.komica.org/23/src/1573785127351.gif ● https://image.ibb.co/m10EAH/Atsps_Smd_Pc.gif ● https://img.eservice-hk.net/upload/2018/06/02/213756_d33e27ec27b054afcc911be1411b5e5a.g if ● https://media.giphy.com/media/9LZTc9dQjAAL5jmuCK/giphy.gif ● https://img.eservice-hk.net/upload/2018/06/13/171314_55de6aac9af0e3c086b83bf433493004.g if
  • 3. These may seem like an odd selection of websites and memes to target, however these meme images appear on the LIHKG forums so the traffic is likely intended to blend in with normal traffic. The URLs are appended to the LIHKG image proxy url (eg; ​https://na.cx/i/6hxp6x9.gif becomes ​https://i.lih.kg/540/https://na.cx/i/6hxp6x9.gif?t=6009966493​) which causes LIHKG to perform the bandwidth and computationally expensive task of taking a remote image, changing it’s size, then serving it to the user. Impact It is unlikely these sites will be seriously impacted. This is partly due to LIHKG sitting behind the anti-DDoS service Cloudflare, and partly due to some bugs in the malicious Javascript code. We won’t discuss the bugs here as it would provide suggestions on how to improve the attack. Still, it is disturbing to see an attack tool with the potential power of the Great Cannon in use more regularly, and again causing collateral damage to US based file-hosting services. Mitigations These attacks would not be successful if the following resources were served over HTTPS instead of HTTP: ● http://push.zhanzhang.baidu.com/push.js ● http://js.passport.qihucdn.com/11.0.1.js You may want to consider blocking these URLs when not sent over HTTPS. Timeline of Historical Great Cannon Incidents Below we have described previous Great Cannon attacks, including previous attacks against LIHKG in September 2019. 2015: GreatFire and GitHub During the 2015 attacks, DDoS scripts were sent in response to requests sent to a ​number of domains​, for both Javascript and HTML pages served over HTTP from behind the Great Firewall. A number of distinct stages and targets were identified: ● March 3 to March 6, 2015: Initial, ​limited test firing​ of the Great Cannon starts. ● March 10: Real attacks start against a Chinese-language news site (Sinasjs.cn). ● March 13: New attacks against an organisation that monitors censorship (GreatFire.org).  
  • 4. Figure 3:​ Snippet of the code used in early Great Cannon attacks. Later scripts were improved to not require external javascript libraries. ● March 25: Attacks against GitHub.com start, targeting content hosted from the site GreatFire.org and a Chinese edition of the New York Times. This resulted in a ​global outage​ of the GitHub service. Figure 4:​ The URLs targeted in the attack against Github.com. ● March 26th - Attacks began using code hidden with the Javascript obfuscator “​packer​”: 
  • 5. Figure 5:​ Snippet of the obfuscated code. Current attacks continue to use the same obfuscation. Research by ​CitizenLab​ identified multiple likely points where the malicious code is injected. The Great Cannon operated probabilistically, injecting return packets to a certain percentage of requests for Javascript from certain IP addresses. As noted by commentators at the time, the same functionality could also be used to insert exploitation code to enable “​Man-on-the-side​” attacks to compromise key targets. 2017 and Onward: Attacks against Mingjingnews In August 2017, Great Cannon attacks against a Chinese-language news website (​Mingjingnews.com​) were ​identified​ by a user on Stack Overflow. The code in the 2017 attack is significantly re-written and is largely unchanged in the attacks were seen in 2019.     Figure 6:​ An excerpt of the code to target Mingjingnews.com in 2017.
  • 6. We have continued to see ​attacks against​ Mingjingnews in the last year. 2019: Attacks Against Hong Kong Democracy Movement On August 31, 2019, the Great Cannon ​initiated​ an attack against a website (lihkg.com) used by members of the Hong Kong democracy movement to plan protests. The Javascript code is very similar to the packed code used in the attacks against Mingjingnews observed in 2017 and onward, and the code was served from at least two locations: - http://push.zhanzhang.baidu.com/push.js - http://js.passport.qihucdn.com/11.0.1.js Initial versions targeted a single page on lihkg.com. Figure 7:​ The Javascript code originally targeting lihkg.com. Later versions targeted multiple pages and attempted (unsuccessfully) to bypass Cloudflare DDoS mitigations that the website owners had implemented.   Figure 8:​ The Javascript code later targeting lihkg.com.
  • 7. Detection We detect the Great Cannon serving malicious Javascript with the following Suricata rules from Alien Labs and Emerging Threats Open. alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"AV INFO JS File associated with Great Cannon DDoS"; flow:to_server,established; content:"GET"; http_method; content:"push.js"; http_uri; content:"push.zhanzhang.baidu.com"; http_host; flowbits:set,AVCannonDDOS; flowbits:noalert; classtype:misc-activity; sid:xxx; rev:1;) alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"AV INFO JS File associated with Great Cannon DDoS"; flow:to_server,established; content:"GET"; http_method; content:"11.0.1.js"; http_uri; content:"js.passport.qihucdn.com"; http_host; flowbits:set,AVCannonDDOS; flowbits:noalert; classtype:misc-activity; sid:xxx; rev:1;) alert http $EXTERNAL_NET any -> $HOME_NET any (msg:"AV INFO Potential DDoS attempt related to Great Cannon Attacks"; flow:established,to_client; content:"200"; http_stat_code; file_data; content:"isImgComplete"; flowbits:isset,AVCannonDDOS; reference:url,otx.alienvault.com/pulse/5d6d4da02ee2b6fbff703067; classtype:policy-violation; sid:xxx; rev:1;) alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"AV INFO JS File associated with Great Cannon DDoS"; flow:to_server,established; content:"GET"; http_method; content:"hm.js"; http_uri; content:"hm.baidu.com"; http_host; flowbits:set,AVCannonDDOS; flowbits:noalert; classtype:misc-activity; sid:xxx; rev:1;) alert http $EXTERNAL_NET any -> $HOME_NET any (msg:"AV MALWARE GreatCannon Malicous JScript Inbound"; flow:established,to_client; content:"200"; http_stat_code; file_data; content:"!function(n){"; depth:1000; content:"1e9*n[a][s](9*n[a][g]())+n[a][s](999999999*n[a][g]())"; distance:0; content:"n[y]=3e5,n[_]=1482184792,n[p]=1e6"; distance:0; reference:url,otx.alienvault.com/pulse/5d6d4da02ee2b6fbff703067; classtype:trojan-activity; sid:xxx; rev:1;) ET WEB_CLIENT Great Cannon DDoS JS M1 sid:2027961 ET WEB_CLIENT Great Cannon DDoS JS M2 sid:2027962 ET WEB_CLIENT Great Cannon DDoS JS M3 sid:2027963 ET WEB_CLIENT Great Cannon DDoS JS M4 sid:2027964 Additional indicators and code samples are available in the Open Threat Exchange ​pulse​.