黑暗中的垂钓者,“暗钩”团伙针对国内用户的钓鱼活动分析

黑暗中的垂钓者,“暗钩”团伙针对国内用户的钓鱼活动分析

事件背景

近期,安恒信息猎影实验室在日常监测中发现黑灰产团伙投递虚假的WPS、Telegram和letsvpn安装包,同时还发现团伙投递的“薪资提成”、“采购订单”为主题的样本。初始样本是通过Setup Factory Runtime打包的exe,并在打包文件中集成了恶意lua脚本。用户点击后将运行木马加载器,加载器包含多种对抗检测手段,通过白加黑、内存注入、自定义解密等方式最终在内存加载Gh0st远控木马。

远控木马具有窃取用户密码功能,攻击者清除用户浏览器中保存的自动填充密码,当用户重新输入密码时将被攻击者记录下来。木马中还会检测用户主机中正在登录的qq号,并能够在主机空闲时进入qq窗口进行更多操作,我们推测该功能可能会以用户的身份在qq好友或qq群组之中进行更为广泛的钓鱼活动。

经过关联分析发现该团伙至少从2022年8月开始活跃,期间除了通过钓鱼网站途径之外,还可能通过钓鱼邮件、社交媒体等方式投递木马,由于该团伙的样本具有多种对抗检测手段,甚至C2在众多公开沙箱报告中无法被检出,极具隐蔽性,安恒信息猎影实验室将该团伙命名为“暗钩”,追踪编号“GRP-LY-1004”。

暗钩团伙画像如下:

团伙性质 黑产团伙
活跃时间 至少从2022年8月至今
攻击动机 信息窃取
攻击来源 未知
攻击目标 包括国内
常用工具 Setup Factory Runtime、魔改Gh0st
传播方式 钓鱼网站,推测还包括钓鱼邮件和社交媒体
技术流程 样本为Setup Factory Runtime生成的exe安装包,运行后将通过内置的lua脚本将加密的木马文件和木马加载器释放到主机,并启动木马加载器,木马加载器通过白加黑方式执行lua脚本或dll,最终解密出Gh0st远控木马。

攻击分析

样本执行流程图如下:

初始安装阶段

初始样本为Setup Factory Runtime打包的安装程序,通过7z打开发现包含多个后续加载的文件:

Setup Factory Runtime 是由 Indigo Rose Corporation 开发的 Windows 安装程序生成器,在安装包运行过程中将释放文件irsetup.exe和lua5.1.dll,irsetup.exe通过调用lua5.1.dll中的luaL_loadbuffer函数在内存中执行lua脚本代码。

lua代码首先进行反虚拟机操作,如果系统在vmware或virtualbox环境下运行,则直接退出进程。

检测系统中是否包含360进程,若存在则会弹出消息框提醒用户退出杀毒软件后重新运行:

若检测到微软杀毒进程,则将要释放文件和目录添加到白名单。

随后在C盘根目录下释放解压工具un.exe,并在C:\ProgramData\Data\目录下释放压缩包UPX.rar,该压缩包中内容与原始exe样本使用7z打开的内容相同。随后使用密码“poiuytrewq”将压缩包解压,并运行运行解压出的iusb3mon.exe。

后门解密阶段

iusb3mon.exe为包含签名的白文件,运行后首先将目录下iusb3mon.dat文件解压,解压密码为“99B2328D3FDF4E9E98559B4414F7ACB9”,随后读取解压出的_TUProj.dat。

_TUProj.dat文件中包含一段lua脚本,lua代码通过shellcode注入运行了一段代码。

注入的shellcode首先读取Media.xml,将文件数据解密出PE文件头并加载该PE文件。

该PE文件加载后首先检查程序中是否有显卡驱动,用于对抗虚拟机环境。

创建名为“Windows Connection Manager(Windows网络连接管理服务)”和“Storage Service(存储服务)”的计划任务,定期将加载木马所需文件解压并运行,防止被清理。

随后读取ziliao.jpg,将文件数据经过异或、加和操作后调用其shellex导出函数。

后门运行阶段

解密后的ziliao.jpg实际为Gh0st远控木马,其导出函数shellex首先将释放的文件属性设置为只读隐藏,然后检查主机中是否包含动态分析工具,用于反调试。

