using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Deployment.Application;
using System.Web;
using System.Collections.Specialized;
namespace ConsoleApplication3
class Program
static void Main(string[] args)
NameValueCollection nvc = GetQueryStringParameters();
foreach (string key in nvc)
Console.WriteLine(nvc[key]);
Console.ReadLine();
catch
Console.WriteLine("No Params");
Console.ReadLine();
public static NameValueCollection GetQueryStringParameters()
NameValueCollection col = new NameValueCollection();
if (ApplicationDeployment.IsNetworkDeployed)
string queryString = ApplicationDeployment.CurrentDeployment.ActivationUri.Query;
col = HttpUtility.ParseQueryString(queryString);
return col;
测试代码选自https://gist.github.com/subTee/bd446efeacf656c67f5c17ca0787f15b
将新的ClickOnce程序发布
只需要将.application和Application Files上传至网站就好,不需要提供setup.exe
测试主机在IE浏览器访问如下URL:
http://192.168.81.140/publish/ConsoleApplication3.application?N=TEST
程序自动识别参数并解析输出,如图
4、结合网站的重定向功能,触发不同的payload
网站的重定向可导致URL的参数不同,这样就可以实现触发不同的payload
可参考https://blog.netspi.com/all-you-need-is-one-a-clickonce-love-story/
0x04 钓鱼攻击的缺陷:
不同系统.net版本不同,所以钓鱼利用场景受限
系统在执行ClickOnce程序的过程会检查数字签名验证发布者,否则会提示安装包不可信
0x05 防御
1、对ClickOnce程序提高警惕,识别真伪
运行特殊后缀名的程序(如.application)就会对ClickOnce程序进行安装,不需要setup.exe,用户需要对此提高警惕
2、禁用特殊后缀名,如.application
不同.net版本生成的ClickOnce程序后缀名存在差异,如下链接有更详细的关于ClickOnce程序后缀名的介绍:
https://robindotnet.wordpress.com/2010/06/12/mime-types-for-clickonce-deployment/
0x06 检测
1、安装ClickOnce程序后,会在注册表留下痕迹
注册表位置:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
2、安装ClickOnce程序后,会在如下目录保存文件:
%USERPROFILE%\Local Settings\Apps\2.0
测试主机上的路径为:
C:\Users\a\Local Settings\Apps\2.0
每个ClickOnce程序都有一个特殊名字的文件夹,如图
删除文件夹将从系统中删除ClickOnce应用程序
3、安装程序列表也会存在ClickOnce程序名称
0x07 小结
通过ClickOnce进行钓鱼,相比于常规的钓鱼方式,由于后缀名不常见,因此欺骗性更高,支持的扩展功能如解析URL参数、自动更新等功能,使得其利用方法更加灵活
但是,只要用户提高警惕,验证ClickOnce程序的数字证书,只运行受信任的程序,就可以防范此类钓鱼方式的攻击
未知攻焉知防,希望本文帮助大家更好的认识这个技术,保护自己的安全
参考学习资料:
http://subt0x10.blogspot.com/2016/12/mimikatz-delivery-via-clickonce-with.html
https://blog.netspi.com/all-you-need-is-one-a-clickonce-love-story/
http://www.sixdub.net/?p=555
https://msdn.microsoft.com/en-us/library/t71a733d.aspx
https://www.rsa.com/content/dam/pdfs/a-decade-of-phishing-wp-11-2016.pdf
LEAVE A REPLY