通过不同的可选标志位使程序选择性进行不同操作:

标志位和对应的操作如下:

标志位编号 操作
1 通过检测显卡反虚拟机
2 检测Windows防病毒软件
3 从hxxp://118.107.43[.]246/1.dll下载文件,保存为C:\Microsoft\iusb3mon.dat
4 阻止行为监测、反病毒进程和竞争对手进程,阻止屏幕睡眠或关闭
5 开启击键记录,内容保存至C:\Users\用户名\Default.dat
6 与118.107.43.246:8727建立TCP连接
7 http://118.107.43.246/ip.txt读取数据
8 从指定链接下载文件
9 将程序复制到C:\Windows\网络服务.exe并设置Run注册表,进入主功能模块
10 文件写入C:\\Windows\\svchost.exe,并设置service注册表自启动,进入主功能模块。服务名为“Cdefgh”,展示名为“Cdefgh Jklmnopq Stuvwxya Cdef”。
11 直接进入主功能模块

主功能模块首先与hckmnp.com:8728建立TCP连接,收集主机中以下信息:

  • 主机名
  • 系统版本
  • 主机位数
  • CPU信息
  • 登录状态的qq号
  • 主机中存在的特定进程
  • 主机3分钟内是否有人操作
  • 物理内存大小
  • 硬件设备信息
  • 远程桌面协议连接的端口号
  • 注册表中是否有MarkTime键

收集信息后将信息回传至118.107.43.246:8727。并进入功能模块。功能模块的指令与对应功能如下:

指令 功能
0 关闭指定进程
1 卸载自身
2 在SYSTEM\\CurrentControlSet\\Services\\Cdefgh注册表设置Remarkbeizhu键值
3 上传数据
4 在SYSTEM\\CurrentControlSet\\Services\\Cdefgh注册表设置Groupfenzhu键值
5 清理应用日志、安全日志和系统日志
6 下载并运行指定文件
7 下载指定文件,并卸载自身
8 前台打开指定链接
9 后台打开指定链接
0xA 下载并打开文件
0xB 弹出消息框
0xC 查找指定进程
0xD 查找指定窗口
0xE 运行插件
0x12 移动文件
0x65-0x6F 运行插件
0x70 下载shellcode并注入内存
0x71 将C:\\Program Files\\Common Files\\scvhost.exe设置Run注册表键
0x72 清除谷歌浏览器用户数据
0x73 设置屏幕分辨率和颜色深度
0x74 关闭uac
0x75 结束explorer.exe进程
0x76 关闭uac
0x77 开启击键记录
0x7F 获取当前登录状态qq号
0x80 运行插件,包含“进入钓鱼的QQ”字符串,疑似为进入qq窗口的插件
0x81 清除Internet Explorer浏览器的浏览历史记录
0x82 清除谷歌浏览器用户数据
0x83 清除Skype用户数据
0x84 清除FireFox用户数据
0x85 清除360安全浏览器用户数据
0x86 清除qq浏览器用户数据
0x87 清除搜狗浏览器用户数据
0x88 运行插件
0x8A 检查主机中存在的特定进程
0xDE-0xE1 弹出消息框
0xE2 重新安装后门
0xE3 更新ziliao.jpg文件
0xE7 重新运行程序
0xE8 排除指定端口,防止其他进程占用端口
0xEC 将删除自身的脚本写入c:\inst.ini
0xED 删除c:\inst.ini

关联分析

通过样本动态特征,我们捕获到该团伙更多的样本,这批样本最早出现时间为2022年8月,持续活跃至今,部分样本信息如下:

文件名 MD5 可能来源 上传时间
升级Flash Playe 安全控件2.3.6…exe fb5831e3cb88a6ab10dd590d320c5ead 钓鱼网站 2022-08-05
全球通后台实时数据.exe 68b4ae910c7e7c056f1d422b6229f159 未知 2022-09-20
LetsVPN 429e4654d84f6054668c011aa2eb3e9f 钓鱼网站 2022-12-18
teIegremX4.7.1.7z 7c5fa71b08f07bfb8384c6984a32742d 钓鱼网站 2023-03-23
23号采购单.exe 1e74e16f438c9030a65e469ed1d004a2 钓鱼邮件/社交媒体 2023-06-24
7月提成分红结算报告.exe daf4dd90567b700afffaec07ac6ef13a 钓鱼邮件 2023-07-22
WPS_Setup.exe 8b9827f200cbbe350590a88bbc2db51d 钓鱼网站 2023-07-26

思考总结

近年来,针对我国网民的钓鱼攻击逐年增加,网络犯罪团伙愈发猖獗。虽然部分黑灰产团伙还在使用一些老套的攻击手法,如白加黑、反射dll注入,后门采用 Gh0st及其变种等方式,但是攻击者仍然拥有不俗的对抗检测能力。如本次报告中的样本最终回连为118.107.43.246:8727,但是在主流的恶意文件分析网站仍然难以检测到该IP。

在互联网中畅游的同时,应提高自身网络安全意识,谨慎对待那些隐藏在暗处的“鱼钩”,一旦不慎上钩,自身的信息和财产安全将沦为“人为刀俎,我为鱼肉”的境地。安恒信息再次提醒广大用户,请谨慎对待互联网中来历不明的文件,如有需要,请上传至安恒云沙箱进行后续判断。

IOC

虚假WPS安装包下载链接:

hxxps://windowswps.oss-cn-hongkong[.]aliyuncs.com/WPS_Setup.exe

域名:

kongcat[.]net

shangdi.microsoftzoffice[.]vip

hckmnp[.]com

windowswps.oss-cn-hongkong[.]aliyuncs.com

ip:

202.79.173.198

154.38.112.158

193.218.38.144

103.145.86.129

45.204.83.1

206.119.82.42

118.107.47.167

193.203.214.42

216.83.55.82

18.107.47.167

118.107.43.198

118.107.43.146

122.10.11.123

156.240.105.18

118.107.43.246

154.55.133.88

180.215.0.198

45.204.83.172

193.5.47.106

118.107.43.142

134.122.130.249

8.218.215.217

27.50.63.124

118.107.42.139

27.124.2.184

202.95.8.202

27.124.40.78

193.203.214.33

154.38.113.39

27.124.4.26

154.23.177.71

112.124.53.36

156.240.106.191

45.207.9.92

118.107.42.181

45.125.48.203

154.23.187.96

134.122.130.185

112.213.101.131

154.38.118.247

45.207.9.45

156.240.105.11

43.243.111.68

45.207.13.136

27.124.42.64

206.119.82.181

134.122.132.92

216.83.53.27

202.79.169.113

143.92.57.57

43.246.209.23

27.50.63.108

47.242.11.170

118.107.40.185

216.83.44.130

193.218.38.81

180.215.90.8

27.124.46.215

202.95.11.234

150.242.219.27

180.215.5.254

27.124.20.193

27.124.20.22

43.246.209.39

107.148.15.28

hash:

2310a00ecbf238314810a95d61f87533979bad6efebf739c82a75c979f9d564b

20c7e3f605a606631547553c4a7b6d0a7419c1a4c64315eb14dc12ee935cda6e

8439d7325df4931cf1c031e4435faebc9b4b26054022c1ccf23691fd3e68863e

74691f97151fd901ee113d9212d1baeb52a5612dbd20006283e65feb19cdbc69

67fad77163c3fdb531c1bf7315353e7743f8a6bf827b73f2952ef48c33b279d4

9058c2319b7d146961af231f62f17f1ff9c5a6c406624a81c83999624b3c3f2e

12ad965c1132917424b7d3aa5a67eda822ec6d6ab80da31359ef497b28a9a309

3eb2f909c0b21e2cdd87519d54066ab0d208630d0a64e9139a494163fe976afe

912f0bffef695dec207bc3608171ecba696bdb78bf0f5d062cf9a970fefe4b6c

0639d5d976e90a2a05051b7724724d197129ca4cc008b249cb276f12b53d4ae5

cb0e0b17755e9a43c2bac6eff712b6b72db35c00d0f6952253d49f65bc203556

1249c7cb704cb2d098dc569f65981ab14a0ff0ed37edf8f9e596d4afdcdea405

a52698b2b50fd1c1f76a34d05fbeee5132142da0897bdf1d9ad0286648df8e57

e498c17abdbdd8804ce1a69aa28f647eaa0c10a04ca14f72d2621d672a53a423

9423f53f743edd6cac85062e0e1bebb74d6e7301a1906208a3e6e1bc2a99bdf4

a5626efb87c4b1e42f6978c373d52a9445850d3fe17434dbd57a3957188b7e2f

5ec4cef99c5412d437707d916ac3e24693a6463f8caeea894f6d7a2eb17e49f2

1915fc924743d5edd6138761c6d547679a5e534d11d3a2c12ffb5d305a6ed123

b84d659531e665b62dd6b2aeab583d456c9fedf7edb4733dacea4e350e588be2

c1fb95556b160a35cbc4382f1a7ef4d0b24c306e64fc143b84f8ee4d246d02a3

ffb427ca63bd12f05a3b6f37a221c487a8b15d729cfe3139597a6c975eab5a85

1f4960ff02dcb5475fe58e6ab2edd073560fe5e6fdd929ce899182b5a548cda2

9db4a1e13f858ba258119ccb47f5c2adddd03dd665ef58f0f1edb5e46a571dc2

aeb502d55650fdb617360fdab595ff16bea447c02dfb5fa2d938f77b2484d149

586fdd397a9410b2b2ba66e65f66e664cdef217d9244010dcc26799697d90694

30d54fa940b30245a9865851ebffab38d4713014a52f92ef281ab8917e5b1385

b8f65613c2ba0f441073dc7b331d095e74a2ba42e1299c28b605a090f3a56472

b5a4454e767d90ad2248e5d862f96de454d94f887349c0795c69bba81f19ae4c

583d8351de707ac2b46a2fb9fd9ee31056ad7a83b9fea10df5f3e5e46f890b92

2252a6f5983c944fde976cb3be8a1d9fb8c45eb6fa71afbeaa32032149492e53

289e9fc6ff805e55a593043164eb06e1ce2a356d7c96ca197b1eb634fc97dd00

3e16e5e7aa7e3291b354de26a2a688fb4add1e8da71edbaf9c9f8e370e1fe3d3

11adb73ead8deccd95f681391a458795051508257ea63111232e797bd6e20702

a82c16ba9916cc8be756f7b509851c6f49a0f9e5f83910b12eca6facbbfe7ee7

442630d8cc7bc7cae0ed9fb63c74fb882090f7f176bacb1afee758b477ab3a11

7918d8e198df783fd8de05556de8bc004d5bb008bc3e1564bec018670f2b40ce

d4cfd0cf4f253c6cb6d6b1aa8475d6a2a58de7b87e51cbb5affd9e65eb47224b

d7f094c450cb420e68de338e8511c6a99fe11b8e0b8cf320d9e9c8d499cd22c3

416592d489d85ada40251424cb6be2d2d4c071b3bb323874e00510e04eaef16b

ffc1c5f98b104e74762564ebef51b75109f3de875e86290a5f27d4e20126a95d

3d63d38546c3f32e843593fa73f582b6aaac1ff2d776c825afc690cd7adc49b9

497033de6afccdd540fcbcfce02975c6a84e3b4b7f8c2b325dd1372370ad2006

296819b2fbf321a22b842b7a081178eae50453793aac4e11ec211ed905987500

aa682a017ac871927757aa35bee7a30378eccc4f8367a1b8e3d774f7948363a2

cea633d12e009dd71f01568c9399afecccc09c00e1ecfeb5507fc8e387b83b26

064d8f90cf33a792c715d312483a71965574aaf691a1510c6e10d38674298d61

a0fa733b2c77dbb8b7bd806f98d76727b3ee376ab09b6c8aadff965187e0a351

0f85fec9dacc51bbaa29780139c57e963ff0a243895ffc7c645f19f61575dcf1

db98ecc0abe63e7a451730b7cc6125bd226ae2e539f4fdddb4d395e1d911aa93

bae8736e58a53a5850917bd2971bf2371cbeed948700c54d1eae4ff9a97eeb5e

3a60892c96e958d899f2caa301feda48a20e50c0df0a2e1041612ff6fc466016

99196bed23d4efd2d78aac0e8d40d8128891a6eec65c5045eaa6f763da83c8c5

7bd9053a930b1908aa10d507cd901cef9d137e07a3936c79e0f832261e6de18e

425073aedf8bf4f92d6ee55155b628296ff676968133d5c1f128dcd8ec6319b9

071baa457f348fc8e7ded17ff7a464af00fe9af8d567df77fd7bc21eaeac884c

4f50a6efce303a8ff0d28efb3717efaba2815b6044cc835f0de3f33c72f370f9

90db4193482993f0175a136f76909d46c659ea4526eb50661b658a6d3ef6c9be

24612d672e37bb6e47a89202b9a442b94eb7a353aa899746621c0c15389ab4f5

8c512cc402ba9424f96350f6fda90107c59449cd7562f9439598d931be10d8ff

63aa41be56ffb160c35a791f9fa4473c1823e8a8402b8f812f6f019c84c9e49a

8dfe34a2296293cf75ff5b3dbe42d37c26c12d561485ebf0ef5a9625aba51006

f42c6e8b76e6bea2f00e6ff4ce3235e04ea5edabc7defca54e964f710a295b3e

e5d22a57fd149d27b961721d0bf3fc6ed946229fea20869ccef97a69f3593f04

6f683d75f97699191f336664ae272734a0a2a9f181b52fdf6630b1e914c227bb

5f4c86793dc182bbdbca017a15a26213cf07bcc7d5a3038db3b728fcd421c581

91e599370087fd27ea8ad20eb2e683e520ff892f60c80a7a9f89440fe973358b

97a8833008a1a53c4172a0717d225274db33aafe23ff21292c053096e9ef03ce

bfc85d83bd7a81d723176f25c7850e6ace2fba06a70ee6f3d7e53e342bfa0ebb

97929172eb79e11db5957c833b318671bd776073abba785699899070183d5f3e

92462e046402ef096c20d02cdda724ca4c39166d38dc3655c67c8b1d1e69b14a

090c9253b46a73c95b9da7267fcb291f628aaf43c15d3fb5d961e311061a221e

03bf7f9b4cac42a39116df1cba993786ee60e86b7d06cf0f28995287562892bb

df9ab3ff845fd2f5d89cee61a856fc7101aed1c57ba62798f411e526a1a33898

1b0208db6b7f94ee1eb8769c04f9f73c6e8c4180ba77c89f1e70ee5b973e4ad9

c6b340d3f76aafdace087131df8b31aab76a00267c021818da84f8a663c669d6

ac2776e3263b66f68353ec62113742e5b045f92da733866a7952673df4b1c45a

1e3c8d40ac25f58439cd1eeb3e69066bfb7f7554d79b125b4c2213152496eeb8

96c7d5b84f07fb6f58c3af83a75f24a50df43b680eaa54887087781708e8ced8

783636b045def4f71446ea59aac5f4c0ea8fe11adbe25d3bc3d83bdd3cbea6fd

a7ac4258ad1ee45fa2dd08fe59ad1dd9780c66224d161c30b6db38143f3c8fa2

6f325f597152d05729febea8dd2077cf68efff4abfe593f4cf633baf06e35b57

6bba23661f98c08035ad0f9ce5199c8542a39d4128c9ff527757559394fc4401

8c31063384c8212ec89a76024f1b86eb0ec78f0fd5da441b505bc39e6aa07c2b

0f1b020818e36d948e918b55117650a5cef5a83dbfd9a83db9d7aa4caafa80f6

3305fa45a406bb700f9156df7fa88a86b976ef1fd91f2a5d3833466da44e074f

0e4561724a8f3e5512b96c01e25abf84dceb44a4de0e117818df972d366bfb5f

ba26e8891650d628be2c1ecba0da7c5f73623818da427da719d566dea725f546

9074347d737ea02397d80d0bb9515598f402bc4f54969f97f0edc05393dee988

7e17f2c11dd7e2b44449ddf9da625b3f875ae63537f7b2b74bc6cca1b6ace095

3f15eba4d73f62b09ee4c65cfc6c604c1e5bd7cce19965ed7169e9fbddaea195

0b8c2e304ce3c895504f3a253812f92b862488a7d4975d640907464ce2fd589b

1ce2b4fda8dea63c1a2e14c705893419246729ca9de7031f667ea28642c66e0e

9cad967f3d40ac526d15ff1d97adf6197169ee8400af55d735dce11ee14a20f5

97660ce72279e07e48c6374526ef13c5fde793ece7dfba89a2624318931ea1d1

ef687a8831c54bad475cbcbcfaaa80f56fb0dfa0bda80ea4dd8dce8e40e55a5c

abde54f813ad358c6864f1638b2060ebcb9d3be3e3977e1e80924184529a7528

67607ad9a7e91cf889013c9ff7d3cc21e77179d1310e7aaae81ce99a28e66959

359953d57e96e8d34c13738c03fa0affc54731baab99018b1664be9d316360af

3d70ffdd1f99df8f586d75ea26bfd710db953667ac723a031b43d8875260bbfc

5752fee67c49c73831bdf8b7046fe63731c386cd27ce95e1b796ca1d97fd337b

605418c36efc8eebf047d4be7d5afc0714282e530a196e1dcd30eedae5312296

5e4d9c76c7c8438bda9136528a8103c478152f90ff45cd2b8ffd331822dfec82

a8bffaf31a8ee19d8eeb922a212ec1bc702d3f50c4ff7fcec8f2ae745fe923df

04ad9e3f969d90eead40c92673c771b1e7ff0e3d5f4e25bdb0af705ae05f5cb3

85fac26ce81fdd347f2475d8d5dcb1f360a6559dae140dafd10d51cc2f42f8bd

c8fbc3494d18cc2942af1141e63bd501cd275f15ab3cb078f61812be78af48e6

2bbd2b88d2984b2f44b26106455340963911b967cefd80687bd5d133cf7b47a8

769e23d5f7d7896436e8674ea029d23dbaab37087b803a2cc3bba127117b65f1

4668e9913fdeff4540ec1cd6ba6b6b7c1f0f45619a3bb4a233af5d1a0608a2e9

e3e2806dc0474d12a30f0ab649a8736f0ab71841324b297acd15818ea7eb545c

8ea3003335f2c64034508a4570579eade7278c27064f2f19821eab6e0dd4e366

ef4ede341d6d0a30efd61408c4344507645b6f5baead1949741feb883555accf

b4655edcf32f60f90bb9a38b80f51ce52f13728b55c6a6ea2af0cd75596a1c7f

8c9a42685c3859704886fe870f5bfa2e672231fd7432edc8ff3a8aedc7635bb6

013177588f1fcfe2b647fe1d7443901712b505914c3455434e9a1ef57575b3af

56a3fbba67a3ff5e08259b3f27ad799d86967aa8f638d31ffb291ec31a1c81e1

de0d3d5d5dbad8d5983acf2bb239b7ebd6a019a43417d6b2be25ec4c7849a44b

aae1aa98d11c7415859a95049841a3b0411e0ff824e18c3f04a2270cf0738e6e

a770c95cfe8d6bd216f497488de6adab9ced74aefe382860f10978d2b00fecfd

e781523b45112df43f3467fe44ba872eae30ed894798da45b25a36c73e027cb2

a08577b4e4d6eaba441827783eec4971647afcaf16dcc09395ca78ec8e4a7db9

c35899973a0e9e50102d25d92b400a73d762f28aa6d1b0643b41de6966187c9e

cada7b0faeb188b2f5de6421301bf984b7349a125073f29d07b4c3a2b52eab6b

ed33e945c4b1e05b5a270c550eeaca09f9736b3b80ef1a3d1e8f74c6589d1851

682d990dc28e397ecf2d88c2042c6a35fe9078338f766b771367511c75b1203b

3c56a50e5eb86ef1b519204bc622d473dc73c00594baf657bc52bb42fd2af631

a321085d22100b9ff3c752a39c560a9a5f02a8b21fa039faeb8908efc9814ffa

aade6f14f0ccfacc866b1ee9d91eff8bfe2b15f96db1f52bac3b29198de98dbf

bdb394b9af8c4577589966f26de1c3056fe9f4f41ae9929b0828ccef7542762e

51ab9f7d02c17975d5064cd8779726b3eb301b15f13c65fbaa390a88c0119a4e

a99d4beeb4c0b453818ec9b383a950eef17add7db66e3053e5f1e0f4e2cb2427

a62e8eba0fc59c564ba21c3bb3dce8f6694e9dd240b0331be55a446c7064a870

06dc62016fe3e40d8853b2eb757e00d02cc5de9ca0a20c1941e8b70fcb9d7ac7

7ce3b6378d4515a232cdbc3ed69c80f05236ae72ce868ea49dfa1353fd1da53d

363f2bc3f3f5da3147689f5d66f7fcad1199e1c654326e40767df6fd9fbd6233

e62f8c57b0c946171141366d75632682a5922d92cc7c1f54cb4a3da4bba8f223

888d47d26e861c10e1df3ff81dac7c198e5edd4092b03eaf45c0ba329890e50a

79d79f157212978c7921386f1522b2458b037fa2a61ed77e6e7aafdc649f0ef0

68f1ef8a033b2780ac9391ce6406c776f19880edefbceac10888fe3810d4654f

b2f0070b0b3dad57abd07851c312f65103f2f5898ece2d0cf183c1019a6c1d17

bf5ed28c0816ae6a35d65a4e8d01dd76df222dedcd2b7e4d4ca94df1d0431ae0

dece9c3099263744ca856bc9e9af79be3cf4e62eebe522d1b51ce25229e2ebee

3fecaf2f8da074abc66beae89188c63ad5ef81fb4b76fb8d763cc102046839e5

18fa5c760e77312639fab4aebf00e638b95876a9cffe58b2dcad9d0f427f7e30

66ba0fd2bcd9d8c8c978f3f3f334b8c7b13d0c46b2dc025ae7c1fd3f3fad12f4

59c9c126cc4ff5fe5df5b9f119d8981115ac857282ad8af7a8485e1837f824d1

813fa5524129386d5864c974a839e93986e9551a82e6504a0a2d12256f3912c2

3faf6a424a7a7fd770d157e73dc4dbadd54e1c9037095c1a288c6270383a5e7b

1c9d0d81e3d3be7aea24d23d8e24cfcc6340f72f4609fda12ac693a41bd5c1ec

5eb3565712257bc87ab790a7883a35cc3097c96e257b3d2f97bd5ea38ec2a1c8

daf5bb4fec449ad09c9faf100538badfa3d887fcdea1773a7934a84e1adb6df4

d1b3072768a1b1380da667ad6fd8f40947468c9b21c33e3b979ec6e2a0ae2cf5

7c4c4d06bc1f75da936642e05d6f89002e4e3f52c670ec14e2b2642307caf596

355b191ad970f87fd53efa1a5a65019a2ad543b61552826a5f1c1bbd2a3ac984

881882113fce1ccd6c236e9c23ae5d25638bf7d2930772d7b01f627156558d2e

1c4f692a20d7b9fdc6700cca2d238d655370eee7385c6f9d3dc3a8cb868bcd3e

2b263df37109d9f91bd2e390a4b0c245844bed953ec7f968e345451e2587d49e

98124103597faea863613694100327abe8fb1205eeceed79ca68534965bf2ea9

33a8c4bb7fc8f3de6b2dc90f71c37321db3d00638e795de1043d7ab7677a732c

342aab3d8d0cbd5c0cd3df6647a82b0267b6cb18479b7e709630b7a4b0ace4b4

93531242d1c74095e82e06bd250879da58009e8bc9af8d158a374a9e4c68669f

3fc84b7b75a69cd5a8002f717596e91d1056dae9e7f29c6e3858af62bc185710

afb559547e04662fd411ddd52ab114ff31a27b0c53cb4896f7ea762ca289eb93

1b9b9d7c91f840c73c6bb24d0e075b07e535789503d3520c86aaeb8e2a8a05c0

6679c0e1c85ee3b31dcbeeb59d67db5252245cc0cabc9f922ee51a4eb7623ea9

1b5af9d3aecb2849272c98127818d212f6df443466cb7400fc2e0b0137afb473

d050a6e7da829b3b8d26e60c92c120da07b3e54fb26f5a22baa991799156b629

c91698c8f77b658e8541f091f2b3385f17df6d4146183b46d4340e964d88e91c

360b897047468f73b59887c4caf0dcfa030ac6caa7377874975e76d135d340ef

fc36970d320af16d6ac23440bf24b2672813f1763f010e521d3cd05dd3585ad3

c27169bf2079a98c12a5efec6e99fb42a6517d1f87e3dddfb02481cd001f0efb

110d16f9cf6eeac69564deb78233924967a0fc9f188ec15fc0a21f3820c17fb3

6c4b44522013a12f62d2a158be69f4508b6f9d04e2a202a6e1bca7009948ec3a

9dd9cc320e7245241a7d13ae49a6456260d3e7bffc23e00e076555680d4d28aa

c0d67ff334f24041a3c478e81cf581fdd5bb07b4249efda8905040adfb309b40

22d469383c31a46468ffe4aca69c08f03841579401ad14fa987cb29fcb3390cd

9f0dd8534d4a4d2ba7f68e9414d9f5c788db25187da8401ae9302b32da71d8ae

0b1be999e724b0eab287f81636e49cd03d571e1e4d790074595bc1f7cfb9bee3

1ec541673a04548ef5360901dbbe9b9e27ad3d999be2b21bda8c6a6f51528c7a

19494db1057cf862326800313657fd4c80f9958354e5db295010b3c9a37f8378

0733bdc8631862a4d246a18921f8807b9981698c2c8ee6c1ec6936c87a273336

275ac4ac59da0d18ae05cffb21d1e93847834febe0616a1b03d90293b784ce8a

8d747531b46a22199228732ddfa3ec68242eadc8cc66a364b7499b9eacf825a6

f8893f35ef80b72ab110961d3697a3ac92a1566cba729789242b8eab44e771c3

08520c1bb8691879a596de43e5604175c837c0209351d3992fc3e49d36790a32

196fcdbc717e92ff8c997db4bb6609723e751f68c843491a8852c18a7f2dd0b4

c031f0fdba50b129dee0a296266717f635cb3f3a5fd323df94c7a8e3f876933d

21dc3b577fa481fb3dc51b497b80324d159947e84057a167cb5374a56eee144a

1f2aad63112bab0db535b1debd95f70ff5d9dbe1edd832423337ec6881f60b82

43605105c04999ef52f3283057250f4c0f3f3f54165cd06db9d59beb3f26bfc1

2c9df462b7dc0dbc17e1c87d168f2aa9837942677e36fc798c44a45806df3ea5

08bd883f1d962203605fccdf82a1fcec486ea63a9856b54734f5af9a48a8179c

c143076a02a0d62f105b11f5d4bdf16eff78a913da2dc21fa18a197c5add4933

44bbd3363ab73cf4944ccf52c0063dc00244b03ffec320f1a3c72df58e1da3e8

4a7673c0c6dc7887442d793f6bbded503ef067b9e86e1a69ffee0a92ec808b05

039c68d7a5f27351958a89de5c2bc0acae6a23be17d42813c8823959e31626aa

e89b1df8ca4e084365f3d6dcfcb7c191f009ab4b2fee3fcbe5a501e45f88460c

33110e71a2b11aa286dd8e6ab67da30cd8d543aa72593378d9c899ba1aea6020

4c3474841c2e543d9cbbcbf382868d78e589dee70f92aabf6be6177f9c0ad19f

d4a19e3e188c8e65d993ccec6dfd3c8b682e6d48713d0094d5173ab37cf01414

57b79e5b08d399cbed13761555605dc27afbb8a7e1dbacbab7f1a91021d8bcda

95c783f77fa13c25ef4bdf9c3cda7980065423ab0ebfa08832b6659f767e9b3e

90701156e937348a1f3d2ad50f0f38b4071acaaa38f4d58a91889153317443c2

df751bce2b87758ead266eebd1441deacb89a7c881f4b36635a66f33845f5631

6bf36b675c54637881f4b77dc5b7edc92d8cea276b9675324350fa874fa9363a

e8e1033a841bdda28228b9cad7688dc4361d513ebb3cc5166739a2991d304f88

bc08eca826913d0cd2f877129857f005c23e565f496c9c66a2edcbaca8190065

Comments are closed.