From 2afdf61e06a74ffd7bd80cd58eb218825cfa9095 Mon Sep 17 00:00:00 2001 From: MasonLiu <2857911564@qq.com> Date: Tue, 19 May 2026 20:58:49 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E5=A4=A7=E7=89=88=E6=9C=AC=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=EF=BC=8Csqlite=E5=B7=B2=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dev_test.py | 173 +- GotoSend/M_4hou.py | 51 +- GotoSend/__pycache__/M_4hou.cpython-312.pyc | Bin 7366 -> 7466 bytes GotoSend/__pycache__/anquanke.cpython-312.pyc | Bin 7259 -> 7287 bytes GotoSend/__pycache__/baidu.cpython-312.pyc | Bin 8336 -> 8257 bytes GotoSend/__pycache__/doonsec.cpython-312.pyc | Bin 9082 -> 9153 bytes GotoSend/__pycache__/freebuf.cpython-312.pyc | Bin 7356 -> 7477 bytes GotoSend/__pycache__/github.cpython-312.pyc | Bin 19002 -> 18577 bytes GotoSend/__pycache__/qianxin.cpython-312.pyc | Bin 7172 -> 7221 bytes GotoSend/__pycache__/seebug.cpython-312.pyc | Bin 7383 -> 7456 bytes .../__pycache__/sougou_wx.cpython-312.pyc | Bin 8762 -> 8724 bytes GotoSend/__pycache__/uni_rss.cpython-312.pyc | Bin 9013 -> 8930 bytes GotoSend/__pycache__/xianzhi.cpython-312.pyc | Bin 7010 -> 7186 bytes GotoSend/anquanke.py | 51 +- GotoSend/baidu.py | 43 +- GotoSend/doonsec.py | 51 +- GotoSend/freebuf.py | 51 +- GotoSend/github.py | 109 +- GotoSend/qianxin.py | 52 +- GotoSend/seebug.py | 52 +- GotoSend/sougou_wx.py | 58 +- GotoSend/uni_rss.py | 51 +- GotoSend/xianzhi.py | 47 +- README.md | 49 +- UpdateLOG.md | 3 +- install.sh | 14 +- resources/JSON/4hou.json | 220 +- resources/JSON/anquanke.json | 186 +- resources/JSON/baidu.json | 819 ++++- resources/JSON/doonsec.json | 2792 ++++++++--------- resources/JSON/github_keyword.json | 1791 +++++++++-- resources/JSON/huawei.json | 140 +- resources/JSON/qianxin.json | 80 +- resources/JSON/seebug.json | 176 +- resources/JSON/sougou-wx.json | 479 +-- resources/JSON/uni_rss.json | 612 ++-- resources/JSON/xianzhi.json | 1000 +++--- resources/db/4hou.db | Bin 0 -> 217088 bytes resources/db/anquanke.db | Bin 0 -> 12288 bytes resources/db/baidu.db | Bin 0 -> 176128 bytes resources/db/doonsec.db | Bin 0 -> 196608 bytes resources/db/freebuf.db | Bin 0 -> 20480 bytes resources/db/github.db | Bin 0 -> 323584 bytes resources/db/qianxin.db | Bin 0 -> 12288 bytes resources/db/sec_news.db | Bin 0 -> 12288 bytes resources/db/seebug.db | Bin 0 -> 20480 bytes resources/db/sougou-wx.db | Bin 0 -> 90112 bytes resources/db/uni_rss.db | Bin 0 -> 57344 bytes resources/db/web.db | Bin 0 -> 188416 bytes resources/db/xianzhi.db | Bin 0 -> 24576 bytes resources/history/baidu_news.md | 7 + resources/history/github.md | 23 + resources/history/sec_news.md | 8 + resources/history/tech_passage.md | 8 + resources/history/uni_passage.md | 6 + resources/history/wx_news.md | 6 + resources/log/core.log | 96 + uninstall.sh | 67 +- web/favicon.ico | Bin 0 -> 38700 bytes web/index.php | 1279 ++++++++ 开发计划.md | 4 +- 61 files changed, 7133 insertions(+), 3521 deletions(-) create mode 100644 resources/db/4hou.db create mode 100644 resources/db/anquanke.db create mode 100644 resources/db/baidu.db create mode 100644 resources/db/doonsec.db create mode 100644 resources/db/freebuf.db create mode 100644 resources/db/github.db create mode 100644 resources/db/qianxin.db create mode 100644 resources/db/sec_news.db create mode 100644 resources/db/seebug.db create mode 100644 resources/db/sougou-wx.db create mode 100644 resources/db/uni_rss.db create mode 100644 resources/db/web.db create mode 100644 resources/db/xianzhi.db create mode 100644 web/favicon.ico create mode 100644 web/index.php diff --git a/Dev_test.py b/Dev_test.py index cd59fdf..28f364a 100644 --- a/Dev_test.py +++ b/Dev_test.py @@ -4,6 +4,7 @@ @Description: 本程序可以爬取各安全资讯源,并发送到飞书群组。 """ +from math import log import schedule import os import signal @@ -20,6 +21,7 @@ from spider.xianzhi import xianzhi_main from spider.sougou_wx import sougou_wx_main from spider.github import github_main, load_github_config from spider.baidu import baidu_main +from spider.uni import uni_spider from GotoSend.M_4hou import Src_4hou from GotoSend.anquanke import Src_anquanke from GotoSend.doonsec import Src_doonsec @@ -30,6 +32,7 @@ from GotoSend.seebug import Src_seebug from GotoSend.sougou_wx import Src_sougou_wx from GotoSend.github import Src_github from GotoSend.baidu import Src_baidu +from GotoSend.uni_rss import Src_uni_rss from config.check_config import get_core_config, get_debug_config, get_keywords_config from loguru import logger @@ -59,46 +62,144 @@ e_hour, time_choice, choice, fs_activate, wx_activate, ding_activate, lx_activat def check_avaliable(info_long, info_short, title): + if info_long: # 发送完整文章相关内容 + if fs_activate == "True": + # logger.info(f"{title} 递送中(飞书):") + # webhook_url, timestamp, sign = gen_sign() + # result = SendToFeishu(info_long, title, webhook_url, timestamp, sign) + # logger.info(result) + time.sleep(15) + if info_short: # 发送精简文章相关内容 # 企业微信相关 if wx_activate == "True": # logger.info(f"{title} 递送中(企业微信):") - print("正在发送精简文章内容...") for info in info_short: result = SendToWX(info, title) - print(result) logger.info(result) - time.sleep(15) - else: - print("精简文章内容为空,跳过执行。") - pass - - if info_long: # 发送完整文章相关内容 - if fs_activate == "True": - # logger.info(f"{title} 递送中(飞书):") - webhook_url, timestamp, sign = gen_sign() - result = SendToFeishu(info_long, title, webhook_url, timestamp, sign) - logger.info(result) time.sleep(15) - else: - pass - if not info_long and not info_short: - logger.info(f"{title}数据为空,跳过执行。") + + # 钉钉相关 + if ding_activate == "True": + # logger.info(f"{title} 递送中(钉钉):") + # for info in info_short: # 开发中,暂未实现 + # result = SendToDD(info, title) + # logger.info(result) + time.sleep(15) def send_job_RSS(time_1): Doonsec_switch, Doonsec = get_keywords_config('Doonsec') - results = Src_doonsec(Doonsec_switch, Doonsec) - if results != False: - result_doonsec_long, result_doonsec_short = results - check_avaliable(result_doonsec_long, result_doonsec_short, "洞见微信安全资讯") + uni_switch, Unity = get_keywords_config('Unity') + + # Seebug数据获取分发 + # seebug_main() + seebug_results = Src_seebug(time_1) + if seebug_results != False: + result_seebug_long, result_seebug_short = seebug_results + else: + logger.info("Seebug数据为空,跳过执行。") + + # 安全客数据获取分发 + # anquanke_main() + anquanke_results = Src_anquanke(time_1) + if anquanke_results != False: + result_anquanke_long, result_anquanke_short = anquanke_results + else: + logger.info("安全客数据为空,跳过执行。") + + # 华为数据获取分发 + # huawei_main() + + # 奇安信数据获取分发 + # qianxin_main() + qianxin_results = Src_qianxin(time_1) + if qianxin_results != False: + result_qianxin_long, result_qianxin_short = qianxin_results + else: + logger.info("奇安信数据为空,跳过执行。") + + # FreeBuf数据获取分发 + # freebuf_main() + freebuf_results = Src_freebuf(time_1) + if freebuf_results != False: + result_freebuf_long, result_freebuf_short = freebuf_results + else: + logger.info("FreeBuf数据为空,跳过执行。") + + # 先知数据获取分发 + # xianzhi_main() + xianzhi_results = Src_xianzhi(time_1) + if xianzhi_results != False: + result_xianzhi_long, result_xianzhi_short = xianzhi_results + else: + logger.info("先知数据为空,跳过执行。") + + # 4hou数据获取分发 + # M_4hou_main() + M_4hou_results = Src_4hou(time_1) + if M_4hou_results != False: + result_4hou_long, result_4hou_short = M_4hou_results + else: + logger.info("嘶吼数据为空,跳过执行。") + + # 洞见微信安全数据获取分发 + # doonsec_main() + doonsec_results = Src_doonsec(Doonsec_switch, Doonsec) + if doonsec_results != False: + result_doonsec_long, result_doonsec_short = doonsec_results + else: + logger.info("洞见微信安全数据为空,跳过执行。") + # 聚合RSS数据获取分发 + uni_spider() + rss_results = Src_uni_rss(uni_switch, Unity) + if rss_results != False: + logger.info("聚合RSS数据获取完成") + else: + logger.info("聚合RSS数据为空,跳过执行。") + +def send_job_SX(): + Sogou_WX = get_keywords_config('Sogou-WX') + sougou_wx_main(Sogou_WX) + results = Src_sougou_wx() + if results != False: + logger.info("微信公众号数据获取完成") + else: + logger.info("微信公众号数据为空,跳过执行。") + +def send_job_github(time_1): + keyword_list, tool_list, user_list, black_words = load_github_config() + github_main(keyword_list, tool_list, user_list, black_words) + results = Src_github(time_1) + + # 解构返回的结果 + result_github_1_long, result_github_1_short = results[0] + result_github_2_long, result_github_2_short = results[1] + result_github_3_long, result_github_3_short = results[2] + result_github_4_long, result_github_4_short = results[3] + + +def send_job_baidu(): + Baidu = get_keywords_config('Baidu') + baidu_main(Baidu) + results = Src_baidu() + if results != False: + logger.info("百度搜索已完成") + else: + logger.info("百度搜索数据为空,跳过执行。") def main_job(e_hour): logger.info(f"发送程序启动,当前时间为:{datetime.now().strftime('%Y-%m-%d %H:%M:%S')}") logger.info("正在启动各爬虫并获取资源中...") if 0 in choice: send_job_RSS(e_hour) + if 1 in choice: + send_job_SX() + if 2 in choice: + send_job_github(e_hour) + if 3 in choice: + send_job_baidu() logger.info("单次运行结束,等待下一次运行...") def main_loop(time_choice): @@ -112,6 +213,7 @@ def main_loop(time_choice): except Exception as e: logger.error(f"发生错误: {e}, 程序已暂停") # result = SendToFeishu(f"发生错误: {e}, 程序已退出", "报错信息") + # logger.info(result) exit() elif time_choice == 0: @@ -126,25 +228,16 @@ def main_loop(time_choice): schedule.run_pending() time.sleep(60) # 每分钟检查一次是否有任务需要执行 + + if __name__ == "__main__": logger.info("程序正在运行当中。") + time.sleep(5) # 添加短暂的延迟 + + # 首次运行先暂停两分钟 + # time.sleep(2 * 60) - results = Src_anquanke(4) - if results != False: - result_long, short_results = results - - # 打印长文本结果 - print("长文本结果:") - print(result_long) - print("\n" + "-" * 40 + "\n") - - # 打印分块的短文本结果 - print("分块的短文本结果:") - for short_result in short_results: - print(short_result) - print("\n" + "-" * 40 + "\n") - else: - # 如果为空,则跳过执行 - print("-" * 40) - print("安全客数据为空,跳过执行。") - # main_loop(time_choice) \ No newline at end of file + # send_job_RSS(2400) + # send_job_baidu() + send_job_SX() + # send_job_github(240) diff --git a/GotoSend/M_4hou.py b/GotoSend/M_4hou.py index 97f2b55..80fd51f 100644 --- a/GotoSend/M_4hou.py +++ b/GotoSend/M_4hou.py @@ -97,24 +97,35 @@ def clear_table(): conn.commit() conn.close() -def record_md(result, filename="./resources/history/sec_news.md"): - # 读取现有内容 - if os.path.exists(filename): - with open(filename, 'r', encoding='utf-8') as file: - existing_content = file.read() - else: - existing_content = "" +def record(title, link, author, upload_time, description=None, source=None, category=None): + db_path = './resources/db/web.db' + conn = sqlite3.connect(db_path) + cursor = conn.cursor() - # 将新内容插入到现有内容的开头 - new_content = result + existing_content + # 创建表(如果不存在) + cursor.execute('''CREATE TABLE IF NOT EXISTS sec_news ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + article_title TEXT, + link TEXT, + author TEXT, + description TEXT, + source TEXT, + upload_time DATETIME, + category TEXT + )''') - # 写回文件 - with open(filename, 'w', encoding='utf-8') as file: - file.write(new_content) + # 插入数据 + cursor.execute(''' + INSERT INTO sec_news (article_title, link, author, description, source, upload_time, category) + VALUES (?, ?, ?, ?, ?, ?, ?) + ''', (title, link, author, description, source, upload_time, category)) + + conn.commit() + conn.close() + def get_filtered_articles(entries): result_long = "" result_short = "" - record = "" short_results = [] for entry in entries: @@ -136,17 +147,19 @@ def get_filtered_articles(entries): else: result_short = temp_result - record += f"#### 文章:[{entry[1]}]({entry[2]})\n" - record += f"**作者**:{entry[5]}\n" - record += f"**上传时间**:{entry[4]}\n" - record += "\n" + "-" * 40 + "\n" # 添加分隔线以便区分不同文章 + record( + title=entry[1], + link=entry[2], + author=entry[5], + upload_time=entry[4], + description=None, + source="嘶吼" + ) # 处理最后一个结果 if result_short: short_results.append(result_short) - record_md(record) - return result_long, short_results def Src_4hou(e_hour): diff --git a/GotoSend/__pycache__/M_4hou.cpython-312.pyc b/GotoSend/__pycache__/M_4hou.cpython-312.pyc index cdf0b10ab3dd4597e040001a54fb5fa2fd7183eb..eff69a1291f8a2222b45e19ce9b7f83c7bdf8828 100644 GIT binary patch delta 1399 zcmZuwe`p(39KUzJ?_$y>xuoguE3RE{hPHo*KjNe+O-q~h#I-o3D_NSmZkb&YU(y!4 zi%mhP!@*h~)2LJYfgo#FZKJGsEx%WQb z@8^5(eecWrFGM_Fx!p2_$Bmz*6Q4AG=y{BxdrXvIf^2-ioZnnv{^o(UIWIpBz`@P0 zT^a-W(Vw0uh;BYuw*kNq`mKHp2xx~<} z#&qw3Io)GSCn)TJbh=r{naOzCTtHbmA|_xym7F!>=mNc;Pt4_yXCV5V*4iuK>O}O3 ziLk6z$6R(clQ81>)Je2MD@(~l-aM9p&p0Yaq%E%PiHG&^=%ER9Sf6-Qtvcq^?wVgd zm7g`k>TD|gR9LO}hE>DNC1EO?Pi4|!wNgP?{nr%hYnB?eL4R@0OJTJiU*uI)p@4Tp zlVK1)U;}|h3}x4C8DNOa@Ri(Uv6ikZ7}N1=B7Yp#kuY-1IRe%1Cb{dKKxig2(12t3 z#UP@k48|g5dpe6lKe&8n`%m|m?!D@|vp8V8y=Ny+Prf)+9Ngw9&b6X1>)Vv1NH-~o zlea^AQ;Z^FfvbL1S)DJPdVla@?6c6f(#TDL;YPu>OmWgmY&rJan9YhSBg-Stk3t{z zOja5O-D2t@FJSI;6TlrsAEOGmR|cr5w{bhM7BFzn7!28o*C~U=oU3x)Vv$>E04(ZM z+7JJ~=8oI+Zp`Istmh5Ms9VH24Uu4h!=1@FjL%mp!?PBDfEzO!-V&cRdVo}fG!3*(T~ACmeh}Y4g0!|VDc=!a}VLK$Nk__iZR4nB;2Z`{Wp zCNoc>P*W>+6w~)mr0G=KAzW_- zVGR@sIPMH#ECI*e@pRlBW2YFhVNMC~C}w3b9#1Dun(;UsAPd!UzG&_RGw6@z2jmd& P?%v%Ax^{IGX*u%`1A}K6 delta 1544 zcmZuxZA@EL7(VBI^|sJLKl$pU2ne@zd^rU-i4KL3Y)q%w47#O|-pf};F}EdM%PsAG z7?@ci^Cp7Z&`$q!LJUjQ><9jsF^h?RT5V#}7{d=T^^Y<%A(@HsJ(u#ag||7+ea~~= z^PacoJm-9V^xpHPAB;u=0{iZ>pN5yqZ<|ijl)GCUq#da#`acfeN<|E3G44!diUb_DcE%MfVv$;=mq-xU zvnWa_l==WWyP~v+$Zx5T4;Y-alr5$(OIS;du$FFr!Z4~u zttfy)6h{3pj?tC&i*!E<;m7$f+U5oBlw1qxA>F459463AAl3qy zXG8L6P!iZYCrg3J3&A`;GfSS}#k!30d@xi}GvG7oi2N0>sg}PCpa66q=d7G(9(x)m8sujG5;e7hX;_WQ}bb z2r?4s=N1i=#&2-Q`9zv8hp)9FUFFGGJn<9%aL8bq9a*3g!&!Y3 z#IdfGx*T8pzTvWA?pT(uhWV^Z0XvUG90g@WDQNUC9JPX8LFZF&=qxCPQdp6$fC<-;$biol zd=7kF!RHrs5hKLwFig-Ztoow8`ptu<74J)71m93dVOrFSB}8c=uj!3bD23BJU2wN_ zMK?yP8EjR*w^w3DJ?*H8aZ$=oDLN1`Em|PoL8V$3S*<)8Vr-9;P4DvdeYNn5dwkJ$ z#FeiYq)@V1VaA9)c1`sceR{~@$m}_q&LJ5XR*iPhjuYYsn_xQVRH%yqcZZmh@TVGAwpa1%g`7bqIVDdDm zJI_ge--Ia1?GUCZRp8ZdS-lP}0nx9zSk}t&Fy>N!EUWVjkSJ(@Y1rI2%2{mj6FI9r zellk)iTC7ej(FdixqK5jSV47`=VNQUY3|iTce3VYZ{le3^%Zty@HU@}+_9!Dof*D! zmdimvU!p#VZ#E_>lWl2BQ-*KS=(MdN$tDMH@rlTaC2cv9;g4+dmc|Uu8RP6wma(rDITlhcR4};Zu`6#T|Dl&aCxIFQJp={-1Xk`+ z->IzQ-XhF-^;+d2mfYP1b+vK|pHVxiocOGIrYh8eBh^jK@KQ`n%04O3JOXdSgdA=T zNIow-3xTF_QLxIbBn#O-*`xkiRsM{&qPCb;0C^d-Wo5EPp7(mmbK~{O-DIFpg5Ye% YV`{(in8Ao$o6b7?)aFU`W9OCs0UCjPzW@LL diff --git a/GotoSend/__pycache__/anquanke.cpython-312.pyc b/GotoSend/__pycache__/anquanke.cpython-312.pyc index 60f4871ddf09982e99bb32568bf1a8f0af7317cb..395530b06793828ac91a557ab890109423393768 100644 GIT binary patch delta 1469 zcmZ`(O>7%Q6yDkOu6OOkwd0@IjY~HwNwd^#0s>(LiIBujl_qgZV?-foEyue_6I^c? zZ(8E6i9v!Yq*4=&R9sM{s2o};RYjF62QHitDiI*86rmnSIdEtiDv&twX5*NE#7Oha z+c)#R_ukI8dq4VT)b(|Jy@P>K_)403HgwlD#f3Yx&e35lJAOE+>)FG-x~h$ynC;Px zR7^X+y2$;-BV~0#N+A?o{mn7Rp_fS16-Pa*@49Xy6eEY+L(O(dSsj#~gZcYIfR7m! z73~HhdNAxV?JH>eP*F5Ra@Xx6%XJbbnG(5&nh{0+KF(xJWU{8sDUuH#}ASPp=qwFCCJ1uPMDVHJ_N5NIt0RF zCzvAWDaM>$W|*SQL@MY?bI@`C3o!#+;iQox(iT%>Y!NULF&9^2}Z3UQ<&n&8uF4y-o1!}55-UR`|1YxBAa7P zp~xDw?+uu(c3`zyfz@h5_3q@n?OWj?5e&p!zF}ib7JJMZr;JQ)oE>Hqe*zzXGc)vd zA6~um>&o(@FFqN;&BW=y*(-r_)0XsNB@2`s+76s&lIWzSNy;(e+T+*eLt6aR1ul4J8A1U!y1 zqOT(Qe-y)OVz@l|z4#2ssIGA}7UWS!3nav?6b@4GP>4~8QV3J%p+Jj+Mqehgp*G<) z>Uo{q3^ns-!2FDS6S{_8B@=rK4O}9TP`vmMJt0zPA)cmS)MB%UEOPn^EJ{q{*TqyS pmp-SZQn;ILY|~S#jij5}kV-yk>U6q;$g}l)D{9?3LGCqO{u>!qX`=uD delta 1632 zcmaJ>ZA@EL7(VBIx6ndADIcRn7;E|5COU>&j3A2%1C3jZ%h1ZWmyZS7qHON`oyF)SFfm>GjV^@nXFv8lRXLQvz6F*G6Jm+!eP!WQDWIq!Y%bDsBo z&pr3K?{@Rg&BpHy20el?_~DQJuQ=`)FVl{?_LlB*(okRhdB1f&MIwPpPMj?fN!Ia0X^zNk#uSlC%ak=(h#!JUTr zw+pK)+|zXmUc}iY*&XC_B&1*wi_~ZIBB8=~3PmV|QXk^7)(9;kaxLbvV&tPlCPFJH zN{4|OVIE1t9+1XFS)&TGTNi8T_9q-gmFO4>;1Gq;1%%<6JaL7-fI|3jd=zDI57#A^ zLvh(jjEk5mFc}>3aB?+yJVK0{m>OcDwO})BNFEGI9yY_tQeb2#m=XF0ha_Lmup~E; z^+M^&U?4c?>-YBheL=|=%;fo`(C$Nk1&)ghxsb4RvefIBMendEcf#`s)PJnPc%ZOd+^ zoo(|jxDzNUfqi{$dajvXIb?2S=#^%+74zRRY^#A+jg0-$eGtVA5^)5C5TRhw{qSWK z^gMd)8~Da72!v8tkuHWjw~)wy&*pp%d_Lz3;Ola}eqI+gKrDvXJcU)STb&&TXD~uk zelDtDo)-&=u0*}2E>58oPV@L+PPhmu{AF5AVT;P!N-(3oW2=aA5z0p?Jjj+7Es*b^ zom%HvZAUb4Z2NYtpQr!B?T@^{9$vI>kNf$CY@~j2g+U4>n-sDg*NJ`q1idGG1uIM+ zbq;wPU7B7;NEg_+IsW@%{K38VF3L}+KiEEr764cY!?m{(rabx)I80Piv;Ot_f5hId zseynTvN8YB##hr>#FFLQy}o`gzA^LVpEF-*xQEHmAoL6;`Ff$X$WH=I6Rk(c@St;f zPzq%7vOk6To!!dA4??u9{%SwQ3P5(L=Ax?F*TM6{49vl&h@rIE8tX_~Y_YRxLqY6J z+G>w=u9+NLsEGBb-9`7KYl3n5#dv$7V&R2&OXB4vcB$u%kO<$kB+aK&!s!Vv4TR44 z;RIfA$4e5&ljeq$(C~k7(t0GpCVFlQ@$iy4X>LjhO&UFEcBcgQHEy#JYCmj3f;BDJ z>^})*DWPn(dsV1eXABd4tBh?e&%Qk7VDZt%x`c_GNINkni76w7bXb|Zvxk+RRhNt1 z+^Yn+sQy-5!CnIQrplMh;q&T3N%$xZI~y9|1pOm&uM}t;fJWk%M;ilDuNQhqpkY|_ zSmZhqPtH@WR_jY0%~~z3j8>Yo5v`z1vS$RZm-HsDS8gQ>+2X|WsF6}P9#B6nZOJnl RuxqRQFs|O}QvWKQ{1=7SpRE7@ diff --git a/GotoSend/__pycache__/baidu.cpython-312.pyc b/GotoSend/__pycache__/baidu.cpython-312.pyc index a59cf84db17b25d671bf06f04abd71b1d6bbf062..89214c46a5129cac58c2969fc69b3f8120ca7b1a 100644 GIT binary patch delta 1307 zcmZuwUrbw77{BNK>upPcLQDBKdQm{Sl%X?=I+sA9WnmrNpm&i3X4Cdww5+u3w3Q8S zT_GmOG#SZBl(}eFvIh*BFnMqfW-^{kjEP2#P2+n14S6_=r(aUL;GXqgEHU zP$eX9(oN(W;Rq+`5*ZMkCm=U+w3Ij2~c#Pc0MC#biSNYJQ z^H@LDGU*(SYngsE*1w>|j;XQ5N5c~VpAwK2-_Y5BJUSwW&M9(Wax|=jKVi)_!%BEZUTdwDYO8TtWQx&VkHl5qdO)w7MYJ`-^6t^*g|YJ*EJDqacCW% zhoxnhnK^(0Q>^VSoc_()aARO~VEv_^tj`wwMVtM`)aumx7Yie0krAvbp`}onksRhH zj3ijfO@~XILxKQn{hDL#?TwMm;62w5X5SMNCk&&qg%Qjv!KL84V?|zCIkQC4f^(P( z&rrx72*OYZ0+q0DFnPFsKXdUu!{m7#sUQQDqi4Lus66;W)faW1bh=zEylSbgNS|OS#l6_Yz z;)t!e^EDyQrdVCfvsro{#yIHnphvJKnjNgsA=sMgw^4Pg`d$$8!7k6}EVk=LZW-y^ z3>#)VO(EO^{2cvLe|)&|Xlvu~*B?*eF4EfaeVd0baY-#z617wuo+&;7LB@T0Oyojq zH(73do~NymuUfmFi-L0tW@Z7-1ozzFCY>z8jfZ=Be)-+p=X!uAWFO>XDzjo-bp>)gHkp!pZ+Ou3J;{yGkNC`!&> zrS>1C_VwwXrK9A__WiD2+L4FCQ3?(Urzp571Sv$xw@12rr>XloK!yjPZx7dlQ!@MDS_4 fc32As$W3=Ink9SglNJ}U?;r0(J^Ld>l&}8_Br8ks delta 1633 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 X$%TdkSSME+p64Yjuh){5hDUz^lD&KH diff --git a/GotoSend/__pycache__/freebuf.cpython-312.pyc b/GotoSend/__pycache__/freebuf.cpython-312.pyc index 3e9c1972cd20ec0849858dfe568fe87d51404a5a..f83dfa789b6606549041ddbec053ba53e7955b07 100644 GIT binary patch delta 1426 zcmZuxO>7%Q6rS1jdUx&Gss9qkcAJeLKO5X62m~UH6cyq`i4#+Bh>DV8Z0{y@alK)@ zX-QZUM=C@Wm6~)Ua6uJtsgPVGP=tg;4qPfBaVQl?tSmrCpd!QpH$+@v#((XBk>{J| zdGCGi&Fr_k_tfVj&TkwJ8zAGSTjJS&J3n*Iv!Nk%WHGL0myXS8TK3p8nxZbATzgv6 z6XWXnU4s>QDDS>yTZC|Q_gA~j!ZGYgXti(ht#tZ0b%HtdEJeMeXW7|>u0i@_PJVO`?OOg#qzl5-Ds zK>@p%?xU92x^Hj@sd;S`rPch9k{Y_8rUsQ%5|ASJIVQ;G)pR1KUch-~L`Wh%lg_FM z{0Y-%O|I%^G=y(4a#uZFnv0y83)`f|SY63#NhP6Y&fx>5Z)1I@<(Z1bBhSxCQ?a>c zr3QUo>TiVDl>m# z=7mUH>K_YBW8n=lANbXy5WR5OhT6%3ItWx6r>fW=;70zMr(P9x(m%YCN~|RHGpLPb z(npo2&^)>%p~E!Hiqy1*6f_IK22f~}MxY2xXHRkRN4xvV*rl=3li%4NDvp~D*Oi4! z3vZt;PE@Ucvv0*VV^tt}#RDL6wyM9i#d-x2U_ZR=-9BG>{o{#GqhI;I6{in)mYac9 z8{ovP=w|fdtZ5OprZ=bGoI!3?i!qNl34-^ZrxrS{eHs7#?>-@Td#6uD<8Ww!q+ZFx)tV1Nr*2r>P=N0EVVO9i+ z1&)Z7t65gP)u~}U%i=rGgTL?wAX}6An(xrO!4;SsV^|A}-g;r0jW(N9K(iQGU9_m; zCRVNKo1Stb4}!}dS%ASHm(il{CNB=V#KeK@jiG*$xJsYw-FLQrFMs&g-g^tE7w`G5 z#{Qu9SK%j+s-{+#Wd6Q}&=m2YX$n+0C`y5LAX_SIR?StcYA#Ja4(JK$AkqLbkIU^n z*lZuR(8jQ%+Rb4 z2ey%j-eiEww9~|tFtr3Vi}GhC{xZ=vHnFMx;0KPFn8?tCWWRjRZDAkT&dqu5xzGEa z_kDBjbKY;d*Ip|7$zaeU7=h1z9sRj-rR*GC>FVnqI4ezzw7lW-O|%^IiPFHCu-g|{ zjng_FFRfnH4`AH8x>@3+@hhsaybt%UzFB@7>yJa6L74s?HANp(pEn+;ph)cE;NVTe z{MUiizxfvrDR>zdOmb6zFFGLwi&&&?)62va#tSG)DU^C2+uc!GMC4g6M#acWiAha%Ym|8`4EvNYM#>UXnBBZs3-@TiFseiC$d5x5M&}WRXSQ>SK9559Nj{7UypuaE z*Fkc*o|I+kT3B{q1_KZ3qB4qs%=@S5x;%crkqA-E^sahXzXHw>V@! zkQOT8ZLUi1cV$ej_=*2Gq%WHpTc8u8SzRmmv5r)IPAGj}e?>pnlND-UKkLx=9rJFa z2Ro)+@`1l126cUDJlaLyea_@&=(}C48}mOftlPj37xe%h2!~(F%W&Rx{YFrmfYOQHN}`F)m7ZDTN0K)1vViMVfB1 zT2>l-%#RgZsEhEHr_@XMLcR3tR}4}p*{CoVi8A(v>a&?TAGs9tL**-2VMeI4$Z0*T z2{uUDz`g6!o6CuR);@Y$Zd5^vuVhoP0oo#3X4)G4U%RW$IRe0GmVo zy`tWA0aku8{cyT*lrvf4Cvs+M{AA8h9`DatZ1Gd;#>#DEW1VV4yp=|E8L|?M@ z*6~Dl^7Ry(8d?#OkvrzJsW&6^&Tu(!IF)Ef;#*CL>SRaS)S3}mH9Bo+OtQ(LB_R<> znbM{s8R1BQH#KF1rYqc53naPUfdorVu>L04GlG3#AS*O)Fov0tEMr|Su`R3~tzz)u zCvLkD>X%7RlzR!(66hyz0l>-1ZZ%llz`aG7K{ZkBV9B*zRDY~q#OGAc{;3#_)U>ui zd+-J2VaeY%1`WX{hui$pum^g9zjab{n&oz~pB!AF*^nC}GX%8sT2d{&mRYNYbO@~m snIy~$9uH|d9*^8d4261#LG7};@H?t#@6j8uWBWioKDd2SU9!*q4_PFIHUIzs diff --git a/GotoSend/__pycache__/github.cpython-312.pyc b/GotoSend/__pycache__/github.cpython-312.pyc index 352028244c9bca4d46ea60db0dedcb62a7c0cd15..96260208b1353b4d9c51b53edf01739b360fbd53 100644 GIT binary patch delta 2889 zcmbVOYituo5Wa`cKHJ#XiC=M?#3tln;uvUo1PY`f34sO-EolWJspaI3#KG8MbA~2d zdOqJ8!0I@bmTW(Y4vD^;;SJMuNEkyBb3DF5KF1ir$~S+TdkN&+3tZ zEb)XG3E7DM3ZJMVW38EiVc~!G7LX4qfga=WHM-I!^XF)F&zMm*4sy7K@#@D+vT4wO zTUtx;_V5x`tt5uWW8)S$e&|WS(=iKxS6S%nMF4sF9>7hg_CPbz9 zVbR~#($(IzV^=#qt_$FktgA`I^mn!I>oWPF1xHUSJ>hpm_O`#&1zp!}zj}bbejfdj z*Sji~mIhKN2S z4qP{vOf;Wto?ic*xq7@UXR%KlICOQ zX4|A=^7xr;pLSk!U#|ah+qcHO_Y5reGCgOaI3qs1GSE+SQ^G^X6~cpo5MleNF`Z1c zQIky1s}wcH$+W;6ss}SZk{JP_K+u(e;Au+WfM*K49(Y56=VuM07La6MzftCJWR1Iq z6D);Q^DH~RY6YpKg?St7y!cF2=D+bvK}th&EJP6O1vKZZMR1LRo`RXsF}+lXc!~lE zMQi94jiEOYDd+(;qc92#Oem&8uP7>0}06V^Cc4KA2ht`yS>F?<_ZO za5?Nz4g>cUJHiL^s!5rJ3l*@S*;EO<<}JPmv_yq}qykm*;FREh1YTg)tokeSv<_R~ zFV#xITcZSZh7 zWgS$O^J}Zh^keKK^KOr9Q2Lk-@Q__wwL_UX$n2$p;Rx~qGIHTi(<^i*exqq({ir!2 z9`g^O)S%cW1^GpfGJ=;%E4_sC6A}f2OEz4wjav7pa!>;VsO$L04PnzLPXHzOD8R;z zc&&Xetg#4+BPD|L?V%sE`+yKdM$cc~=J)#1#h zzuV_n%Hq9eqb#L4SNU|y)IiSZonAe)FXs!K3CwKQI=657#i`eFo{H(%44*5joIWz+ z$+?&RX*XJ|a}NC0=3iU>A5ulmUH3-;1#P*sSw*ovsXo4386X5Sgr???*W7!Uuz#^3 zs^Ieb%F!ir6WMcabJhzAb}Y_B-oFXu9^!QG8^_m45)*->V@2 delta 3338 zcmbVOeNa7V-spPx!Gkpol3ZH$p;-zBdMZ6wLe z(1&C-W3sh29C}F@=q-QQ=^Q9;aq_~UeIw0Icj&hAN(wm}`XFP4EX)BzVlI#WM{o8q+~}=5sb1%%fT`Heh%43w&3% z+scTNqNF3+9{QU(M3K8fALLxpkeg6*$!W4U6fS9|l#SSC12UDCksYYDbb>q>3YTWl zdaF`o@e+rL3X?|kuZpo;3fRO@0z<>^frTW9GlZK!5i$qOa0XPxsf)xCH?|-RFUgZU zb&0-+x5L;%j8b0eEftDXW}_BWT8)F^6{ED5@X^O$c~r4Rm3fS+22E|(>lGKlGae+t zOMe%s-x{*0Q*|iMVDya;N9osyVbZGX5cRN0G+>f}Nj8uuISf&j;b}Q06_`|EQVk@^ z42yQRU}d68QE+(%+)=LAJ|H-{2L*8}Uf&=bwY%JQM_*Tu)8Q5z?x@Bg3@0WohVT)D z1rIS5Z&!&zk5lBk26>T(c{u=gO#$O47FpHU@QLBE<0p;>`sdmFzv|KgC1+cL#q+wF zdjzQ}o#Pks3qKh-H*)@$VQtPs8bp%(o|4GP3v(v;uQ!LYOC#x}{yqOx66%!k{9Ylb7BLWwygbbjLl)%~k z!b|bASIH~Ppnaa;8Q`fnukC$*WR60K~`ptUgjp*GX5c+&#(c~VFt9Ugw_t$GuI+aS~AHHm;o!soF!q- zNX?cZ%>h~YmR#R@c5-Ei^497l(dAETcq4uqyheH;tm7hJR7)6N1&kJ%UIFm36HVYn zpVy|wPL_d_<#ni_F1z>%^msTiyzkh0vjwk@pPt{_0m38ikWlAA3H&KxwmMvQmM}_PJ93o|M`+5J0Qyp zUIs<#3}|n?&c}|@4$8~H=OvMY&wCZT6+EnygNYO4xj1?S?6<-GM6{Y|T8awGOF^E9 zTrMvIxs+QzNb+)+{4{Z~ax8Hb0qRsmAqXN&G&MWG)KMWfq**g7ZYA z|0~gO5Sw9t;<;<4b64+b)yceq@X}&hGE21bVkN68Udqe#QZEtKEge$L5Hrz{`u$`( zx=}xg#-I5fbvIO?a}CHR)fPLkfgn6-@JtI~Sniw*-F^S^@)xIX`vV?afNZwA7ry%Y z`O8a_lgr=E*=+x~_EB8Ecy(g&+RW0KKi)m_rCfgJn*Yw^)bba9SPuGQa{SR%+iZ*9 ze7x*G852Q$@x?sG%!Aq2<93(Mf4TJG+<*Iv%VqumIpABG3@m>AS<?m+exKhqDxKb{p8~l3~^cnv41zoDYZNXsl@4b~~ zdO*BPGUX_x>EG;qn$Tt4)1nu*F0m_deq`IXabAr)&wfh5a{F_&hWFZUWp5g9zokhF zbWSubXw$OM$F>I`lXzQO?-u2xpH>mkw3yb`RwaA0P482x5j zUWZYLXodd|gFMPpQj{Dz@vLR9QH*HCpEns-y=SNJrLH(Af-@{|89#D45iaNKp?S`> zsL+k~&MPuP7oIyu?ZM4T>}mF4t{oFQ5Uc8^tsTyA@en4vFgb_`PB764#F`@RLnm8q zGh;BB2@USpPHH66CcGmXebrh(4xqoZy0_rgv1697(ow3SN)++32Z#%ILWyqgk*cXr za0o|-#BJhfkpGC@Z5!~B$8swwA=RB8u}5%K_Cx#V6h|ui?CyTg;fg`tnjzL;b5i3i z^`+RRsK7)5zlvK5gU1U}1Q>Lb>*~VYX;+tc952*i8EIcdh&py=XZ;#4;V+cbl|JH{ j2A#ZTK-eZC^v=$D-GdD}(sDoVFiCE@zYE>m`Tc(YbANm^ diff --git a/GotoSend/__pycache__/qianxin.cpython-312.pyc b/GotoSend/__pycache__/qianxin.cpython-312.pyc index 5745c2c4bbea989c86e70d05a4fc26cb0a16b757..59ab8735afe43f910da42da2fa88fa8ccd1f5926 100644 GIT binary patch delta 1443 zcmZ`(TWlLe6y4eP+Ob=55l0`b2EBw{&3PTa)(C^O`n^(^sHf~#`Fu- zW#&^3C{Pws^cUBhR|28I2ft2?z;etqK!S1`vsD+*+_Z@e}8OY_<+(tNkI49 z``nhW4jLgP(Gt;Tpoftx34H^40l`2IV^J2cXp6NNi?jH7VV!Qo0}99A2m67DJaq3q zHnAKy5`%idD8h_hh-vBAn|k_)mR4CzfTrn4hpA^4Q%h>0pf2dhq@O&dLNlAm=_xa7 z=5#q3e>oX-$jz3^=3jrvr54Ra1EM;utQ41WhN|I(=XH5(BpFYRPsaaQn^8@D!GM<@ zTHlanJ8c?e`MoyXcw#30LQ)=2B%hae>y!`uOJr0gx}wMAhL)(T>4gl;E}2;)AC-5h zipnh!QMtjZIM6iLgBH1t6-aJIaX>%r>MY4v=Nk#@&RscRCz%&piC~Zn1uc!w&|HLj z@CcG?Ef8oOn=HeE7A!-b?VVXWn2N@KCjHEkZ-Lemy+ z3Ck`V4{*GM{f@SuY5Sen-|-**1FlBM{}Q<^7M=8k!yK+@ZW#+H@n-V{P?W`=W6&n> zp;ccOV9-rp?*vz(^R&g6XtVvCFtxn}+}rY75?hiq-(CMYhg0JQsB3pv%A%pivh&Hn zV&>@?N(m(3BY3_@E^q7o%fGFE^81$`%|aR7^4|slG}#q8u5fmRz&H+prwEXOu**PU z>r771*Lgjk!M_Ih7?~hz{pE?8FHk;H z^9Re5KYKzuR2Sz!>EPDzucEu=?W}+shiabS+8Z}QwNOt*{ZMRmzJWiTyyVzc@Phk8 zl<2RCfgi-~O|iQ&_q{k!t#^vx=t0Z{`v~+C@DLa!Fi0RmV1xkCh4=V0@`fMfUnHKF z&~RAhUd853q=hXog?ZA@EL7(VBIx6-nH(H7X~gU-z1`Aq|AC%haQMK9peXg8je3LO zts3v2T`fF*eog%r5gM&8> z^KTbcUvnH%U*h%8$_-(D%dTJ%i_}eekvPG49>pnzQXk?oF zpkv?~XP!vI?vlntSrZDgh_%!RYv~?O7)8~n1%+^g!stBMF`7Jli9U}a_-Q5X&_6UR1^gqD z{2a0GkuD8|!b5=pUtcf~mIC3zGXW{G^$}vh$3=#`hj{B`sV^vtz7bJA4c`}FhOU7~ zq7_~@9=RMDAGl(tk#w9UdRsC7?lj!w#G9{H8G(Z}@ z#-Yl68NmT>i!)Qvm^C*hPyNFoy>Vi2mQD@ibWPyLx|VA4Ldlf=s(!j7CsaW^>(cNI z%T}gG8|E$WQOKSEUSFDyx6}9bn!OBtubuT`{yxKc4SZkmT)+b%9ZaoI{seRei8v0G z5vO3%18~#|I*BfR4~Nb|#ZU?>(oP7tjzk7@wy1NU^F>{l<6{Q!=P?B66jm*@+G$oS zQB78hdeo|S?w-O3o<6J7&MB0_X;sFDw`nT8I%RFfjJjsDsxR6M2`)|rD20cTrA5ns zkh0FP8W9?NY)=rRxA8K-_1naEa68~7yWob+Nd4pw3{oiBq-;?tIsDk2pmz#i!3xt) zbtAXqj8?CsUIJpS8a>aV+>UXb^z!?rI1r2tmLaP3%Plv_Uv`-nWA)wvt1ccwia z2pF|!$ja>xR_>-&XTJGk=BrJ-=s7j@`?pIP;${jo6ncS^0)5a_mOiqaHz#;j z7{f$=jvyUO2B;8=B2Gc=OmsN5%ong^kE1m$RRSn3<}z3mT$`~yNR#sU-4KWPN?w;6g-8FZV{X*>vw{R@D|RY@W~NV`JLJ z(Z}q49x6vY<`{%SM>`gUg(LWDTM$khJ+mD^7{U))rcVo$vOXw1OXlCl1a1Qr76iNl zU$p7MKCFclL|w#(f)n>!B~H?%RRIr34*Umvfvww}tPXUjGrCFVbXMn=g?*-$3jxW^ z*nK=TRxNnV-X4Tt6DX$ema8v-v|M%_CAC~YO$4rLi9R(E2Sj#sHaHRu%F&VYQ$aa2 zE{A8La&RsbiALm{mW*Yzt9XkU6yqqLN~X0K{)*}5wUrax$LRRdjqBdivriHxpK~NL1wRrwAIz=<-#pWn9UVtp478=GQEty3s znjsGf8k7Yw0E(b&J5!wa+0uG*`1)|^tw)wuieqJ~{pS4j`JKh$c$Ej7Aj}{%T2+m87~Rm?Rq;AMbgh?8eMmn zc#W=ur1O{+P#~=|1{S{npkUIWN?J-~=}A8Ys)^WK-R6lc)NS!IVarP5A&HlW-`w=G z4L|W(@H0ne+yAp!brT+Nws|vWwO-rn=D8hf;fhI{Lnxa6(&@=_w4~nV6rnO9k*D^`+FM-~s z8}!l@0e|8?gAd*PCRzXcJB%Bac2C6 z=Sk={(N=Etl;GakvfaJ=!JfD5@RYrsrT87Ou{b))uJ+Qv-rPT@M9ExLNa|lhKy;Qx z*JIK5Q1q1+eiF|e-S>*HzlW$IKZRZjb_yX1Llj=7FhOC7fWo0s{7YLGKTkc2*wTKQ zQ;GRG4z%Bam+<%Pg;q8k4l6D+KqEv7J$R$z+-nA#L1d8A_h3*WnqLuPu}u7m7K@>A ex>2Wp)DeJb%=(7RUT8mgy&HC&%;HJkjeh}7WMNVO delta 1613 zcmZuxTTB~A6rI`it_On+_`%Z&raXd8z(CU`p-Q7bND+iI3au1WkOSVu5P_|(Z8@gv z;Cw+^)DUeIporE{Kk5infvBofjZ~#kzbaL>iWJN0N7PcHewENlNclr{fSq?Y0LGR~F{KHjK~|3Lxdz zEUR+4(5!S2UAa^h(C#Q@EMS3IVCShE#v3TY$jsFYMNf*GSpm`C{I)elUPjPFSQ(A7 zBcP3FUh&}$@X1t4^Gu_fc}Rl}torSB45KnskNh~qVAKWc7)>0%#&)3)-p_~87H{V- zNaf%qRZys;-~dSDke!!~(%TvewG`?o)Q3WWMZO|VW^m<%wpEn?S1L;h!7}~k~kYh9tUulHeK^q)Tw$2h)EWAc|JC z8DpUvp|R^Xu1^lEXiI+A=Z;QRO*hAntmqro5zeSy6jCK+UxsJGvmYh0teY%QD!)`|`fUBu6QCyugR!7_a zoSttQcgW}dd{l_gH@Rm{un!Lzn>6gh6I>J4{-oiW^jhTwn>Vzk)`);3Pzn(SChLJu zE2Fch=Mj8l4oZZPIe`TmG>Zfc#N2kwL#*A7$((jX4|)vx4B&OUJiEiooRVuPX+PLY zzvmgloL0!DB_Ol#;yCQ9ip22zHf1`$yxI-XhcNxKu+34FGMc09DU&67KBdo&o=chYq8(3i3pP*zXIK8n z|8w*SF-*Q2Yl)ZMZH+a?FD-J5y-OrMa^I9No=TEa<9rGP9kGfyzFQS5iZ>*TwMkN| z(h2jCI2Z4|M`9z3#)R=$k{sKTzdv1n`|@Plbl;>iNlLf0#;PQ#y2-EC!yi9;6A^QY zSRNB=PLf!syH|)~Rihv8U(r~W4TS{P?dt-$^wrxaoTl&^g;ommZS9FA-% z6@dL`UDqkOU4BvQ3wk6Etj{QSie_+^QdbnuX%#u#CbZuRN|Jo9g-W!)LO}d*~ z(`Gj=g+eI`Yxo9>jDhbRQ|XKBL2>gz5JXW~tb5o)Uwja=I>Z;jbJNs`c;Gwdch7gu z@0^cw?w#nhsQqi3O++9+KM>}=3DoUge7FA07{#xmPnOCUOIt0R#s25i6VnMbpB+vX zi}~S5QBkKSmrob?f{| znUKp%se)Q2Khh`ow5I1~^JGqj!PRXPe()tCh+jNO!*zUQ)YU(WTX|ICoGMv&p zs2Xb857u6OVC}hjYW-B>#qX^HwP@4kxH`2y_1;YFOp8T~b!~iQyoGp|@EGxo*mD2l zqFg)#SPyKtHZFe{|JePh=UXBCn4_2oZi$Ey*5WJi)pJdnUpu=(f~+)U?pAyJU&5^0 zGZ1DY&H~9Mhvm5{xdxymVSnS}Qn}Xu3Kvjh|b(MilW7-Io6dY|a*g1+kVx8o8 zZy%QIO@lnuHHs}{gpp#oFKM_A^Fiu7(79MafaA~A$A7J zYbkOv*w17Eenw`4>-bIbYcNNa;n;jx+@GsB<7yLM0&V;5)*k!_!|(a BIrabm delta 1586 zcma)6Urbw77(eIU-g{3ArSuPl){d5eftFBY0U`LJfF`hms0)I1Gdw?qw$?N#DS0Wf&mw&?pxT4|F_MW5C z@Ib>;!QgO1XHb-Sy2m?$;pG!-nGx5hZ&+GzrMhalTFy|q{NQ0_Vcv0J)n56ax}ekT zmFvPn!LDEti_9nNB6Wh%f})JVsNGgaN0b#2{VnGCFbXiDCdw)(#!i51RP!$y?jAHJ ztd<89%_7cGBb=k#O*oFKQ47k;YiUumYAhKLU_J<`mm*r(CG&&s4k^%p)6zCg~kkIPQXrfy3P_Q{M~Fi)gj{sUrPN(3OZ`Dv^o@w}G5CHBW@r{f9Bl~N$;he5^O%+4d`56=Rp_pI$01V^x%)dU#oEHbGC9DCl>Em*&VAMtZ&<# zPv4uf6gW%ryNsag^15k3E1GH6i6obMyuv7aP7}gA7gK~6S@lWYtd`sDSfjqoThy=Z z`WPQ&0*oR+VzZ(ZIREcmSnx03bq2DqeG7_L0RG?GQQQW2;rw}jE0hc?8gdW7p7~XS z6h<~Gh2s^wc2yDkPpK$a(F`z0k=w5RXy1s98sP5LFkIK)o4m1@_ zH<4SxCzs%Ek`WO)#hm82spdcLynsILD1fX8TtX@5Jwr4 zCB8pnE{h+?=ne75G8Sw6;JUHmHnMZ><#~qzbL*sJ=CFF+;f$G%q{)#fK0``Umf9qj z?E9D`CYDSoQ*)X$=kS?>iTjiILS4e1+?O(W)5M#1uSpzBHeGlo@kH{4l&L9AnznIM zU7FNQ^P4U3Z-2BSV#$!QtHhBej`^N7;@QyXrv}zEW$Q)Od3|d6uRR8g2UX&9^L_O4 zqT1@L;$8xERqb_7<6iZK(_e)rD!q;H48c*kUkWu2LF)+0dJ~{KtxZ@j#Lk8s0Zb=K9C5Ip0EFGI<#Z7Si${K{qUJX9a1S0zI?6jVlAB-DD zW^mNd^x5-kBZiq6(^vMUxO=XkK=)`q63Hxi@82ciU7*2&fR8hWoR+W)8!ZK!Wy4E~ z2X{&mD_SC6WqOCi1zUrCG-|8`ENC$nYjGAoFYGc676P)vWj-L#V!@8jJ9|_J)tG!V<=<>`6S3*>skk~3i@%^YbaLuI zOT|o^89l6K(%IL;s;1{sD7|E+jcizbC`gUQ&&%wpZ?a~R~)OXJ6zXhuFkxDp?Ib$0N%b8+lWIC1Oj#@V+fk()@Snx-Hn0Q9hR@7yG4 z-8+!@r7oAd`K{F2O+tG;vXuz&HDwxJ6~|XVvx&fOUUGYu=C6` z2>I||J$IfB3IDMPnj(8Vv`2_TBLvtN^lXaUWOS0U)C3_Lo(LSpD}g6CdQ`j{IMSaY z#SVFMYh*-X4!5Tmt#o;dlNFCrJomG!y9N&O^4^~T8Ak7l&WhVthNXduOWD3$>aKJj zEGOR+TdAwN>?%D|X{6sBHc74ylEuHBhQvx0(fgwqxFZJ2v)_r2?|pR04`B*_6&w;? zCGzMs{CBXIzevij@e%cNID_x0DV*&+`4l}lqQ^v(-4_#yY;sXgBv6!Mjm5M&PFXm= z&#$7ispB7d!*B(&hld}lIepModvXBw*IvRChrjoA^o`2wmvY~z!rzej(JtE!g&z${ F{{RdrLfilV delta 1605 zcmaJ>Z%kWN6uY#pul3miWaFwz0;hS#(i`^OML_l6^3qTiOZ4?7ZCb z?){zLJ@?#u&pkgs_32UR8%Z)Fkj40S!*!P=JO27o(=k$|i0ARgFNZL;EwACHnd(;c zP=B8~Hni`g&o{QO$ET?MCqmu6!177%PI(-RlKMU=ij1ihc0c89mIgEr@VLV|n z%UW|lC@^)bV1@aRU8Ho7E)-#mmq>jy!YYV(aaHT0_A>SCs6R03 z9rg_RyaCl4$QF6kU}4}VD2k9wMJuCplco;(G{rNnXs2L&9-99Ws2ExiOjE&g!Kuk} zld~gf!Ffw6pKYG+Ni?OU{c8xDT9=fJv*Df4o1x3EB#RvzEI>JYjYp39q*x7qt36rU znzFRUdjI5+xnz1|o{dL`)222c5_xHNMl7B&Uog);niielfXF#~!&-24f5TD$@B3{K z)<@+>4zkzlEZrP?{UGVa!VQjeOTu9O8i0Y22rZW`d*HI?kb)zS6%hs+I}8`?(9x6V z`Cs7938V|76NR*F=f-fi9# zl4q8~Dur2=1wpaWoKsA>%;R-N=W{(F@L(IdaE3LG5UcS;O%3LZ6Sb}=A7Q+VE<_le zRjRf}{a_t_f#l+4fnx*C&V5k48t|eWJD|9ION@nmQ@jT7Qajp}JEE`8+$^tp2cfiR zoiNB{xLeE$#&O$jCp4V{{r2K z2Y=&L*IpbpmRyI5@0CbcUaxoKJ?p28zg^$k${Ko#*c(L+JvMT)i1btlH*KUxHvJ1h CyO(MJ diff --git a/GotoSend/__pycache__/xianzhi.cpython-312.pyc b/GotoSend/__pycache__/xianzhi.cpython-312.pyc index dbd3e5d963a85f861abb7f0874e6c3663eb7f9a1..3cc366697e95389cba413540131020d2f49eb935 100644 GIT binary patch delta 1447 zcmZ8hUrbw796sm%Y42^JYw0cAB8*Gi26rj2hXp5zAq=VxXmz75i?B48-V1bgz3lWd z1G^2yNDy5z*qO@IWP4DvgsCxoF~%&u_+a+nh$c489*hxql+DFw&$*=xchd8n)8F~d z@B8(f@AS{^>nD8oYim7#w1*qw1u6WkuZ?Z$GJ3{FjLbww!Zb4-{ibe=y*_)=w2}kH zb? zzT|K6+3s~%A>{>Iz^7}PSswNo7ZNnDHAD)=($A1qwF@_$fZzv+De<*XI5sWGp42|t@K4h8R$zy6Q^R)r~6Wx zWlWlA_L)tU;+&u(q0W6+m6}&h#YduN5@blcrtB|OX|L94rLBw+Q8MZ5TM?yFZ$#Nw zVno?jRYa*45m73-YE?@)+c*41bVO<> zpL$uS3YJ|J!LnN)CkJj#p#wAxbwQ3o^>h^l`JL3rNX?r_M=|nEqb!p^0hD})3$Hx% z)?Mpe?p=G~SMT$Mfl_VY+UWA=2j>ef@3;W(U5YQncYr8~Pk_jKcI3SfD+z?)^{+@P zm)EY`8TwBCvHO8I_{7cf!*Is~cyVcHVd&jhi4&Fv7X}w`%;#EA zo`uA>%p}MYOAdhZD*)s<8|uWGIvXbBPl3+a96lIqfE?})wuJu|*ZEzJmvFMdaF{2i z=I6-1yvy3twOtojya9u_7;J?!PV;=uo)Dv_mZ`e=fqAhBS5W-qa%bgL$74(qowWj+kgM?$tXI6Z%OaOWD?w5 zd~f^K7n@%%Z!X^1dcUys**Dvt-`l+Uy~;iH1$vbb(GUTZE3+9RTXq@Q6#2tI$LRvS zQPqtnLx=H=&@qlykADswIxJ7(VBo`*EU8G+)+KSL1BaBvaebv9}U^ zk=W+jWJbg{H}9JUG49=@)ingaqSspn@xbN>mRlGP>D9I8>o^v!(nPou=zqHPkks{( zhSza`M|Ev1`2&6r(UF^GTwi6qy5QlK)2- z;a|d7IY&z4_x8m`xcvbWs0AHIQ5@$m8buhcYh9PfD2n6f`2;HS9&uQ0hRxL%8MH8H z1t{UTM^ruR(aXTcpq)Xg1F$5-)ybIR5lW(}L}#aBB|1JirGx|1ih7#O*D9ALqp`_w z$RCV^V@fzystzmhy@#j(8aHcdEmNCRB^Xg<|Foc?V&WZ$mCNwS1XaNvwX9JJ7gGfHL?U5j7sp(R#SsUAYEd z-sVf6`%6SsmW7FBk_i<|9iS838%K)tz^7GLs}_3;vGZLO0xU1K1@b<0LpE$w4O}IBE?Ipo^<; z=mI!~(*&8gV8JSqc^C_ovA8D8nL&d=BLPo=Kfy$%HS%<#syzD7Ak~_nuR2^VQR6hx z@R<~Qny4myNc23m>syXPnAiQz=20=pg*ipBLlHd68>tJkmJT zs1@FfC%EQv}u2sN*s0-51057i@eMeA=8to4tPQ}F1vgFnby)UxB%y0Ys=HN ztKyCiqCGl>sG~@oztF}!ZCoBJQ13QxUKlU%&dr*7ijO^4iB|SHLkxNuG%*-pz}~4xin19QY=3jhEB diff --git a/GotoSend/anquanke.py b/GotoSend/anquanke.py index ddd6d15..f3d3963 100644 --- a/GotoSend/anquanke.py +++ b/GotoSend/anquanke.py @@ -93,25 +93,37 @@ def clear_table(): conn.commit() conn.close() -def record_md(result, filename="./resources/history/sec_news.md"): - # 读取现有内容 - if os.path.exists(filename): - with open(filename, 'r', encoding='utf-8') as file: - existing_content = file.read() - else: - existing_content = "" + +def record(title, link, author, upload_time, description=None, source=None, category=None): + db_path = './resources/db/web.db' + conn = sqlite3.connect(db_path) + cursor = conn.cursor() - # 将新内容插入到现有内容的开头 - new_content = result + existing_content + # 创建表(如果不存在) + cursor.execute('''CREATE TABLE IF NOT EXISTS sec_news ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + article_title TEXT, + link TEXT, + author TEXT, + description TEXT, + source TEXT, + upload_time DATETIME, + category TEXT + )''') - # 写回文件 - with open(filename, 'w', encoding='utf-8') as file: - file.write(new_content) + # 插入数据 + cursor.execute(''' + INSERT INTO sec_news (article_title, link, author, description, source, upload_time, category) + VALUES (?, ?, ?, ?, ?, ?, ?) + ''', (title, link, author, description, source, upload_time, category)) + + conn.commit() + conn.close() def get_filtered_articles(entries): result_long = "" result_short = "" - record = "" + # record = "" short_results = [] for entry in entries: @@ -133,17 +145,18 @@ def get_filtered_articles(entries): else: result_short = temp_result - record += f"#### 文章:[{entry[1]}]({entry[2]})\n" - record += f"**作者**:{entry[6]}\n" - record += f"**来源**:{entry[3]}\n" - record += f"**上传时间**:{entry[5]}\n" - record += "\n" + "-" * 40 + "\n" # 添加分隔线以便区分不同文章 + record( + title=entry[1], + link=entry[2], + author=entry[6], + source="安全客", + upload_time=entry[5] + ) # 处理最后一个结果 if result_short: short_results.append(result_short) - record_md(record) return result_long, short_results diff --git a/GotoSend/baidu.py b/GotoSend/baidu.py index 1f275af..aac30e3 100644 --- a/GotoSend/baidu.py +++ b/GotoSend/baidu.py @@ -127,25 +127,34 @@ def select_articles(): return results -def record_md(result, filename="./resources/history/baidu_news.md"): - # 读取现有内容 - if os.path.exists(filename): - with open(filename, 'r', encoding='utf-8') as file: - existing_content = file.read() - else: - existing_content = "" +def record(title, link, description, upload_time, source=None, keyword=None): + db_path = './resources/db/web.db' + conn = sqlite3.connect(db_path) + cursor = conn.cursor() - # 将新内容插入到现有内容的开头 - new_content = result + existing_content + # 创建表(如果不存在) + cursor.execute('''CREATE TABLE IF NOT EXISTS baidu ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + article_title TEXT, + link TEXT, + description TEXT, + source TEXT, + upload_time DATETIME, + keyword TEXT + )''') - # 写回文件 - with open(filename, 'w', encoding='utf-8') as file: - file.write(new_content) + # 插入数据 + cursor.execute(''' + INSERT INTO baidu (article_title, link, description, source, upload_time, keyword) + VALUES (?, ?, ?, ?, ?, ?) + ''', (title, link, description, source, upload_time, keyword)) + + conn.commit() + conn.close() def get_filtered_articles(entries): result_long = "" result_short = "" - record = "" short_results = [] for entry in entries: @@ -170,18 +179,12 @@ def get_filtered_articles(entries): else: result_short = temp_result - record += f"#### 文章:[{entry[1]}]({entry[2]})\n描述:{entry[3]}\n" - record += f"**上传时间**:{entry[4]}\n" - record += f"**来源**:{entry[5]}\n" - record += f"**关键词**:{entry[6]}\n" - record += "\n" + "-" * 40 + "\n" # 添加分隔线以便区分不同文章 + record(entry[1], entry[2], entry[3], entry[4], entry[5], entry[6]) # 处理最后一个结果 if result_short: short_results.append(result_short) - record_md(record) - return result_long, short_results def Src_baidu(): diff --git a/GotoSend/doonsec.py b/GotoSend/doonsec.py index 9c6b19b..74bb4e0 100644 --- a/GotoSend/doonsec.py +++ b/GotoSend/doonsec.py @@ -137,25 +137,35 @@ def clear_table(): conn.commit() conn.close() -def record_md(result, filename="./resources/history/tech_passage.md"): - # 读取现有内容 - if os.path.exists(filename): - with open(filename, 'r', encoding='utf-8') as file: - existing_content = file.read() - else: - existing_content = "" +def record(title=None, link=None, author=None, upload_time=None, description=None, category=None, source=None): + db_path = './resources/db/web.db' + conn = sqlite3.connect(db_path) + cursor = conn.cursor() - # 将新内容插入到现有内容的开头 - new_content = result + existing_content + # 创建表(如果不存在) + cursor.execute('''CREATE TABLE IF NOT EXISTS tech_passage ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + article_title TEXT, + link TEXT, + author TEXT, + description TEXT, + upload_time DATETIME, + category TEXT, + source TEXT + )''') - # 写回文件 - with open(filename, 'w', encoding='utf-8') as file: - file.write(new_content) + # 插入数据 + cursor.execute(''' + INSERT INTO tech_passage (article_title, link, author, description, upload_time, category, source) + VALUES (?, ?, ?, ?, ?, ?, ?) + ''', (title, link, author, description, upload_time, category, source)) + + conn.commit() + conn.close() def get_filtered_articles(entries): result_long = "" result_short = "" - record = "" short_results = [] for entry in entries: @@ -179,18 +189,19 @@ def get_filtered_articles(entries): else: result_short = temp_result - record += f"#### 文章:[{entry[1]}]({entry[2]})\n" - record += f"**作者**:{entry[5]}\n" - record += f"**上传时间**:{entry[4]}\n" - record += f"**简介**:{entry[3]}\n" - record += "\n" + "-" * 40 + "\n" # 添加分隔线以便区分不同文章 + record( + title=entry[1], + link=entry[2], + author=entry[5], + upload_time=entry[4], + description=entry[3], + source="洞见微信安全" + ) # 处理最后一个结果 if result_short: short_results.append(result_short) - record_md(record) - return result_long, short_results diff --git a/GotoSend/freebuf.py b/GotoSend/freebuf.py index 61c8153..85b8f62 100644 --- a/GotoSend/freebuf.py +++ b/GotoSend/freebuf.py @@ -97,25 +97,35 @@ def clear_table(): conn.commit() conn.close() -def record_md(result, filename="./resources/history/sec_news.md"): - # 读取现有内容 - if os.path.exists(filename): - with open(filename, 'r', encoding='utf-8') as file: - existing_content = file.read() - else: - existing_content = "" +def record(title, link, author, upload_time, description=None, source=None, category=None): + db_path = './resources/db/web.db' + conn = sqlite3.connect(db_path) + cursor = conn.cursor() - # 将新内容插入到现有内容的开头 - new_content = result + existing_content + # 创建表(如果不存在) + cursor.execute('''CREATE TABLE IF NOT EXISTS sec_news ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + article_title TEXT, + link TEXT, + author TEXT, + description TEXT, + source TEXT, + upload_time DATETIME, + category TEXT + )''') - # 写回文件 - with open(filename, 'w', encoding='utf-8') as file: - file.write(new_content) + # 插入数据 + cursor.execute(''' + INSERT INTO sec_news (article_title, link, author, description, source, upload_time, category) + VALUES (?, ?, ?, ?, ?, ?, ?) + ''', (title, link, author, description, source, upload_time, category)) + + conn.commit() + conn.close() def get_filtered_articles(entries): result_long = "" result_short = "" - record = "" short_results = [] for entry in entries: @@ -137,17 +147,20 @@ def get_filtered_articles(entries): else: result_short = temp_result - record += f"#### 文章:[{entry[1]}]({entry[2]})\n" - record += f"**类型**:{entry[5]}\n" - record += f"**上传时间**:{entry[4]}\n" - record += "\n" + "-" * 40 + "\n" # 添加分隔线以便区分不同文章 + record( + title=entry[1], + link=entry[2], + author=None, + upload_time=entry[4], + description=entry[3], + source="Freebuf", + category=entry[5] + ) # 处理最后一个结果 if result_short: short_results.append(result_short) - record_md(record) - return result_long, short_results def Src_freebuf(e_hour): diff --git a/GotoSend/github.py b/GotoSend/github.py index e9bb713..f2b2a32 100644 --- a/GotoSend/github.py +++ b/GotoSend/github.py @@ -298,25 +298,36 @@ def clear_table(): conn.commit() conn.close() -def record_md(result, filename="./resources/history/github.md"): - # 读取现有内容 - if os.path.exists(filename): - with open(filename, 'r', encoding='utf-8') as file: - existing_content = file.read() - else: - existing_content = "" +def record(title, link, description, upload_time, author, keyword, language, source): + db_path = './resources/db/web.db' + conn = sqlite3.connect(db_path) + cursor = conn.cursor() - # 将新内容插入到现有内容的开头 - new_content = result + existing_content + # 创建表(如果不存在)— 添加 language 字段 + cursor.execute('''CREATE TABLE IF NOT EXISTS github ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + article_title TEXT, + link TEXT, + description TEXT, + author TEXT, + upload_time DATETIME, + keyword TEXT, + language TEXT, + source TEXT + )''') - # 写回文件 - with open(filename, 'w', encoding='utf-8') as file: - file.write(new_content) + # 插入数据 — 添加 author 和 language 字段 + cursor.execute(''' + INSERT INTO github (article_title, link, description, author, upload_time, keyword, language, source) + VALUES (?, ?, ?, ?, ?, ?, ?, ?) + ''', (title, link, description, author, upload_time, keyword, language, source)) + + conn.commit() + conn.close() def get_filtered_articles(entries, choice): result_long = "" result_short = "" - record = "" short_results = [] for entry in entries: @@ -335,6 +346,18 @@ def get_filtered_articles(entries, choice): f"开发语言:{entry[7]}\t\t作者:{entry[5]}\n" "\n" + "-" * 3 + "\n" # 添加分隔线以便区分不同文章 ) + + # 存入数据库 + record( + title=entry[1], + link=entry[2], + description=entry[3], + upload_time=entry[4], + author=entry[5], + keyword=entry[6], + language=entry[7], + source="New project" + ) elif choice == 2: # 构建长文本结果 result_long += f"项目:[{entry[1]}]({entry[2]})存在更新!!!\n" @@ -350,6 +373,18 @@ def get_filtered_articles(entries, choice): f"提交者:{entry[5]},[点此查看提交详情]({entry[7]})\n" "\n" + "-" * 3 + "\n" # 添加分隔线以便区分不同文章 ) + + # 存入数据库 + record( + title=entry[1], + link=entry[2], + description=entry[3], + upload_time=entry[4], + author=entry[5], + keyword=entry[7], + language=None, + source="Project update" + ) elif choice == 3: # 构建长文本结果 result_long += f"大佬 {entry[5]} 上传了一个新工具:[{entry[1]}]({entry[2]})\n" @@ -363,6 +398,18 @@ def get_filtered_articles(entries, choice): f"上传时间:{entry[4]}\n" "\n" + "-" * 3 + "\n" # 添加分隔线以便区分不同文章 ) + + # 存入数据库 + record( + title=entry[1], + link=entry[2], + description=entry[3], + upload_time=entry[4], + author=entry[5], + keyword=None, + language=None, + source="New tool" + ) elif choice == 4: # 构建长文本结果 result_long += f"【{entry[3]}】为[{entry[4]}]({entry[1]})发布了新版本,请及时查收!\n" @@ -376,6 +423,18 @@ def get_filtered_articles(entries, choice): "\n" + "-" * 3 + "\n" # 添加分隔线以便区分不同文章 ) + # 存入数据库 + record( + title=entry[4], + link=entry[1], + description=None, + upload_time=entry[2], + author=entry[3], + keyword=None, + language=None, + source="New version" + ) + temp_result = result_short + current_entry if len(temp_result.encode('utf-8')) > 4096: short_results.append(result_short) @@ -383,34 +442,10 @@ def get_filtered_articles(entries, choice): else: result_short = temp_result - if choice == 1: - record += f"#### 关键词【{entry[6]}】发现新项目:[{entry[1]}]({entry[2]})\n" - record += f"**项目描述**:{entry[3]}\n" - record += f"**上传时间**:{entry[4]}\n" - record += f"**开发语言**:{entry[7]}\n**作者**:{entry[5]}\n" - record += "\n" + "-" * 10 + "\n" # 添加分隔线以便区分不同文章 - elif choice == 2: - record += f"#### 项目:[{entry[1]}]({entry[2]})存在更新!!!\n" - record += f"**更新描述**:{entry[3]}\n" - record += f"**更新时间**:{entry[4]}\n" - record += f"**提交者**:{entry[5]},[点此查看提交详情]({entry[7]})\n" - record += "\n" + "-" * 10 + "\n" # 添加分隔线以便区分不同文章 - elif choice == 3: - record += f"#### 大佬 {entry[5]} 上传了一个新工具:[{entry[1]}]({entry[2]})\n" - record += f"**项目描述**:{entry[3]}\n" - record += f"**上传时间**:{entry[4]}\n" - record += "\n" + "-" * 10 + "\n" # 添加分隔线以便区分不同文章 - elif choice == 4: - record += f"#### 【{entry[3]}】为[{entry[4]}]({entry[1]})发布了新版本,请及时查收!\n" - record += f"**发布时间**:{entry[2]}\n" - record += "\n" + "-" * 10 + "\n" # 添加分隔线以便区分不同文章 - # 处理最后一个结果 if result_short: short_results.append(result_short) - record_md(record) - return result_long, short_results def Src_github(e_hour): diff --git a/GotoSend/qianxin.py b/GotoSend/qianxin.py index ccb254f..67a3d94 100644 --- a/GotoSend/qianxin.py +++ b/GotoSend/qianxin.py @@ -88,25 +88,35 @@ def clear_table(): conn.commit() conn.close() -def record_md(result, filename="./resources/history/tech_passage.md"): - # 读取现有内容 - if os.path.exists(filename): - with open(filename, 'r', encoding='utf-8') as file: - existing_content = file.read() - else: - existing_content = "" +def record(title=None, link=None, author=None, upload_time=None, description=None, category=None, source=None): + db_path = './resources/db/web.db' + conn = sqlite3.connect(db_path) + cursor = conn.cursor() - # 将新内容插入到现有内容的开头 - new_content = result + existing_content + # 创建表(如果不存在) + cursor.execute('''CREATE TABLE IF NOT EXISTS tech_passage ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + article_title TEXT, + link TEXT, + author TEXT, + description TEXT, + upload_time DATETIME, + category TEXT, + source TEXT + )''') - # 写回文件 - with open(filename, 'w', encoding='utf-8') as file: - file.write(new_content) + # 插入数据 + cursor.execute(''' + INSERT INTO tech_passage (article_title, link, author, description, upload_time, category, source) + VALUES (?, ?, ?, ?, ?, ?, ?) + ''', (title, link, author, description, upload_time, category, source)) + + conn.commit() + conn.close() def get_filtered_articles(entries): result_long = "" result_short = "" - record = "" short_results = [] for entry in entries: @@ -128,19 +138,19 @@ def get_filtered_articles(entries): result_short = current_entry else: result_short = temp_result - - record += f"#### 文章:[{entry[1]}]({entry[2]})\n" - record += f"**来源**:{entry[3]}\n" - record += f"**上传时间**:{entry[5]}\n" - record += f"**描述**:{entry[4]}\n" - record += "\n" + "-" * 40 + "\n" # 添加分隔线以便区分不同文章 + + record( + title=entry[1], + link=entry[2], + upload_time=entry[5], + description=entry[4], + source="奇安信攻防社区" + ) # 处理最后一个结果 if result_short: short_results.append(result_short) - record_md(record) - return result_long, short_results def Src_qianxin(e_hour): diff --git a/GotoSend/seebug.py b/GotoSend/seebug.py index 5400cc7..6fbc775 100644 --- a/GotoSend/seebug.py +++ b/GotoSend/seebug.py @@ -95,25 +95,35 @@ def clear_table(): conn.commit() conn.close() -def record_md(result, filename="./resources/history/sec_news.md"): - # 读取现有内容 - if os.path.exists(filename): - with open(filename, 'r', encoding='utf-8') as file: - existing_content = file.read() - else: - existing_content = "" +def record(title, link, author, upload_time, description=None, source=None, category=None): + db_path = './resources/db/web.db' + conn = sqlite3.connect(db_path) + cursor = conn.cursor() - # 将新内容插入到现有内容的开头 - new_content = result + existing_content + # 创建表(如果不存在) + cursor.execute('''CREATE TABLE IF NOT EXISTS sec_news ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + article_title TEXT, + link TEXT, + author TEXT, + description TEXT, + source TEXT, + upload_time DATETIME, + category TEXT + )''') - # 写回文件 - with open(filename, 'w', encoding='utf-8') as file: - file.write(new_content) + # 插入数据 + cursor.execute(''' + INSERT INTO sec_news (article_title, link, author, description, source, upload_time, category) + VALUES (?, ?, ?, ?, ?, ?, ?) + ''', (title, link, author, description, source, upload_time, category)) + + conn.commit() + conn.close() def get_filtered_articles(entries): result_long = "" result_short = "" - record = "" short_results = [] for entry in entries: @@ -136,18 +146,20 @@ def get_filtered_articles(entries): else: result_short = temp_result - record += f"#### 文章:[{entry[1]}]({entry[2]})\n" - record += f"**类型**:{entry[3]}\n" - record += f"**上传时间**:{entry[5]}\n" - record += f"{entry[4]}\n" - record += "\n" + "-" * 40 + "\n" # 添加分隔线以便区分不同文章 + record( + title=entry[1], + link=entry[2], + author=None, + upload_time=entry[5], + description=entry[4], + source="Seebug", + category=entry[3] + ) # 处理最后一个结果 if result_short: short_results.append(result_short) - record_md(record) - return result_long, short_results def Src_seebug(e_hour): diff --git a/GotoSend/sougou_wx.py b/GotoSend/sougou_wx.py index 5680c90..c0c58ef 100644 --- a/GotoSend/sougou_wx.py +++ b/GotoSend/sougou_wx.py @@ -96,14 +96,6 @@ def select_articles(): ORDER BY pubDate DESC LIMIT 3 ''', (two_months_ago.strftime('%Y-%m-%d %H:%M:%S'), now.strftime('%Y-%m-%d %H:%M:%S'))) - - # 查询最近的3条未被标记为True的消息 - # cursor.execute(''' - # SELECT * FROM articles - # WHERE is_sended IS NULL - # ORDER BY pubDate DESC - # LIMIT 3 - # ''') results = cursor.fetchall() # print(results) @@ -128,25 +120,34 @@ def select_articles(): return results -def record_md(result, filename="./resources/history/wx_news.md"): - # 读取现有内容 - if os.path.exists(filename): - with open(filename, 'r', encoding='utf-8') as file: - existing_content = file.read() - else: - existing_content = "" +def record(title, link, description, upload_time, author, keyword): + db_path = './resources/db/web.db' + conn = sqlite3.connect(db_path) + cursor = conn.cursor() - # 将新内容插入到现有内容的开头 - new_content = result + existing_content + # 创建表(如果不存在) + cursor.execute('''CREATE TABLE IF NOT EXISTS wx_news ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + article_title TEXT, + link TEXT, + description TEXT, + upload_time DATETIME, + author TEXT, + keyword TEXT + )''') - # 写回文件 - with open(filename, 'w', encoding='utf-8') as file: - file.write(new_content) + # 插入数据 + cursor.execute(''' + INSERT INTO wx_news (article_title, link, description, upload_time, author, keyword) + VALUES (?, ?, ?, ?, ?, ?) + ''', (title, link, description, upload_time, author, keyword)) + + conn.commit() + conn.close() def get_filtered_articles(entries): result_long = "" result_short = "" - record = "" short_results = [] for entry in entries: @@ -171,18 +172,19 @@ def get_filtered_articles(entries): else: result_short = temp_result - record += f"#### 文章:[{entry[1]}]({entry[2]})\n描述:{entry[3]}\n" - record += f"**上传时间**:{entry[4]}\n" - record += f"**作者**:{entry[5]}\n" - record += f"**关键词**:{entry[6]}\n" - record += "\n" + "-" * 40 + "\n" # 添加分隔线以便区分不同文章 + record( + title=entry[1], + link=entry[2], + description=entry[3], + upload_time=entry[4], + author=entry[5], + keyword=entry[6] + ) # 处理最后一个结果 if result_short: short_results.append(result_short) - record_md(record) - return result_long, short_results def Src_sougou_wx(): diff --git a/GotoSend/uni_rss.py b/GotoSend/uni_rss.py index c4fe289..9d1d827 100644 --- a/GotoSend/uni_rss.py +++ b/GotoSend/uni_rss.py @@ -129,25 +129,34 @@ def clear_table(): conn.commit() conn.close() -def record_md(result, filename="./resources/history/uni_passage.md"): - # 读取现有内容 - if os.path.exists(filename): - with open(filename, 'r', encoding='utf-8') as file: - existing_content = file.read() - else: - existing_content = "" +def record(title, link, description, upload_time, author, source): + db_path = './resources/db/web.db' + conn = sqlite3.connect(db_path) + cursor = conn.cursor() - # 将新内容插入到现有内容的开头 - new_content = result + existing_content + # 创建表(如果不存在) + cursor.execute('''CREATE TABLE IF NOT EXISTS uni_rss ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + article_title TEXT, + link TEXT, + description TEXT, + upload_time DATETIME, + author TEXT, + source TEXT + )''') - # 写回文件 - with open(filename, 'w', encoding='utf-8') as file: - file.write(new_content) + # 插入数据 + cursor.execute(''' + INSERT INTO uni_rss (article_title, link, description, upload_time, author, source) + VALUES (?, ?, ?, ?, ?, ?) + ''', (title, link, description, upload_time, author, source)) + + conn.commit() + conn.close() def get_filtered_articles(entries): result_long = "" result_short = "" - record = "" short_results = [] for entry in entries: @@ -172,19 +181,19 @@ def get_filtered_articles(entries): else: result_short = temp_result - record += f"#### 文章:[{entry[1]}]({entry[2]})\n" - record += f"**作者**:{entry[3]}\n" - record += f"**描述**:{entry[4]}\n" - record += f"**上传时间**:{entry[5]}\n" - record += f"**来源**:{entry[6]}\n" - record += "\n" + "-" * 40 + "\n" # 添加分隔线以便区分不同文章 + record( + title=entry[1], + link=entry[2], + description=entry[4], + upload_time=entry[5], + author=entry[3], + source=entry[6] + ) # 处理最后一个结果 if result_short: short_results.append(result_short) - record_md(record) - return result_long, short_results diff --git a/GotoSend/xianzhi.py b/GotoSend/xianzhi.py index 7cb6d1e..87fabdd 100644 --- a/GotoSend/xianzhi.py +++ b/GotoSend/xianzhi.py @@ -94,25 +94,35 @@ def clear_table(): conn.commit() conn.close() -def record_md(result, filename="./resources/history/tech_passage.md"): - # 读取现有内容 - if os.path.exists(filename): - with open(filename, 'r', encoding='utf-8') as file: - existing_content = file.read() - else: - existing_content = "" +def record(title=None, link=None, author=None, upload_time=None, description=None, category=None, source=None): + db_path = './resources/db/web.db' + conn = sqlite3.connect(db_path) + cursor = conn.cursor() - # 将新内容插入到现有内容的开头 - new_content = result + existing_content + # 创建表(如果不存在) + cursor.execute('''CREATE TABLE IF NOT EXISTS tech_passage ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + article_title TEXT, + link TEXT, + author TEXT, + description TEXT, + upload_time DATETIME, + category TEXT, + source TEXT + )''') - # 写回文件 - with open(filename, 'w', encoding='utf-8') as file: - file.write(new_content) + # 插入数据 + cursor.execute(''' + INSERT INTO tech_passage (article_title, link, author, description, upload_time, category, source) + VALUES (?, ?, ?, ?, ?, ?, ?) + ''', (title, link, author, description, upload_time, category, source)) + + conn.commit() + conn.close() def get_filtered_articles(entries): result_long = "" result_short = "" - record = "" short_results = [] for entry in entries: @@ -134,16 +144,17 @@ def get_filtered_articles(entries): else: result_short = temp_result - record += f"#### 文章:[{entry[1]}]({entry[2]})\n" - record += f"**上传时间**:{entry[3]}\n" - record += "\n" + "-" * 40 + "\n" # 添加分隔线以便区分不同文章 + record( + title=entry[1], + link=entry[2], + upload_time=entry[3], + source="先知安全技术社区" + ) # 处理最后一个结果 if result_short: short_results.append(result_short) - record_md(record) - return result_long, short_results def Src_xianzhi(e_hour): diff --git a/README.md b/README.md index 63cc70f..1231cda 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,19 @@ -## 持续更新中
+
+ +# 🛡️ SecPulse - 赛博脉动 + +> 面向网络安全领域的智能资讯聚合与推送系统 + + + +[![Python](https://img.shields.io/badge/Python-3.6+-blue.svg)](https://www.python.org/) +[![License](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE) + +**实时感知安全领域的脉搏跳动** 🔔 + +
+ +## 🚀 快速开始
RSS订阅链接来源:https://github.com/zhengjim/Chinese-Security-RSS
使用python-json进行格式化,然后使用飞书webhook机器人进行发送
./config/config.yaml 可指定发送渠道、运行方式等基础配置信息
@@ -6,15 +21,26 @@ RSS订阅链接来源:https://github.com/zhengjim/Chinese-Security-RSS
./config/github_config.yaml 可指定Github相关参数(支持热修改)
更新记录请查看./UpdateLOG.md +### 📱 推送渠道
+ +目前支持以下推送渠道:
+- 飞书(Feishu)
+- 企业微信(WeChat Work)
+#### 后续更新渠道:
+- 钉钉(DingTalk)
+- 蓝信(Lanxin)
+#### 停更渠道:
+邮件(Email,中断开发)
+ ### 项目特色
- 模块化:爬虫(获取信息部分)、分析(对获取的json信息进行筛选分析存储)、推送(推送至各渠道)、网页等各模块均可单独运行。
- 轻量化:默认使用sqlite以及其他常见的各系统自带的库,用户仅需配置python环境,不会占用过多内存。
- 简单化:配置好config后即可一步运行,效率极高。
-### 日志相关 +### 日志相关
请查看./resources/log文件夹下内容
-### 使用建议:
+### 🖥️ Linux后台运行建议:
Linux系统建议下载screen于后台持续运行本脚本。
debian/ubuntu/kali: `apt install screen`
centos: `yum install screen`
@@ -23,6 +49,8 @@ centos: `yum install screen`
重新进入会话:`screen -r 会话名称`
结束对话:进入会话后输入`exit`
+当然,您也可以直接使用install脚本一键注册systemd服务(注意,请将Core.py主函数中的send_first_message()注释掉,防止反复触发首次运行效果)
+ ### 使用方法:
先下载支持库:`pip install -r requirements.txt`
随后便可直接运行:`python Core.py`
@@ -30,7 +58,7 @@ web运行:`python ./web/app.py`
随后web网页将会在本地9801端口启动,访问即可,使用反向代理即可以域名映射到外网
直接访问web域名即可查看历史推送,访问路径/log即可查看程序运行日志,/weblog查看flask日志
-或者直接运行install.sh即可,目前脚本存在一定问题,正在尽力修复。 +或者直接运行install.sh即可,目前脚本存在一定问题,正在尽力修复。
### 配置
首先先在飞书中创建群组,然后再创建WebHook机器人
@@ -51,8 +79,19 @@ web运行:`python ./web/app.py`
`./config/github_config.yaml`中可配置github_token
-### 运行结果
+### 📊 运行效果展示
后端

飞书运行提示

飞书运行展示

飞书运行展示-安卓

+ +### 📝 更新日志
+详细的更新记录请查看 [UpdateLOG.md](./UpdateLOG.md) + +### 🤝 贡献指南
+欢迎提交Issue和Pull Request来改进本项目!
+您也可以通过QQ(2857911564)或者发送邮件(admin@masonliu.com)给我反馈问题。
+ +### 🙏 致谢
+RSS订阅链接来源:[Chinese-Security-RSS](https://github.com/zhengjim/Chinese-Security-RSS)
+感谢所有为开源社区做出贡献的开发者
\ No newline at end of file diff --git a/UpdateLOG.md b/UpdateLOG.md index 53f6936..c3f9985 100644 --- a/UpdateLOG.md +++ b/UpdateLOG.md @@ -51,4 +51,5 @@ - 2025年01月24日早:修复了json文件为空时程序中断的问题并优化了报错逻辑 - 2025年03月10日早:为程序添加了通用rss接口,可支持更多rss源 - 2025年03月14日晚:为程序添加了通用rss发送程序,同时修复了一个神奇的bug,现可支持更多rss源 -- 2026年05月04日晚:更新了当前的WEB UI样式并重新启动程序开发计划 \ No newline at end of file +- 2026年05月04日晚:更新了当前的WEB UI样式并重新启动程序开发计划 +- 2026年05月11日晚:稍微更新了一下sh脚本,项目更名为SecPulse(赛博脉动) \ No newline at end of file diff --git a/install.sh b/install.sh index d2bddee..b8f08d2 100644 --- a/install.sh +++ b/install.sh @@ -36,15 +36,27 @@ detect_python() { detect_python +# ========= 检查 pip 是否可用 ========= +if ! $PYTHON_CMD -m pip --version >/dev/null 2>&1; then + echo "❌ pip 未安装或不可用,请先安装 pip" + exit 1 +fi + # ========= 安装依赖 ========= if [ -f "$BASE_DIR/requirements.txt" ]; then echo "安装 Python 依赖..." - # $PYTHON_CMD -m pip install --upgrade pip + # 升级 pip 到最新版本 + $PYTHON_CMD -m pip install --upgrade pip $PYTHON_CMD -m pip install -r "$BASE_DIR/requirements.txt" else echo "⚠️ 未找到 requirements.txt,跳过依赖安装" fi +# ========= 创建必要的目录结构 ========= +mkdir -p "$BASE_DIR/resources/log" +mkdir -p "$BASE_DIR/resources/history" +mkdir -p "$BASE_DIR/resources/db" + # ========= 创建 PyBot 服务 ========= sudo bash -c "cat > /etc/systemd/system/PyBot.service" <Akira 勒索软件团伙被发现利用不安全的网络摄像头,对受害者网络发起加密攻击,且成功绕过了用于阻止 Windows 中加密器的端点检测和响应(EDR)系统。这一不寻常的攻击方式,是网络安全公司 S-RM 团队在近期对一位客户的事件响应过程中发现的。

值得关注的是,Akira 勒索软件团伙最初尝试在 Windows 系统上部署加密器,不过被受害者的 EDR 解决方案阻止。在此之后,他们才转而利用网络摄像头实施攻击。

Akira 的非常规攻击链

Akira 的攻击链条十分复杂。威胁行为者起初通过目标公司暴露的远程访问解决方案,可能是利用被盗凭证或者暴力破解密码,得以访问公司网络。获取访问权限后,他们部署了合法的远程访问工具 AnyDesk,并窃取公司数据,为后续的双重勒索攻击做准备。接着,Akira 利用远程桌面协议(RDP)进行横向移动,将自身影响范围扩展到尽可能多的系统,随后尝试部署勒索软件负载。最终,威胁行为者投放了一个受密码保护的 ZIP 文件(win.zip),里面包含勒索软件负载(win.exe),但受害者的 EDR 工具检测到并隔离了该文件,使得这次攻击暂时受阻。

在这次失败后,Akira 开始探索其他攻击途径。他们扫描网络,寻找可用于加密文件的其他设备,发现了网络摄像头和指纹扫描仪。S-RM 解释称,攻击者选择网络摄像头,是因为其容易受到远程 shell 访问,且可被未经授权地观看视频。此外,网络摄像头运行的是与 Akira 的 Linux 加密器兼容的 Linux 操作系统,并且没有安装 EDR 代理,因此成为远程加密网络共享文件的理想设备。

\"WX20250311-104229@2x.png\"/

Akira 攻击步骤概览(来源:S-RM)

S-RM 向 BleepingComputer 证实,威胁者利用网络摄像头的 Linux 操作系统,挂载了公司其他设备的 Windows SMB 网络共享。随后,他们在网络摄像头上启动 Linux 加密器,以此加密 SMB 上的网络共享,成功绕过了网络上的 EDR 软件。S-RM 指出:“由于该设备未被监控,受害组织的安全团队并未察觉到从网络摄像头到受影响服务器的恶意服务器消息块(SMB)流量增加,否则他们可能会收到警报。” 就这样,Akira 得以成功加密受害者网络上的文件。

S-RM 告知 BleepingComputer,针对网络摄像头漏洞已有相应补丁,这意味着此次攻击,至少是这种攻击方式,本可以避免。这一案例表明,EDR 保护并非全面的安全解决方案,组织不能仅依赖它来防御攻击。此外,物联网设备不像计算机那样受到密切监控和维护,却存在重大风险。所以,这类设备应与生产服务器和工作站等更敏感的网络隔离。同样重要的是,所有设备,包括物联网设备,都应定期更新固件,修补可能被攻击的已知漏洞。

此外,物联网设备不像计算机那样受到密切的监控和维护,但仍然存在重大风险。

因此,这些类型的设备应该与更敏感的网络(如生产服务器和工作站)隔离。 

同样重要的是,所有设备,甚至是物联网设备,都应该定期更新其固件,以修补可能被攻击的已知漏洞。

", - "pubDate": "Fri, 14 Mar 2025 10:18:01 +0800", - "author": "山卡拉" + "title": "四步轻松搞定防钓鱼 !CACTER 反钓鱼演练系统迭代上线", + "link": "https://www.4hou.com/posts/DrN6", + "description": "

每天上班打开企业邮箱,总能看到各类陌生邮件:发票报销、福利补贴、奖金申领、系统通知…… 看着像内部正规消息,实则很多都是伪装到位的钓鱼陷阱。员工稍有不慎点击链接、下载附件,就可能造成信息泄露、财务损失,给企业埋下巨大安全隐患。

 

很多企业管理者都面临这样的难题:员工防钓鱼意识不足、极易误入钓鱼陷阱,传统安全培训枯燥脱离实际,还没法用数据量化防护效果。为此,CACTER 反钓鱼演练系统(PhishSim)全新迭代升级,以高仿真模拟钓鱼场景替代枯燥理论说教,让员工沉浸式实战识坑避坑,助力企业从被动补救转为主动做好邮件安全防护。

\"稿定设计-1.png\"/

 

CACTER反钓鱼演练系统(PhishSim:四核心能力,把演练做出真效果

 

1.高仿真演练,全方位覆盖

CACTER反钓鱼演练系统可以模拟日常最易遇到的三类钓鱼形式:虚假链接、恶意附件、伪装二维码,还能仿冒发件人和官方域名,完全还原真实诈骗场景。无论是APT攻击还是鱼叉式钓鱼,员工都能身临其境感受钓鱼邮件套路,慢慢学会自主分辨、主动防范。经过长期常态化演练,能企业员工平均中招率从 23.88% 降到 4.16%,安全提升效果实实在在、看得见。

\"配图1.PNG\"/ 

2.模板动态更新,演练紧跟趋势

系统自带持续更新的钓鱼模板库,覆盖节日祝福、电子发票、系统升级、财务补贴等高频常见主题。同时支持按金融、制造、政企等不同行业,结合报税、人事晋升等办公场景,一对一定制专属模板。演练内容紧贴自家业务,不空洞、不走过场,和真实遇到的风险高度贴合。

 

\"配图4.png\"/

3.智能报表分析,精准补齐安全漏洞

每次演练结束,系统都会生成可视化分析报告:员工风险分级、部门安全排名、中招行为分析,一目了然。报告不仅提供数据,还输出可落地的防护优化建议,不止展示数据,还会给出可直接照着执行的整改和培训建议,方便管理者精准补齐安全漏洞,合理安排后续学习,形成演练 - 分析 - 优化的完整闭环。

\"配图5.png\"/ 

▲智能报告展示效果

4.四步配置,轻松即开即用

系统配置只需选定模板、划分员工分组、启动演练、查看报告四步就能完成。不用专业安全人员操作,企业自己就能快速落地常态化防钓鱼训练,省时省心,快速搭建全员邮件安全防线。

\"配图2.PNG\"/ 

-------------------------------------------------------------------------------

在钓鱼邮件越来越猖獗的今天,企业安全不是一堂课能解决的,而是需要常态化演练 + 数据可视 + 效果量化。CACTER 反钓鱼演练系统全新升级,能让每一次演练都变成企业安全实力的积累,稳稳守住企业邮件安全。


", + "pubDate": "Fri, 15 May 2026 18:15:01 +0800", + "author": "CACTER邮件安全" }, { - "title": "MassJacker 恶意软件出手,778,000 个钱包加密货币被盗取", - "link": "https://www.4hou.com/posts/LGlD", - "description": "

新发现的剪贴板劫持操作 “MassJacker”,利用至少 778,531 个加密货币钱包地址,从受感染计算机中窃取数字资产。

据发现 MassJacker 活动的 CyberArk 称,在分析时,与该行动相关的大约 423 个钱包内共有 95,300 美元。不过,历史数据显示,其涉及的交易金额曾更大。此外,威胁行为者似乎将一个 Solana 钱包作为中央收款中心,截至目前,该钱包已累计完成超过 30 万美元的交易。

CyberArk 怀疑整个 MassJacker 行动与特定威胁组织有关联。因为在整个活动过程中,从命令和控制服务器下载的文件名,以及用于解密文件的加密密钥始终保持一致。然而,该操作也有可能遵循恶意软件即服务模式,由中央管理员向各类网络犯罪分子出售访问权限。

\"image.png\"/

CyberArk 将 MassJacker 称为加密劫持操作,虽然 “加密劫持” 这一术语通常更多用于描述利用受害者的处理 / 硬件资源进行未经授权的加密货币挖掘行为。实际上,MassJacker 依赖于剪贴板劫持恶意软件(clippers)。这种恶意软件会监视 Windows 剪贴板中复制的加密货币钱包地址,并将其替换为攻击者控制下的地址。如此一来,受害者在不知情的情况下,就会把原本要汇给他人的钱,错汇给攻击者。剪辑器这种工具虽简单,却极为有效。由于其功能和操作范围有限,特别难以被察觉。

技术细节

MassJacker 通过 pesktop [.] com 进行分发,该网站既托管盗版软件,也存在恶意软件。从该站点下载的软件安装程序会执行一个 cmd 脚本,该脚本进而触发一个 PowerShell 脚本,PowerShell 脚本会获取一个 Amadey 机器人以及两个加载器文件(PackerE 和 PackerD1)。Amadey 启动 PackerE,随后 PackerE 解密并将 PackerD1 加载到内存中。

PackerD1 具备五种嵌入式资源,用以增强其逃避检测和反分析的性能。这些资源包括即时(JIT)挂钩、用于混淆函数调用的元数据令牌映射,以及用于命令解释的自定义虚拟机(并非运行常规的.NET 代码)。PackerD1 解密并注入 PackerD2,最终解压缩并提取出最终有效负载 MassJacker,并将其注入合法的 Windows 进程 “InstalUtil.exe” 中。

\"image.png\"/

MassJacker 利用正则表达式模式,对剪贴板中的加密货币钱包地址进行监视。一旦发现匹配的地址,就会将其替换为加密列表中攻击者控制的钱包地址。

CyberArk 呼吁网络安全研究界密切关注 MassJacker 这类大型加密劫持行动。尽管此类行动造成的经济损失可能相对较低,但却能够泄露许多威胁行为者的宝贵身份信息。


", - "pubDate": "Fri, 14 Mar 2025 10:17:46 +0800", - "author": "山卡拉" + "title": "「以图鉴势」嘶吼2026网络安全产业图谱重磅发布", + "link": "https://www.4hou.com/posts/BpoQ", + "description": "

2026年3月,嘶吼安全产业研究院正式启动“2026网络安全产业图谱”调研工作,旨在全景呈现中国网络安全产业的发展格局,为政企客户的采购决策提供选品指南,为安全厂商的市场拓展提供方向参考。

历时数月,调研团队累计回收有效问卷400余份,经过严格的筛选核实与系统分析,今日正式发布调研结果。这400余家企业构成了中国网络安全产业最具代表性的核心梯队,他们的生存状态、创新实践与战略选择,正是我们观察产业格局变化最真实、最客观的窗口。

2026年,AI驱动的工业化网络攻击已从理论走向实战。大模型赋能的攻击工具让威胁行为的规模化、自动化、低成本化成为现实;多重勒索模式的迭代升级将数据加密与信息窃取合二为一,形成更难应对的双重绑架;API作为数字化时代的新型攻击面,正在成为大规模数据泄露的主要通道;供应链攻击的复杂性与隐蔽性持续攀升,安全风险不再局限于单一企业边界,而是沿着供应链条快速传导。与此同时,在防御侧,AI赋能的威胁检测与响应正在实现从"事后补救"到"实时阻断"的范式跃迁,零信任架构从概念验证走向规模化部署,隐私计算技术让数据流通与数据安全得以兼得,量子计算安全迁移的脚步声也日益临近。

攻防两端的同步跃迁,昭示着网络安全产业正在经历一场关于“体系化、智能化、可信化”的系统性重构。这不仅是一场技术升级,更是思维范式的根本转变——安全不再是被动加固的“成本中心”,而是内生于数字化基础设施的“核心竞争力”。

\"640.png\"/

AI重塑安全:冲击与机遇的深层逻辑

人工智能正在从根本上深度改变网络安全的攻防格局。

从攻击侧来看,AI正在显著降低网络攻击的门槛与成本。自动化钓鱼邮件生成、AI社工攻击、深度伪造欺诈……这些威胁不再是高级APT组织的专属,而是正在向规模化、平民化的方向扩散。这意味着网络安全防御的难度呈指数级上升——攻击者可以以极低的边际成本,对海量目标发动高度个性化的攻击,而传统基于规则、签名的防御体系在这种降维打击面前显得愈发被动。

从防御侧来看,AI同样在深刻改变安全产品的形态与能力边界。那些率先将大模型技术深度融入产品矩阵的厂商,正在构建起新一代的核心竞争力。智能威胁检测、自动化安全运营、AIGC内容安全、智能化漏洞挖掘……这些由AI驱动的安全能力,正在重新定义行业标准。调研中观察到的一个显著趋势——已完成AI能力整合的厂商,在客户留存、增长韧性、溢价空间等关键指标上,均展现出明显优势。

更值得关注的是AI对安全产业竞争规则的改变。传统安全市场依赖的"大客户、大项目、大渠道"模式正在被瓦解,取而代之的是"小而美、快而准、专而精"的新一代竞争范式。大量创新型安全厂商凭借对垂直场景的深度理解与快速迭代能力,正在细分赛道中占据越来越重要的话语权。这一变化对产业格局的深远影响,远未引起足够重视。

然而,机遇的另一面是更严峻的挑战。AI的双刃剑效应在网络安全领域体现得尤为充分。攻击者与防御者之间的AI军备竞赛正在加速,而在这场竞赛中,防守方往往承受着更大的压力——因为攻击者只需要找到一个突破口,而防御者必须做到万无一失。

市场格局:从“规模竞争”到“价值竞争”的深层转型

透过本届图谱调研的系统梳理,我们观察到中国网络安全市场正在经历一场深刻的结构性转型。

第一,综合型厂商与专精型厂商的竞争态势正在发生微妙逆转。综合型厂商凭借规模优势、产品线宽度、大客户关系,在过去相当长一段时间内占据主导地位。但随着市场进入精细化运营阶段,客户需求正从"买一套完整方案"转向"解决具体问题"。专精型厂商凭借对特定场景的深度理解、更快的响应速度、更灵活的商业模式,正在加速侵蚀综合型厂商的市场空间。这一趋势在金融、能源、运营商等关键行业体现得尤为明显。

第二,安全市场的客户结构正在发生根本性变化。传统安全市场以政企、金融、运营商为大客户主体,这一格局在短期内不会根本改变,但客户需求的内涵正在发生深刻变化。合规驱动仍是基本盘,但需求驱动的比重正在快速上升——企业不再仅仅为了"满足监管要求"而采购安全产品,而是真正开始将安全视为数字化业务的风险管理工具。这一转变意味着安全厂商必须更深入地理解客户的业务场景,而非简单提供标准化的产品。

第三,安全产业的创新活力正在向垂直场景深度渗透。大量创新型安全厂商正在AIGC安全、API安全、供应链安全、零信任、隐私计算等新兴赛道加速布局。这些厂商普遍规模不大、人员精简,但技术积累深厚、创新能力突出。他们正在成为推动中国网络安全技术进步的重要力量,也是产业生态中最具活力的组成部分。

第四,从"产品交付"到"能力交付"的商业模式转型正在加速。传统安全厂商以产品销售为核心,交付的是"物化的工具";而新一代安全厂商正在探索以SaaS化、订阅化、服务化的方式交付"持续运转的能力"。这一商业模式的转变,对安全厂商的产品架构、运营体系、服务能力都提出了全新的要求。

趋势洞察:三个确定性方向

基于本次大规模产业调研的系统分析,我们识别出三个确定性趋势:

第一,AI重构安全产品架构已成行业共识,不可逆转。从攻击侧的自动化到防御侧的智能化,AI正在成为网络安全产业链各环节的标配。那些尚未完成AI能力整合的厂商,将在这场结构性洗牌中面临严峻的生存压力。AI不是可选项,而是决定生死存亡的必选项。

第二,产业格局从"大而全"走向"专而精",不可阻挡。垂直化、精细化、特色化,正在成为中小厂商突破竞争的战略选择。这并不意味着综合型厂商将被取代,而是意味着综合型厂商必须学会在"广度"与"深度"之间找到新的平衡点。对整个产业而言,这种多元化的竞争格局有利于技术创新的百花齐放。

第三,中国网络安全产业的黄金发展期仍在持续,不可动摇。数字化转型的深化、AI技术的爆发、国际形势的复杂化,都将持续驱动网络安全需求的增长。中国网络安全产业正在以更成熟的心态、更深厚的技术积累,迎接下一个十年。可以预见,未来三至五年,产业将进入一个以"价值创造"为核心的新阶段——那些真正能够为客户解决实际问题、创造真实价值的安全厂商,将在这轮洗牌中脱颖而出。

关注嘶吼公众号“嘶吼专业版”回复“2026图谱”获取《嘶吼2026网络安全产业图谱》高清版下载方式。


", + "pubDate": "Thu, 14 May 2026 12:00:00 +0800", + "author": "嘶吼" }, { - "title": "隐匿在未知角落的 Anubis 恶意软件 为黑客远程命令大开方便之门", - "link": "https://www.4hou.com/posts/KGkG", - "description": "

近期, AnubisBackdoor 频繁出现。这是一个基于 Python 的后门程序,其幕后黑手是 Savage Ladybug 组织。据报道,该组织与臭名昭著的 FIN7 网络犯罪团伙存在关联。

此恶意软件的目的在于提供远程访问权限、执行命令以及推动数据泄露,与此同时,还能躲避大多数防病毒解决方案的检测。

\"image.png\"/

技术分析

AnubisBackdoor 是网络犯罪集团所开发和部署的复杂恶意软件工具这一广泛趋势中的一部分。与主要针对具备银行木马功能的 Android 设备的 Anubis 恶意软件有所不同,AnubisBackdoor 专门用于在其他平台上执行远程命令并入侵系统。它采用了较为温和的混淆技术,致使许多安全工具完全无法对其进行检测(FUD)。这种高度的隐秘性使得威胁行为者能够在恶意垃圾邮件活动中有效地运用它,进而对系统造成更大危害并窃取敏感数据。

Savage Ladybug 组织对 AnubisBackdoor 的运用,凸显出像 FIN7 这类网络犯罪集团不断演变的策略。FIN7 等集团向来以先进的逃避技术和工具开发而声名狼藉。FIN7,也被称作 Carbanak,自 2013 年起便活跃于网络,并且使用了一系列工具,其中包括 Carbanak 后门以及 AvNeutralizer 工具,这些工具旨在禁用端点检测和响应(EDR)解决方案。AnubisBackdoor 的开发与部署表明,这些组织持续创新并调整自身策略,以逃避检测并将攻击的影响力最大化。

攻击指标(IOC)

根据相关报告,为了抵御 AnubisBackdoor,建议安全团队监控特定的入侵指标(IOC),其中包括后端服务器 IP 地址,例如 38.134.148.20、5.252.177.249、212.224.107.203 以及 195.133.67.35。此外,诸如 03a160127cce3a96bfa602456046cc443816af7179d771e300fec80c5ab9f00f 和 5203f2667ab71d154499906d24f27f94e3ebdca4bba7fe55fe490b336bad8919 之类的文件哈希,也应标记出来,以防潜在的恶意活动。

随着威胁形势的持续演变,对于各组织而言,通过实施强大的检测和响应策略来应对此类复杂的恶意软件威胁,从而增强自身安全态势至关重要。

", - "pubDate": "Thu, 13 Mar 2025 10:29:05 +0800", - "author": "山卡拉" + "title": "纵横网络靶场社区正式发布 以虚实融合技术构建工业信息安全实战生态", + "link": "https://www.4hou.com/posts/nXQ5", + "description": "

当前,工业互联网深度融合发展,关键信息基础设施安全防护需求持续攀升,实战型工业信息安全人才短缺、训练场景稀缺、理论与实践脱节等制约行业发展的核心痛点日益凸显。

在此背景下,烽台科技打造的聚焦工业信息安全人才培养与生态共建的纵横网络靶场社区正式发布。该平台依托烽台科技十余年工业靶场技术沉淀,以“虚实融合”技术为核心,整合AI智能体、数字孪生等前沿能力,旨在打造工业安全领域“理论+实战+生态”三位一体的服务体系,为高校、企业、科研院所提供专业化的工业安全实训与技术交流空间。

\"图片1.png\"/

从“竞赛工具”到“生态平台”:网络靶场社区的迭代之路

回溯烽台科技网络靶场社区的发展历程,其起点可追溯至2015年——公司成立后其核心产品便是工控网络靶场,由此开启了工业安全领域的深耕之路。早期社区更像“竞赛工具”,聚焦赛事聚人气,而此次全新发布的纵横网络靶场社区则进行了针对性升级:不仅保留竞赛模块,还新增实训专区,计划陆续开放石油石化、电力、钢铁冶金等超100个工业场景仿真环境,用户可通过拖拽式操作快速搭建专属测试场景,获得“开箱即用”的实战体验。

值得关注的是,技术团队会定期分享工业安全漏洞挖掘、协议测试等专业内容,同时鼓励用户提交技术方案与创新思路。“我们希望社区不再是单向输出的‘知识库’,而是成为工业安全人才碰撞思想、合作共赢的‘朋友圈’。”烽台科技相关负责人表示,未来社区将通过积分体系与专家入库机制,将优质用户转化为项目合作伙伴,推动技术成果从“纸上谈兵”到“落地应用”。

技术底座支撑:虚实融合仿真,覆盖多行业工控场景

支撑纵横网络靶场社区升级的核心,是烽台科技十余年积累的工业网络靶场技术硬实力。经过多年迭代,平台已形成虚实融合、全场景仿真、全流程可监测、可量化评估的技术能力,可在物理隔离环境下还原工业现场运行逻辑。

其技术特点主要体现在三方面:一是虚实结合仿真,可接入PLC、DCS、传感器等真实设备,结合数字孪生与虚拟化系统,1:1还原电力、石油石化、钢铁冶金、智能制造、城市公用设施等典型场景;二是全业务链全景监控,覆盖工艺层、控制层、网络层,可对操作行为、数据流转、协议交互进行全程记录与追踪;三是量化评估模型,围绕人员能力、产品性能、防护方案、攻防效能构建量化评价体系,可用于竞赛评分、能力测评与方案验证。

另外,面对合规与安全问题时,该负责人表示,社区场景均为仿真环境,不使用、不涉及真实工业系统数据;平台社区服务部署于合规公共云,核心仿真环境支持物理隔离部署,将建立数据安全与用户隐私保护机制,定期开展安全检查,满足行业合规要求。

目前,烽台靶场搭建了L0(靶标级)至L5(元宇宙级)的六级能力体系,当前重点探索L4(推理级)AI应用,将漏洞扫描、渗透测试等工具封装为AI可调用的能力模块,用户通过自然语言指令即可触发自动化测试,未来还将结合大模型实现风险预测与智能决策,进一步降低工业安全测试的技术门槛。

聚焦产学研用:从高校合作到企业赋能,构建工业安全生态

“工业安全的核心痛点,一是人才短缺,二是技术落地难。”该负责人强调。基于此,纵横网络靶场社区明确了“服务高校育才、支撑企业实战”的双向定位。

在高校合作方面,烽台科技已与多所院校建立合作。将靶场资源融入教学体系并为高校提供定制化实训课程,学生可在仿真环境中开展工业协议分析、工控设备漏洞利用等实操训练,解决“课本知识与实战脱节”的问题。据了解,部分合作院校还将靶场实训纳入毕业实习环节,学生在社区提交的技术方案通过审核后,可纳入“专家库”,优先获得项目合作机会。

针对企业需求,纵横网络靶场社区则提供“测试+培训+应急”的全周期服务。一方面,企业可借助靶场验证工业防火墙、IDS等安全产品有效性,或仿真勒索病毒、跨境数据泄露等场景,优化防护方案;另一方面,社区可根据企业需求定制线上培训,提升员工安全运维能力。

“未来,我们希望通过社区链接更多生态伙伴——让高校输出人才、让企业提出需求、让安全从业者贡献技术,形成‘产学研用’的良性循环。”烽台科技负责人表示。

AI赋能靶场建设 工业安全迈向协同发展

据了解,纵横网络靶场社区后续计划融入AI大模型与智能体技术,探索自然语言场景构建、自动化渗透测试、风险推演等功能,进一步降低使用门槛。同时,推动社区向开放生态方向发展,推动工业安全从“单点防御”走向“生态共防”。

随着工业信息安全纳入关键基础设施保障重点,公共实训、能力测评、攻防演练等基础服务需求将持续增长。以纵横网络靶场社区为代表的开放平台,能否走出可持续的社区化运营模式,为行业提供可复制的人才培养机制,仍有待时间检验。但可以确定的是,更开放、更实战、更协同,将成为工业信息安全能力建设的重要方向。

纵横网络靶场社区官网:www.game.fengtaisec.com免费注册体验!

", + "pubDate": "Tue, 21 Apr 2026 19:39:21 +0800", + "author": "胡金鱼" }, { - "title": "丈八网安获批入选教育部产学合作协同育人项目 诚邀高校申报", - "link": "https://www.4hou.com/posts/J1jK", - "description": "

近日,丈八网安凭借其技术领先性和全面务实的网络安全人才培养解决方案,以及丰富的校企合作项目经验,入选教育部产学合作协同育人项目企业名单。未来,丈八网安将定向投入丰富的技术、内容、服务资源,用于合作高校的教学体系、师资培训体系和实践基地建设工作。

产学合作协同育人项目是教育部为贯彻《国务院办公厅关于深化高等学校创新创业教育改革的实施意见》和《国务院办公厅关于深化产教融合的若干意见》精神,深化产教融合、推动高等教育改革而推出的重要举措。通过项目实施,能够实现人才培养与企业需求的无缝对接,促进教育与产业的深度融合和高质量发展。在此背景下,丈八网安在长期校企合作实践中不断摸索,通过对技术和产品的创新升级,形成了拥有丰富实战实践场景、科学评价评估体系、灵活实用的网络安全人才培养解决方案,有效满足了教育与实践相结合的需求,为产学合作协同育人项目注入了新的活力。

以下为丈八网安全面推进网络安全教育领域产教融合,助力产学合作协同育人项目的具体支持计划:

1.精品课程建设项目支持办法

丈八网安计划推出10项网络安全课程开发项目,这些项目将紧密围绕高校信息安全指导规范和国家“网络空间安全”一级学科建设指导方针。内容将包含专业的理论知识课程和丰富的实验实操课程,旨在适应并满足持续更新的高校教学和实训需求。

2.师资培训支持办法

拟设立与10所高校进行师资培训项目。围绕当前的产业技术热点,提供教学平台、企业讲师、视频课件资源等协助提升一线授课教师的技术和课程建设水平。围绕网络安全、移动应用开发、嵌入式与系统软件开发、物联网应用安全等领域开展师资培训。同时,将定期组织论坛和会议,促进教师之间的交流与合作,共同提升教育水平。

除此之外,丈八网安将结合教指委关于信息安全专业指导性专业规范、GB/T42446《信息安全技术-网络安全从业人员能力基本要求》、NICE网络安全人才队伍框架、ATT&CK技战法、D3FEND防御模型等,提供以TKS(任务、知识、技能)评估框架为理论牵引的人员能力评估支撑,协助教师进行科学的教学成果评估考核。

3.实践条件和实践基地建设支持办法

①网络安全实验室

丈八网安将支持10所学校进行网络安全实验室建设,提供包括教学科研系统、合作教材、项目案例及产品开发在内的丰富资源。同时,带动院校参与专业技能大赛,完善教学资源,并为后期实验室建设提供全面指导,助力学校提升网络安全教育和科研水平。

②实践基地建设支持办法

丈八网安计划携手10所立项学校,共同推进校外实践基地的联合建设,为学生开辟一条通往实践领域的桥梁。这些实践基地将专注于网络安全、安全运维、渗透测试及安全服务等前沿技术领域,帮助他们将理论知识与实际操作紧密结合。为了确保学生在实习实训过程中能够得到全面的技术支持,丈八网安将提供先进的教学系统作为坚实后盾。该系统不仅能够为学生提供实时的技术指导,还能帮助他们在实践中不断巩固和提升自身技能,为未来的职业生涯奠定坚实的基础。 

以上,丈八网安希望与高校紧密协作,共同推进项目实施,为网络安全领域的人才培养、技术创新以及教育资源的优化配置做出卓越贡献。高校可通过以下方式进行申报:

产学合作协同育人平台(http://cxhz.hep.com.cn)注册教师用户,填写申报相关信息,可搜索“北京丈八网络安全科技有限公司”,并可在“项目申请表单”页面或“产学合作—常用文件下载”页面下载项目申报书模板。

项目申报后,请及时关注审核进展。企业审核通过的项目,高校与企业应签署合作协议,明确项目内容、资助形式及时间、预期成果、项目周期和验收标准等事项。合作协议由高校与企业签署,协议盖章必须为高校、企业公章(或合同章)。合作协议由项目负责人上传至项目平台,并须经企业确认。请及时关注协议确认进度,以免影响项目立项。

联系人: 侯海波

联系电话:15934837215

邮箱:houhaibo@zbnsec.com

", - "pubDate": "Wed, 12 Mar 2025 15:16:59 +0800", + "title": "梆梆安全发布《2026年Q1移动应用安全风险报告》:超八成APP存隐私违规,数据境外外发风险需高度警惕", + "link": "https://www.4hou.com/posts/pKwQ", + "description": "

梆梆安全发布《2026年Q1移动应用安全风险报告》。本报告基于梆梆安全移动应用监管平台在2026年一季度的威胁监测数据与深度安全分析成果,系统梳理当前国内移动应用面临的新型攻击技术演进与安全趋势变化,聚焦盗版仿冒、境外数据传输、高危漏洞、个人隐私违规等多个维度,为移动应用安全建设工作提供参考与实践指引。

\n

当前,我国数字经济与实体经济融合持续深入,移动互联网已演进为支撑社会数字化转型的关键基础设施。根据中国互联网络信息中心(CNNIC)第57次《中国互联网络发展状况统计报告》,截至2025年12月,我国网民规模达11.25亿,互联网普及率突破80%,其中手机网民规模达11.21亿,占比高达99.6%,移动终端在数字接入生态中的核心地位进一步巩固。

\n

与此同时,用户对移动应用的依赖程度持续加深。数据显示,我国网民人均每周上网时长已达32.5小时,人均使用APP数量接近30款,移动互联网接入流量全年达3958亿GB,同比增长17.3%。从应用类型看,网络视频、即时通信、网络购物与支付等场景的用户规模均超过10亿,短视频用户渗透率达95.4%,移动应用已深度渗透至日常生活的方方面面。

\n

在“人工智能+”行动计划的推动下,智能终端与移动应用的融合加速演进。智能穿戴设备、智能家居等场景快速发展,截至2025年底,使用个人可穿戴设备上网的比例达26.9%,智能家居设备上网比例达20.8%。生成式人工智能用户规模更是激增至6.02亿,AI能力正被广泛集成至各类APP中,成为提升用户体验的核心驱动力。

\n

然而,移动应用服务场景的不断深化也带来了严峻的安全挑战。应用漏洞、隐私违规、数据跨境传输、盗版仿冒等风险日益突出。在本次监测周期内,超过80%的APP存在中高危漏洞,超八成的应用涉及隐私违规问题,数据境外传输行为持续存在,第三方SDK的供应链风险亦不容忽视。面对技术快速迭代与合规监管持续收紧的双重压力,构建全方位、体系化的移动安全防护机制已刻不容缓。

\n

(完整版报告获取方式见文末)

\n


\n

01 全国移动应用概况

根据梆梆安全移动应用监管平台对国内外1000+活跃应用市场实时监测的数据显示,2026-01-01至2026-03-31发布的应用中,归属于全国的Android应用总量为70,233款,涉及开发者总量22,169家。  

从APP的分布区域来看,广东省APP数量仍然位居第一,约占全国APP总量的19.6%,位居第二、第三的区域分别是北京市和上海市,对应归属的APP数量是10,713、6,857个。具体分布如图1所示:

\n

\"640

图1 全国APP区域分布TOP10

\n

从APP的渠道分布来看,截止统计周期内,全国移动应用分发市场有1,193家,位居渠道排名前三的分别为VIVO应用商店、2345手机助手、应用宝。全国移动应用渠道分布如图2所示:

\n

\"640

图2 全国移动应用渠道分布TOP10

\n

从APP的功能和用途类型来看,实用工具类APP数量稳居首位,占全国APP总量的20.16% ;其他类APP位居第二,占全国APP总量的14.23%;教育学习类APP排名第三,占全国 APP总量的9.7%。各类型APP占比情况如图3所示:

\n

\"640

\n

图3 全国APP类型分布TOP10

\n


\n

02 全国移动应用安全分析概况

当前,移动应用与智能终端的深度融合催生了更为复杂的安全风险。在网络购物与支付场景中,海量资金流转使盗刷、钓鱼欺诈等威胁持续高发;外卖服务涉及精确地址与联系方式,互联网医疗承载着病历、健康档案等高度敏感信息,在线教育则包含大量未成年人数据——这些垂直领域的深度渗透使得个人隐私一旦泄露后果尤为严重;生成式人工智能的快速普及,可能被恶意利用于生成钓鱼内容或深度伪造音视频,大幅提升社会工程攻击的成功率;此外,部分智能终端往往安全更新滞后、权限管理松散,易被劫持为僵尸网络节点或用于窃取生物识别信息。

\n

综上,移动安全风险已从传统的漏洞利用演变为涵盖数据违规收集、恶意滥用、非法获取、跨境散播以及AI供应链攻击、智能终端边侧入侵的多维复合威胁。

\n

梆梆安全移动应用监管平台通过调用不同类型的自动化检测引擎,对全国Android应用进行抽样检测,风险应用从盗版(仿冒)、境外数据传输、高危漏洞、个人隐私违规4个维度综合统计,风险应用数量如图4所示:

\n

\"640图4 风险应用数量统计

\n


\n

2.1 漏洞风险分析

从全国Android APP中随机抽取6,701款进行漏洞检测,发现存在漏洞威胁的APP为5,407个,即80.69%以上的APP存在中高危漏洞风险。在这5,407款APP的漏洞中,高危漏洞占比76.7%,中危漏洞占比98.5%(同一APP可能存在多个等级漏洞)。

对不同类型的漏洞进行统计发现,多数安全漏洞可以通过应用加固方案解决,由此也反映出部分开发者与运营者重功能轻安全防护,安全意识薄弱。应用中高危漏洞数量排名前三的类型分别为Java代码反编译风险、HTTPS未校验主机名漏洞、动态注册Receiver风险。各漏洞类型占比情况如图5所示:

\n

\"640

\n

图5 漏洞类型占比TOP10

\n


\n

从APP类型来看,实用工具类APP存在的漏洞风险最多,占漏洞APP总量的20.35%;其次为其他类APP,占比16.49%;教育学习类APP位居第三,占比8.45%,漏洞数量排名前10的APP类型如图6所示:

\n

\"640

\n

图6 存在漏洞的APP类型TOP10

\n


\n

2.2 盗版(仿冒)风险分析

盗版APP是指未经版权人授权,通过篡改正版APP并植入恶意代码后重新发布的应用。此类APP可能导致用户信息泄露、手机中毒等安全风险。

\n

“剑网行动”是国家版权局、工业和信息化部、公安部、国家网信办四部门联合开展的打击网络侵权盗版专项行动。自2005年起,行动聚焦网络侵权热点难点,针对细分领域查处了一批大案要案,有效净化了网络版权秩序,保护了互联网企业的合法权益。2025年5月至11月开展的“剑网2025”已是第21次专项行动,重点整治视听作品、动漫游戏、计算机软件、网络存储与传播、网络销售、流媒体智能终端等六个领域。

\n

从全国的Android APP中随机抽取28款进行盗版(仿冒)引擎分析,检测出盗版(仿冒)APP 28个,其中实用工具、游戏娱乐、社交通讯类应用是山寨APP的重灾区,各类型占比情况如图7所示:

\n

\"640

\n

图7 盗版(仿冒)APP类型TOP10

\n


\n

2.3 境外传输数据分析

当前,随着数字经济的深入发展和全球化进程的加速,数据跨境流动已成为企业运营不可或缺的环节。重要数据一旦遭到篡改、破坏、泄露或者非法获取、非法利用,可能直接危害国家安全与公共利益。因此数据出境合规管理,不仅是提高数字经济全球竞争力的基础,更是守护国家安全的保障。

\n

国家持续完善数据出境安全管理体系,已构建起以《网络安全法》《数据安全法》《个人信息保护法》三部法律为支柱,以《网络数据安全管理条例》为支撑,以《数据出境安全评估办法》《个人信息出境标准合同办法》《促进和规范数据跨境流动规定》《个人信息出境认证办法》等四部规章为核心实施路径的完整制度体系。

\n

从全国的Android APP中随机抽取4,089款Android APP进行境外数据传输引擎分析,发现其中302款应用存在往境外的IP传输数据的情况,从统计数据来看,发往美国的最多,占比70.2%;其次是发往澳大利亚,占比14.57%。无论是针对移动应用程序自身程序代码的数据外发行为,还是针对第三方SDK的境外数据外发行为,都建议监管部门加强对数据出境行为的监管。数据传输至境外国家占比排行情况如图8所示:

\n

\"640

\n

图8 数据传输至境外国家占比TOP10

\n

从APP类型来看,其他类APP往境外IP传输数据的情况最多,占境外传输APP总量的23.51%;其次为实用工具类APP,占比18.54%;生活服务类APP占比7.95%,位列第三。各类型占比情况如图9所示:

\n

\"640

\n

图9 境外传输数据APP各类型占比TOP10

\n


\n

2.4 个人隐私违规分析

当前,APP强制索权、违规收集使用个人信息等问题日益突出,暴露出企业在数据合规体系建设上的滞后。2026年4月,中央网信办、工业和信息化部、公安部联合发布公告,开展年度个人信息保护系列专项行动,聚焦APP及SDK、互联网广告、教育、交通、卫生健康、金融等重点领域,系统治理违法违规收集使用个人信息的典型问题,并专项打击侵犯个人信息的违法犯罪活动。面对持续收紧的监管态势,企业须将“隐私合规”置于产品设计的核心。

\n

从全国Android APP中随机抽取4,089款进行合规引擎分析,检测出82.22%的APP涉及隐私违规现象,如:违规收集个人信息、超范围收集个人信息、强制用户使用定向推送功能等。各违规类型占比情况如图10所示:

\n

\"640

\n

图10 个人隐私违规类型占比情况

\n

从APP类型来看,其他类APP存在个人隐私违规问题最多,占检测总量的19.6%,其中五成以上涉及频繁申请权限问题;实用工具类APP存在隐私违规问题占检测总量的17.61%,位居第二;教育学习类APP存在隐私违规问题占检测总量的9.43%,位居第三。涉及个人隐私违规APP各类型占比如图11所示:

\n

\"640

\n

图11 个人隐私违规APP类型TOP10

\n


\n

2.5 第三方SDK风险分析

第三方软件开发包(SDK)是由广告平台、数据服务商、社交网络及地图服务商等第三方提供的功能集成工具。为降低开发成本、提升功能实现效率,APP开发与运营方普遍在应用程序中集成各类第三方SDK,以快速实现相应服务。然而,一旦所集成的SDK存在安全漏洞,将可能引发供应链式安全风险,导致所有集成该SDK的应用程序面临被攻击的威胁。

\n

从APP类型来看,实用工具类APP内置第三方SDK的数量最多,占比19.35%;其次为其他类APP,占比18.78%;教育学习类APP位列第三,占比9.29%。内置第三方SDK应用各类型APP占比如图12所示:

\n

\"640

\n

图12 内置第三方SDK应用各类型APP占比TOP10

\n


\n

2.6 应用加固现状分析

在移动应用深度融入生产生活的今天,其安全性直接关乎用户隐私与企业核心资产。若一款APP未经任何安全加固便直接上线,在黑客和黑灰产眼中无异于“裸奔”,极易被逆向分析、反编译、二次打包或恶意篡改。因此,必须对APP进行专业加固,通过代码混淆、加密、运行时保护等技术,为应用穿上“铠甲”。

\n

从全国的Android APP中随机抽取47,266款进行加固引擎检测,检测出已加固的应用仅占应用总量的30.85%。

\n

从应用类型来看,APP加固率排名前三的分别是党政机关、金融理财、新闻阅读类APP。不同APP类型加固占比如图13所示:

\n

\"640

\n

图13 不同APP类型加固占比

\n


\n

面对当前移动应用安全现状,应用漏洞与隐私违规问题最为突出,盗版仿冒、数据境外传输等威胁同样不容忽视。应对各类风险,需要各方协同发力。

\n

1)企业及开发运营者应加强自身APP的安全防护,严格遵守相关法律法规,切实履行安全与合规的责任与义务。

\n

2)监管部门需针对移动APP各类威胁及时更新法规,加强对应用分发平台的监管,督促落实上架审核与平台责任,严控过度索权行为,加大违法违规发现、曝光与处置力度。

\n

3)广大用户应提升安全意识,认准官方渠道或主流应用市场下载APP,警惕陌生链接与二维码,注意保护个人隐私,防止信息泄露导致财产损失。

", + "pubDate": "Tue, 21 Apr 2026 00:00:00 +0800", + "author": "梆梆安全" + }, + { + "title": "公安部通报37款违规应用,电商类占比超七成,小程序不再是 “法外之地”", + "link": "https://www.4hou.com/posts/PGXA", + "description": "

依据《网络安全法》《个人信息保护法》等法律法规,经公安部计算机信息系统安全产品质量监督检验中心检测,37款移动应用存在违法违规收集使用个人信息情况,具体通报如下:

1、未公开收集使用规则。涉及21款移动应用如下:

《奇峰商城》(支付宝小程序)、《聚优商城》(微信小程序)、《亿秀分期商城》(支付宝小程序)、《鲜范商城》(微信小程序)、《京机数码手机商城》(支付宝小程序)、《创维官方商城》(支付宝小程序)、《万事商城》(支付宝小程序)、《尚至然商城》(支付宝小程序)、《知墨商城》(支付宝小程序)、《领充充电桩商城》(支付宝小程序)、《世有品商城》(支付宝小程序)、《阿京妈会员》(微信小程序)、《仲盛世界SKYMALL》(支付宝小程序)、《衣恋集团商城》(微信小程序)、《快贷分期》(版本4.0.1,应用宝)、《百师商城》(微信小程序)、《松下商城》(微信小程序)、《意尔康官方商城》(微信小程序)、《买卖提商城》(支付宝小程序)、《澜睿权益商城》(支付宝小程序)、《手机数码商城海烨专卖店》(支付宝小程序)。

2、未逐一列出收集、使用个人信息的目的、方式、范围。涉及7款移动应用如下:

《淘赚钱返利》(版本5.3.7,百度应用商店)、《正鑫金商城》(支付宝小程序)、《海航航空商城》(微信小程序)、《赞友商城》(版本5.2.7,小米应用商店)、《小象优品》(版本4.8.4,华为应用市场)、《摩境商城》(版本2.9.4,应用宝)、《柚子快报》(版本2.2.2,vivo应用商店)。

3、在申请打开可收集个人信息的权限时,未同步告知用户其目的。涉及5款移动应用如下:

《聚优商城》(微信小程序)、《尚至然商城》(支付宝小程序)、《买卖提商城》(支付宝小程序)、《星帮手商城》(支付宝小程序)、《赞友商城》(版本5.2.7,小米应用商店)。

4、征得用户同意前就开始收集个人信息。涉及5款移动应用如下:

《悦享商城》(版本4.0.5,华为应用市场)、《多点》(版本6.7.8,OPPO软件商店)、《富宝袋》(版本4.5.5,应用宝)、《中芒商城》(支付宝小程序)、《优品商城》(支付宝小程序)。

5、实际收集的个人信息超出用户授权范围。涉及7款移动应用如下:

《淘赚钱返利》(版本5.3.7,百度应用商店)、《正鑫金商城》(支付宝小程序)、《海航航空商城》(微信小程序)、《赞友商城》(版本5.2.7,小米应用商店)、《小象优品》(版本4.8.4,华为应用市场)、《摩境商城》(版本2.9.4,应用宝)、《柚子快报》(版本2.2.2,vivo应用商店)。

6、提前要求用户打开非当前功能所需的可收集个人信息权限。涉及4款移动应用如下:

《聚优商城》(微信小程序)、《创维官方商城》(支付宝小程序)、《尚至然商城》(支付宝小程序)、《意尔康官方商城》(微信小程序)。

7、未向用户提供删除其个人信息的具体途径。涉及2款移动应用如下:

《京机数码手机商城》(支付宝小程序)、《正鑫金商城》(支付宝小程序)。

8、未向用户提供注销账户的途径和方式。涉及4款移动应用如下:

《小盒商城》(微信小程序)、《京机数码手机商城》(支付宝小程序)、《正鑫金商城》(支付宝小程序)、《HP惠普商城》(版本2.0.7,小米应用商店)。

9、注销账户验证身份过程中,所需提供的个人信息多于注册、使用等服务环节收集的个人信息类型。涉及1款移动应用如下:

《周大福官方商城旗舰店》(支付宝小程序)。

上期通报的公安部计算机信息系统安全产品质量监督检验中心检测发现的54款违法违规移动应用,经复测仍有8款存在问题,相关移动应用分发平台已予以下架。

(注:以上所列移动应用检测时间为2026年1月23日至2026年3月4日)

来源:国家网络安全通报中心

本次通报的37款违规移动应用中,小程序(支付宝/微信)占比近90%,电商商城类超四分之三,涉及多家知名品牌;金融分期类次之。小程序已非合规“法外之地”,品牌方运营的商城同样面临严格监管。

通报中的9类问题可归纳为四大核心违规原因:

一是隐私政策与告知义务缺失,包括未公开规则、未逐一列明目的、权限申请未同步告知等;

二是未经同意提前或超范围收集个人信息;

三是用户权利保障不足,缺乏删除/注销途径、提前索要非必要权限、注销门槛过高;

四是权限管理违规,提前申请非当前功能所需权限。

本次通报表明,监管重点已从头部App延伸至小程序商城,聚焦告知同意全流程。电商类小程序因涉及手机号、地址、订单等高敏数据,成为重点监管对象。企业须摒弃“小程序无需合规”的误区,将隐私保护嵌入开发运营全流程,否则将面临下架、信任危机及法律风险。

梆梆安全个人信息保护合规审计 

梆梆安全依托在移动安全领域超过十年的技术沉淀与实践积累,系统性构建了专业的合规审计框架,聚焦于合规审计业务,涵盖个人信息保护、未成年人信息保护、AI应用合规及人脸识别等多个专项领域,严格依据《个人信息保护法》《个人信息保护审计管理办法》等法律法规、国标行标及监管政策要求开展审计工作。

基于“自动化平台+专家能力”,覆盖26个审计域,贯穿信息收集、存储、使用、传输全流程,系统识别企业在制度、流程、技术及运营环境中的合规风险,形成“审计-整改-优化”的管理闭环,输出严谨的风险评估报告与可落地的持续改进方案,助力企业高效构建合规防线。

", + "pubDate": "Fri, 10 Apr 2026 15:13:22 +0800", + "author": "梆梆安全" + }, + { + "title": "Progress ShareFile曝新漏洞 可组合实现未认证远程代码执行", + "link": "https://www.4hou.com/posts/MXOm", + "description": "

最新发现,企业级安全文件传输解决方案 Progress ShareFile 存在两处漏洞,攻击者可将其组合利用,在无需身份认证的情况下从受影响环境中窃取文件。Progress ShareFile 是一款文档共享与协作产品,广泛应用于大中型企业。

此类文件传输平台历来是勒索软件团伙的重点攻击目标,此前 Clop 勒索组织就曾利用 Accellion FTA、SolarWinds Serv-U、Gladinet CentreStack、GoAnywhere MFT、MOVEit Transfer、Cleo 等产品中的漏洞实施大规模数据窃取攻击。 

watchTowr 的研究人员在 Progress ShareFile 5.x 分支的 Storage Zones Controller(SZC,存储区域控制器)组件中,发现了一处认证绕过漏洞(CVE-2026-2699)和一处远程代码执行漏洞(CVE-2026-2701)。

存储区域控制器(SZC)允许用户将数据存储在自有基础设施(本地或第三方云)或 Progress 官方系统中,从而让客户对数据拥有更强的控制权。

在 watchTowr 完成负责任漏洞披露后,Progress 已发布 ShareFile 5.12.4 版本,修复了上述问题。

攻击原理

watchTowr 研究人员在最新发布的报告中介绍,整个攻击链首先利用 CVE-2026-2699 认证绕过漏洞。由于系统对 HTTP 重定向处理不当,攻击者可直接访问 ShareFile 管理后台界面。 

获取权限后,攻击者可修改存储区域配置,包括文件存储路径、区域密钥及相关敏感安全参数。 

随后,攻击者可利用第二个漏洞 CVE-2026-2701,通过滥用文件上传与解压功能,将恶意 ASPX 网页后门放置在应用根目录,从而在服务器上实现远程代码执行。

研究人员指出,要成功利用漏洞,攻击者需要生成合法的 HMAC 签名,并提取和解密内部密钥。但在成功利用 CVE-2026-2699 之后,攻击者可设置或控制与密钥相关的配置项,上述步骤均可实现。

\"图片70.png\"/

漏洞利用链概述

影响范围与暴露情况

根据 watchTowr 的扫描结果,约有 3 万个存储区域控制器实例暴露在公网。ShadowServer 基金会监测到约 700 台可公网访问的 Progress ShareFile 实例,其中大部分位于美国和欧洲地区。 

watchTowr 于 2 月 6 日至 13 日期间发现这两处漏洞并上报给 Progress 公司,并于 2 月 18 日验证了完整攻击链可在 ShareFile 5.12.4 之前版本生效。厂商已于 3 月 10 日在 5.12.4 版本中推送安全更新。

截至本文发布,暂未发现野外在野利用行为。但由于漏洞细节已公开,极易吸引攻击者跟进利用,因此运行存在漏洞的 ShareFile 存储区域控制器版本的系统应立即安装补丁。

", + "pubDate": "Fri, 10 Apr 2026 12:00:00 +0800", + "author": "胡金鱼" + }, + { + "title": "嘶吼安全动态|八部门联合发布《 科技数据安全管理暂行规定》,4月10日起实施 黑客利用像素级SVG技巧隐藏信用卡窃密代码", + "link": "https://www.4hou.com/posts/8gPj", + "description": "

嘶吼安全动态|

【国内新闻】

八部门联合发布《科技数据安全管理暂行规定》,4月10日起实施

摘要:明确科技数据分类分级、算法备案、跨境管控等要求,强化科研与算力设施安全。

原文链接:http://m.toutiao.com/group/7626936382984700451/

腾讯QClaw V2上线“龙虾管家”,全流程防护AI操作安全

摘要:默认开启安全防护,覆盖Prompt、技能与脚本执行,实时拦截恶意指令、技能投毒、文件误删等风险。

原文链接:https://www.sohu.com/a/1007377777_115060?scm=10001.325_13-325_13.0.0-0-0-0-0.5_1334

新型底层木马NoVoice爆发,全球230万设备中招,格式化无法清除

摘要:Rootkit级恶意程序深度感染安卓与iOS,国内90万台设备中招,重置后仍复活,窃取隐私并远程控制。

原文链接:http://m.toutiao.com/group/7626734793590145587/

海光信息全球首发“机密 Token”技术,锁死大模型隐私数据防泄露

摘要:海光信息全球首发“机密Token”技术。为云端大模型提供硬件级数据隔离,防范成员推理、数据提取攻击,保护训练与交互隐私。

原文链接:https://www.36kr.com/newsflashes/3757881349063174

【国外新闻】

谷歌Gemma 4发布90分钟遭破解,安全模块被摘除,合规率降至6.3%

摘要:开源模型光速越狱,可指导伪造支票、盗版资源等违法活动,暴露开源AI安全防护短板。

原文链接:https://36kr.com/p/3759354864120324

黑客利用像素级SVG技巧隐藏信用卡窃密代码

摘要:最新发现,一个影响近100个使用Magento电子商务平台的在线商店的大型活动将信用卡盗取代码隐藏在一个像素大小的可缩放矢量图形(SVG)图像中。

原文链接:https://www.bleepingcomputer.com/news/security/hackers-use-pixel-large-svg-trick-to-hide-credit-card-stealer/

Flowise高危漏洞被大规模利用

摘要:开源AI平台Flowise被曝存在远程代码执行漏洞(CVE-2025-59528),攻击者可通过未校验配置执行任意代码,目前已被野外利用,约1.5万实例暴露风险,建议立即升级版本。

原文链接:https://www.techradar.com/pro/security/top-open-source-ai-platform-flowise-hit-by-maximum-level-security-issue

Android SDK漏洞威胁数千万钱包用户

摘要:微软披露第三方Android SDK存在Intent重定向漏洞,可绕过系统沙箱获取敏感数据,影响数千万加密钱包应用,可能导致凭证与财务信息泄露。

原文链接:https://www.microsoft.com/security/blog/2026/04/09/intent-redirection-vulnerability-third-party-sdk-android/

Apache ActiveMQ高危漏洞被AI挖出

摘要:研究人员借助AI发现ActiveMQ存在13年前引入的远程代码执行漏洞(CVE-2026-34197),再次证明AI已成为漏洞挖掘核心工具。

原文链接:https://www.helpnetsecurity.com/2026/04/09/apache-activemq-rce-vulnerability-cve-2026-34197-claude/

", + "pubDate": "Fri, 10 Apr 2026 11:59:00 +0800", + "author": "胡金鱼" + }, + { + "title": "新型CrystalRAT恶意软件新增远程控制、数据窃取等功能", + "link": "https://www.4hou.com/posts/LGMD", + "description": "

一款名为CrystalRAT的新型远程控制木马正在Telegram上以恶意软件即服务(MaaS)模式推广,提供远程控制、数据窃取、键盘记录与剪贴板劫持等核心功能。 

该恶意软件于今年1月现身,采用分级订阅模式运营。除Telegram频道外,运营者还在YouTube开设专门营销账号,通过功能演示视频进行推广。 

卡巴斯基研究人员在最近发布的报告中指出,这款木马与WebRAT(Salat窃密木马)高度相似,二者拥有相同的控制面板设计、均使用Go语言编写,且采用类似的机器人销售系统。 

CrystalX还内置了大量恶作剧功能,用于骚扰用户或干扰其正常工作。尽管带有“娱乐化”外观,该木马仍具备全面且强大的数据窃取能力。

\"图片68.png\"/

Telegram频道推广CrystaX RAT

CrystalX RAT功能详情

卡巴斯基表示,该恶意软件配备了易用的管理后台与自动化生成工具,支持多项自定义配置,包括地域限制、可执行文件定制,以及反调试、虚拟机检测、代理检测等反分析防护能力。 

生成的恶意载荷会经过zlib压缩,并使用ChaCha20对称流加密算法进行保护。 

木马通过WebSocket协议连接指挥控制服务器(C2),并上传主机信息用于设备画像与感染追踪。 

CrystalX的窃密模块目前处于临时禁用状态,官方称正在进行升级。该模块主要针对基于Chromium内核的浏览器(借助ChromeElevator工具)、Yandex浏览器与Opera浏览器,同时还会窃取Steam、Discord、Telegram等桌面应用中的数据。 

远程控制模块支持通过CMD执行命令、上传与下载文件、浏览文件系统,并通过内置VNC实现对主机的实时操控。

该木马还具备典型间谍软件行为,可调用麦克风录制音频、抓取屏幕画面。 

此外,CrystalX内置键盘记录器,可将按键记录实时回传至服务器;同时搭载剪贴板篡改工具,通过正则表达式识别钱包地址,并替换为攻击者指定的地址。

\"图片69.png\"/

CrystalX RAT控制面板中的远程桌面功能

附加“恶作剧”功能

在竞争激烈的恶意软件即服务市场中,CrystalX的独特之处在于其丰富的恶作剧功能。 

据分析,该木马可在受感染设备上执行以下操作:

·修改桌面壁纸

·旋转屏幕显示方向

·强制关机

·重映射鼠标按键

·禁用键盘、鼠标、显示器等输入输出设备

·弹出伪造系统通知

·自动移动鼠标光标

·隐藏桌面图标、任务栏、任务管理器、命令提示符等系统组件

·开启攻击者与受害者的聊天窗口

尽管上述功能无法直接提升黑产牟利效率,但能让该工具在同类产品中脱颖而出,吸引初级攻击者订阅使用。

研究人员认为,加入此类恶作剧功能的另一目的,是在后台窃取数据的同时干扰、迷惑受害者,降低其警觉性。为降低感染风险,用户应谨慎对待网络内容,避免从不信任或非官方来源下载软件与媒体文件。

", + "pubDate": "Thu, 09 Apr 2026 12:00:00 +0800", + "author": "胡金鱼" + }, + { + "title": "嘶吼安全动态|中央网信办召开全国网络法治工作会议 设备码钓鱼攻击暴增36倍,新型攻击工具在网上大肆扩散", + "link": "https://www.4hou.com/posts/6MLO", + "description": "

嘶吼安全动态

【国内新闻】

上海人工智能实验室发布“珠穆朗玛计划”,打造AI4S全国中枢

摘要:上海AI实验室重磅发布“AGI4S 珠穆朗玛计划”,同步推出DeepLink融合算力平台。该计划旨在通过全维度合作打破算力与数据壁垒,为高能物理、疾病诊断等关键科学领域提供自主受控的智能底座。

原文链接:https://www.news.cn/tech/20260408/fe5a61186ceb4582bdcf019c9abe0733/c.html

中央网信办召开全国网络法治工作会议,部署 “十五五” 依法治网重点任务

摘要:会议明确完善网络法律体系、强化App/SDK个人信息治理、加强网络司法惩戒等五大任务,推进依法治网全面落地。

原文链接:https://www.cac.gov.cn/2026-04/08/c_1777384058981550.htm

上海警方侦破AI黑稿工厂案,2人操控4000账号抹黑车企

摘要:嫌疑人用AI批量生成虚假黑稿造谣,涉案流量超千万;警方依法采取强制措施,严打AI网络水军与商业诋毁。

原文链接:https://baijiahao.baidu.com/s?id=1861958300234966362&wfr=spider&for=pc

手机弹出乱码别慌!4月9日多地出现平台安全校验码

摘要:系字节系平台Zlink跳转校验,含加密标识、时间戳与校验码,用于内部身份核验,不窃取隐私,非恶意链接,勿点不明来源同类代码。

原文链接:http://m.toutiao.com/group/7626562518172942858/

广电总局常态化清理 “AI 魔改” 视频,累计处置账号百余个

摘要:专项整治经典作品AI篡改乱象,已清理违规视频2.3万条、处置账号100余个,建立长效机制,维护文化内容安全与正版权益。

原文链接:http://m.toutiao.com/group/7626576879587197491/

【国外新闻】

Anthropic联合11家科技巨头启动Project Glasswing计划

摘要:Anthropic宣布与苹果、微软、英伟达、亚马逊等巨头合作,部署顶级模型Claude Mythos Preview用于防御。该模型专门用于扫描修复关键基础设施漏洞。

原文链接:https://www.moomoo.com/hans/news/post/67996915?level=1&data_ticket=1775613562170101

Citrix NetScaler漏洞被攻击者利用

摘要:Citrix NetScaler关键漏洞正在被黑客利用,可从设备内存中窃取会话数据,影响企业网络访问安全。该漏洞已被列入高优先级修复名单。

原文链接:https://www.govinfosecurity.com/breach-roundup-feds-confirm-major-hack-fbi-system-a-31329

设备码钓鱼攻击暴增36倍,新型攻击工具在网上大肆扩散

摘要:滥用OAuth 2.0设备授权流程实施劫持账号的设备码钓鱼攻击,今年已激增37倍以上。在这类攻击中,攻击者先向服务提供商发起设备授权请求并获取一串验证码,再以各种借口将该验证码发送给受害者。

原文链接:https://www.bleepingcomputer.com/news/security/device-code-phishing-attacks-surge-37x-as-new-kits-spread-online/

意大利乌菲兹美术馆遭网络攻击

摘要:意大利著名博物馆乌菲兹美术馆确认遭黑客攻击,部分档案数据被破坏。攻击者疑似试图勒索,但馆方表示未发现关键敏感信息泄露。

原文链接:https://www.techradar.com/pro/security/uffizi-galleries-confirms-it-was-hit-by-cyberattack-but-claims-nothing-was-stolen 

安全研究发现攻击自动化速度大幅提升

摘要:最新安全分析显示,攻击者借助自动化工具甚至AI,可在数十秒内完成入侵并横向移动,网络攻击速度显著提升,防御窗口被压缩。

原文链接:https://www.acilearning.com/blog/the-biggest-cybersecurity-breaches-of-2026-so-far-and-the-training-that-could-have-prevented-them/

", + "pubDate": "Thu, 09 Apr 2026 11:59:00 +0800", + "author": "胡金鱼" + }, + { + "title": "“龙虾”来袭,绿盟科技三位一体防御体系,让网络告别 “裸奔” 风险", + "link": "https://www.4hou.com/posts/5MJY", + "description": "

2026年开年,OpenClaw(俗称“龙虾”)这款本地优先的 AI Agent 自动化平台以燎原之势席卷全球,凭借自然语言指令实现 PC 全功能自动化的能力,成为开发者追捧的工具。其支持15+通信平台、多模型调用、自主任务执行等特性,让效率提升的同时,也埋下了巨大的安全隐患。工信部于2026年3月8日正式发布openclaw安全风险预警通报。这款看似便捷的工具,正成为企业网络安全的“特洛伊木马”,筑牢其安全防护防线已成为企业的迫切需求。

一、OpenClaw 五大核心安全痛点,直击企业网络软肋

OpenClaw 的安全风险并非单一漏洞引发的局部问题,而是贯穿系统架构、权限模型、供应链和数据流转的系统性危机,五大核心痛点直指企业网络安全的薄弱环节,带来全方位的威胁。

痛点一:高危漏洞频发,远程代码执行(RCE)风险一触即发

OpenClaw 从2025年11月发布到首个高危 CVE 漏洞出现仅耗时2个月,目前已有9个已知CVE 被收录,CISA 已将其纳入漏洞跟踪通信。其中 CVE-2026-25253 跨站 WebSocket 劫持漏洞 CVSS 评分达 8.8,可实现一键远程代码执行,即便绑定localhost的实例也无法幸免;2026年3月发现的 ClawJacked 漏洞,能让攻击者零交互完全接管 Agent,安全债务问题极为突出。

痛点二:超级权限集合,违反最小权限原则酿大祸

传统应用遵循“最小权限原则”按需分配权限,而 OpenClaw 默认获取全磁盘访问、终端 / Shell 操作、浏览器控制等超级权限,还会集合所有集成服务的 OAuth 令牌并明文存储。一旦本地出现漏洞,攻击者将借助凭证级联效应,从一个突破口迅速蔓延,导致用户全部数字身份失守。

痛点三:供应链投毒肆虐,恶意Skills暗藏窃密危机

OpenClaw 的插件生态 ClawHub 拥有 10,700+ Skills,但安全审查机制形同虚设,目前已发现 820 + 恶意 Skills。这些恶意 Skill 由黑产组织协调发布,伪装成正常生产力工具,可窃取 SSH 密钥、API 令牌、加密货币钱包等敏感信息,还会分发 Atomic Stealer 恶意软件,且因拥有 Agent 全部系统权限,比传统 npm/PyPI 供应链投毒的危害更大。

痛点四:数据泄露事件频发,凭证明文存储埋重大隐患

数据泄露事件频发,凭证明文存储埋重大隐患2026 年 1 月 31 日的 某企业数据库泄露事件为企业敲响警钟,因 AI 生成代码未经安全审计,导致 475 万条记录泄露,其中 150 万 API 令牌以明文存储。OpenClaw 本身存在凭证明文存储、数据自由流向 LLM 和第三方的问题,用户私密交互内容随时可能成为攻击者的情报来源,引发严重的数据泄露。

痛点五:自主决策易失控,缺乏紧急制动机制致损失不可逆

当 OpenClaw 具备自主决策和系统操作权限后,“失控”从科幻概念变为现实。有用户遭遇 Agent 批量删除邮件的情况,因系统无“一键停止”功能,最终只能通过物理断电终止操作。且邮件删除、文件修改等操作执行后无法撤回,其自主决策的不可控性,会给企业带来难以挽回的损失。

二、OpenClaw安全防护方案:

面对OpenClaw的复合型安全威胁,单一防护手段已力不从心。绿盟科技结合多个安全产品,构建"检测-防护-治理"三位一体的立体防御体系,为企业筑牢AI Agent安全防线。

1、全流量探针UTS精准发现"影子资产",实现全网可视

针对OpenClaw隐蔽部署、难以发现的痛点,绿盟UTS流量探针实现泛场景、多维度的检测覆盖,构建三重检测维度精准锁定OpenClaw:

Web控制台流量检测(HTTP + WebSocket):精准识别响应报文中的特征串,捕获用户访问OpenClaw管理界面的流量;深度解析WebSocket请求报文,匹配id等唯一标识,发现OpenClaw控制端与服务端的实时通信行为。

mDNS广播流量检测(启动阶段识别):OpenClaw启动时会自动通过Bonjour服务广播自身信息,UTS可精准捕获这类"自曝"流量,识别组播地址和端口、服务类型识别,主机名及包含版本、实例ID的TXT记录,甚至定位到具体部署端口,实现"早发现、早处置"。

全生命周期覆盖:从OpenClaw启动广播、Web控制台访问到实时控制通信,UTS可实现全流程检测,无论其是否对外提供服务,都能有效发现,帮助企业消除"影子资产",满足等保、数据安全法等合规要求。

\"图片36.png\"/

2、漏洞扫描RSAS实现openclaw资产和漏洞闭环管理

面对隐匿 OpenClaw 资产难发现,OpenClaw 高危漏洞易漏检,风险资产定位难等痛点,  漏洞扫描RSAS通过深度资产扫描、以及专业AI组件漏洞模板,实现OpenClaw资产和漏洞闭环管理。

精准资产发现与深度探测。针对OpenClaw默认端口不对外暴露的特性,通过登录扫描方式,自动匹配AI组件漏洞模板,实现对目标资产的精准识别与深度漏洞探测。

全面漏洞覆盖与高危聚焦。可检测访问控制错误、命令/参数注入、数据伪造、路径遍历、跨站脚本/请求伪造等多类型漏洞,帮助用户全面排查安全风险。

资产&风险可视化展示。提供直观的资产信息与漏洞数据可视化界面,并支持漏洞知识库查询,便于安全团队快速定位问题根源,高效响应。

\"图片37.png\"/

3、WEB应用防火墙WAF支持openclaw专项防护规则,阻断漏洞利用和恶意访问

针对OpenClaw高危漏洞与网络攻击,绿盟WAF构建多层次防护体系:

网络层防护:WAF提供HTTP访问控制与站点精细化配置,通过源IP白名单、地理区域封禁、确保OpenClaw Gateway仅对授权网络可见。

应用层防护:结合语义引擎+规则引擎,实时匹配已知攻击特征,深度解析语义语法,防止WEB漏洞利用攻击;

支持OpenClaw专项防护规则

·内容检测:拦截prompt中包含system.run、cat /etc、export API_KEY等高危指令。

·API接口调用:限制/api/v1/agents/exec、/skills/install等高危接口的调用频率与权限。

·文件防护:禁止file_path参数包含../、/root、/etc等敏感路径。

\"图片38.png\"/

4、入侵防护系统IPS支持OpenClaw精准检测和阻断

IPS 通过三重维度检测及SSL解密,实现 OpenClaw 精准检测和阻断:

Web连接检测:通过流量检测设备监控 18789、19890 端口异常连接,识别 WebSocket 恶意通信特征并阻断外联。

OpenClaw工具特征识别:针对HTTP访问,响应中检测含OpenClaw Gateway、clawd、WebUI等关键词

威胁情报检测:升级即可支持,更新威胁情报库并加强边界防护,及时发现并处置可疑行

SSL解密后检测:无论内网、外网流量,均可卸载后透明检测

\"图片39.png\"/

5、AI安全一体机结合防火墙实现AI智能体的精准识别与全面管控

精准识别:AI安全一体机内置AI智能体发现能力,可主动扫描内网环境,精确识别哪些主机部署了OpenClaw等AI智能体。

灵活管控:根据企业策略,可对非法部署的OpenClaw进行网络隔离,对合法部署的OpenClaw进行全程行为跟踪。

纵深防御:防火墙对OpenClaw的会话访问进行实时分析,识别恶意URL、入侵威胁、病毒等风险,确保每一次访问都安全可控。

\"图片40.png\"/

三、企业通用OpenClaw安全防护措施

针对 OpenClaw 的五大核心安全痛点,企业可以通过以下安全措施,缓解安全风险。

防护一:防患于未然,减少高危漏洞风险

针对 OpenClaw 各类高危漏洞及 RCE 风险,可以采用以下安全措施:

1、openclaw升级至最新版本(v2026.2.25及v2026.3.1等版本);

2、定期漏洞扫描;

防护二:最小权限管控,安全隔离运行

针对 OpenClaw 超级权限带来的风险,可以采用以下安全措施:

1、需按照最小权限原则限制 OpenClaw 的访问范围

2、将OpenClaw部署在专用 VM / 容器中实现网络隔离;

3、关闭非必要端口;绑定 localhost(127.0.0.1:18789)

4、启用强认证机制,设置复杂密码并配置速率限制,替代原有简单密码模式,从源头杜绝超级权限滥用。

防护三:审计Skills 白名单,避免供应链投毒

针对 ClawHub 恶意 Skills肆虐的供应链投毒问题,可以采用以下安全措施:

1、审计 Skills 白名单、禁止安装未审计插件;企业内部需建立 Skills 白名单审计机制,仅允许安装经过安全审查的合法 Skills,对所有拟安装的 Skills进行全流程安全检测,排查是否存在窃密、植入恶意程序等行为;

2、定期审计已安装 Skills的运行状态,及时发现并清理恶意插件,落实供应链安全的“组件白名单+审查”要求。

防护四:凭证加密存储,数据防泄露

针对 OpenClaw 凭证明文存储、数据泄露频发的问题,可以采用以下安全措施:

1、凭证加密存储

2、数据防泄漏

防护五:针对自主决策失控痛点,隔离运行+人工管控实现操作可控

针对 OpenClaw 自主决策不可控、缺乏紧急制动的问题,可以采用以下安全措施:

1、将OpenClaw 的执行操作置于沙箱隔离环境中,避免其破坏性操作直接影响核心业务系统。

2、人工审批关键操作。建立关键操作人工审批工作流,落实 “先预览再确认” 原则,对文件批量删除、系统命令执行等高危操作,必须经人工预览确认后才可执行。禁止全自动驾驶模式,让 Agent 操作全程可控。

3、设置决策边界约束,对 Agent 的高危操作进行实时监控和预警,一旦发现异常的自主执行行为,及时发出告警并触发限流机制。

四、 OpenClaw安全防护从被动响应转向主动免疫

绿盟科技结合多个安全产品,构建"检测-防护-治理"三位一体的立体防御体系,为企业筑牢AI Agent安全防线,不仅能精准对应化解 OpenClaw 的五大核心安全痛点,更能实现安全风险的系统性收敛,让企业对 OpenClaw 的安全防护从被动响应转向主动免疫。

OpenClaw 的爆红,标志着 AI Agent 从概念验证走向大众应用,技术创新的步伐不可阻挡,但绝不能以牺牲安全为代价。AI Agent 打破了传统安全“边界清晰、权限静态、数据流动可控”的基本假设,企业的安全范式也需从“边界防护”全面转向“零信任+持续验证”。依托 UTS 精准发现、WAF 全面防护、AI 安全一体机深度治理的三位一体方案,企业既能享受 OpenClaw 带来的效率提升,又能守住安全底线,在 AI Agent 时代重建网络安全边界,让技术创新在安全的轨道上稳步前行。

", + "pubDate": "Wed, 08 Apr 2026 16:38:22 +0800", "author": "企业资讯" }, { - "title": "警惕 Apache Camel 漏洞 攻击者借此能注入任意标头", - "link": "https://www.4hou.com/posts/GA7K", - "description": "

\"image.png\"/

Apache Camel 中近期披露的一个安全漏洞(编号为 CVE - 2025 - 27636),已引发整个网络安全社区的高度警惕。该漏洞允许攻击者向 Camel Exec 组件配置注入任意标头,进而有可能实现远程代码执行(RCE)。

受此漏洞影响的版本众多,涵盖 3.10.0 至 3.22.3、4.8.0 至 4.8.4 以及 4.10.0 至 4.10.1 等多个版本。此次漏洞充分凸显了 Apache Camel 中配置错误的标头过滤所带来的巨大危险。Apache Camel 作为一款广泛应用的集成框架,其主要作用是连接各类系统和应用程序。

安全专家强烈敦促正在使用易受攻击版本的组织,立即对其系统进行修补,以此降低风险。根据 Github 的报告,该漏洞的根源在于 Camel 框架对标头的处理出现错误,尤其是在标头命名大小写发生变化的情况下。利用这一漏洞,攻击者能够绕过过滤器,覆盖 Camel 配置中指定的静态命令。

概念验证(PoC)

一个存在漏洞的示例应用程序,能够演示如何利用 Camel Exec 组件实现远程代码执行。以下是存在漏洞的代码示例:

\"image.png\"/

在此场景中,应用程序对外公开了一个执行 “whoami” 命令的 HTTP 端点。虽然该命令在代码中是静态定义的,但攻击者可以通过特制的标头对其进行覆盖。

漏洞利用细节

该漏洞的工作原理是向易受攻击的端点发送恶意标头。例如:

$ curl “http://localhost:80/vulnerable” –header “CAmelExecCommandExecutable: ls”

此命令会覆盖默认的执行行为并显示目录内容。同样,攻击者可以使用标头 CamelExecCommandArgs 传递参数:

$ curl “http://localhost:80/vulnerable” –header “CAmelExecCommandExecutable:ping” –header “CAmelExecCommandArgs:-c 2 8.8.8.8”

该漏洞源于对标头命名约定的不当处理。Camel 原本旨在过滤掉诸如 CamelExecCommandExecutable 之类的标头,但大小写变体 CAmelExecCommandExecutable 却绕过了保护机制,从而允许任意命令执行。当使用常规标头,而不利用区分大小写的缺陷时,应用程序将按预期运行,执行静态命令:

$ curl “http://localhost:80/vulnerable” –header “CamelExecCommandExecutable: ls”

影响与缓解

该漏洞所产生的后果极其严重,因为攻击者能够在易受攻击的系统上执行任意命令,这可能导致敏感数据泄露、实现横向移动,甚至造成服务中断。Apache 已发布公告,承认了该漏洞的存在,并正在积极努力为受影响的版本发布补丁。为了防御 CVE - 2025 - 27636,建议用户采取以下措施:

· 升级 Apache Camel:在 Apache 发布修补版本后,及时应用更新。

· 限制端点访问:将易受攻击的端点暴露范围限制在受信任的网络内。

· 监控危害指标(IoC):在日志中留意异常的 HTTP 标头或命令执行情况。

随着攻击者越来越多地将目标对准 Apache Camel 等集成框架,各组织必须高度重视安全更新,并强化访问控制,以最大程度降低风险。此漏洞清晰地警示我们,即便是细微的缺陷,也可能给现代 IT 基础设施带来毁灭性的后果。

", - "pubDate": "Wed, 12 Mar 2025 10:36:45 +0800", - "author": "山卡拉" - }, - { - "title": "315倒计时!2025年哪些领域将成维权重点", - "link": "https://www.4hou.com/posts/Dx76", - "description": "

“315”已经成为保护消费者权益的符号和标志,对市场规范起到示范作用。微热点研究院基于2023年、2024年同期315晚会传播数据分析及近期舆论传播态势,结合近期消费及投诉热点,分析315期间维权领域热点,以供参考。

315晚会影响力逐年提高

历史同期数据显示,315晚会影响力呈明显增长态势,全网信息量、媒体报道量均有较大增长。统计时段内,315晚会的全网信息量由2023年的13.64万条增至2024年的33.16万条,增幅达143.1%,侧面说明315晚会引发广泛关注和讨论。

\"image.png\"/

对比历史数据,参与媒体数量与媒体发文量也呈现出较大的增长趋势。统计时段内媒体报道量由2023年的9950条,增至2024年的4.77万条,增长了379.63%,表明媒体对315晚会及曝光内容更加关注。参与媒体数量也由2023年的1971家上升到2024年的3714家,侧面说明媒体参与更加广泛。

\"image.png\"/

历史同期敏感信息占比呈现较大增长趋势。2023年315晚会相关敏感信息占比80.96%;2024年315晚会相关敏感信息占比88.66%,增长了近8个百分点。梳理相关敏感信息可见,2024年315晚会曝光的淀粉肠使用鸡骨泥、梅菜扣肉使用糟头肉等案例,由于贴近生活,切中了预制菜等争议热点,引发了公众强烈的不满。

\"image.png\"/\"image.png\"/

2024年消费投诉重点分析

中消协《2024年全国消协组织受理投诉情况分析》显示,2024年全国消协组织共受理消费者投诉1761886件,比上年增长32.62%。售后服务、合同、质量问题占投诉性质的前三位。

与2023年相比,安全、虚假宣传、质量问题三项投诉比重上升较大。

\"image.png\"/

根据2024年商品大类投诉数据,家用电子电器类、日用商品类、服装鞋帽类、食品类、交通工具类投诉量居前五位。与2023年相比,服装鞋帽类、食品类、家用电子电器类投诉量比重有所上升,日用商品类、交通工具类、房屋及建材类投诉量比重有所下降。

\"image.png\"/

根据2024年服务大类投诉数据,生活及社会服务类、互联网服务类、教育培训服务类、电信服务类、销售服务类居于前五位。与2023年相比,电信服务类投诉量比重上升较大,生活及社会服务类投诉量比重下降明显。

\"image.png\"/

《2024年全国消协组织受理投诉情况分析》显示,2024年,消费者投诉热点涉及多行业、多场景,从商家落实国补政策不规范,到金融消费隐性收费,再到预付式消费纠纷、电信服务乱象等等,反映出部分经营者在商品质量、营销和服务等方面存在着问题。

\"image.png\"/

综合中消协2024年的消费警示,涉及燃气器具、电动自行车、儿童安全坐垫等商品,以及电子秤不当使用、职业闭店行为、进口水果造假等易对消费者权益造成侵害的行为。

315期间易被聚焦的行业问题

中国消费者协会确定2025年全国消协组织消费维权年主题为“共筑满意消费”。可以预见315晚会将继续通过深度调查、数据分析和技术手段,以更直观的方式聚焦社会热点,围绕消费者关注,揭露行业乱象,积极维护消费者权益。

  • 食品安全是焦点将持续关注

食品安全具有“民生底线、社会焦点、产业保障、健康基础”的特点,直接关乎每个人的健康,是每年315的关注重点。依据每年被曝光餐饮及食品问题特点,多围绕热点消费品类,行业存在执行标准或监管盲区,重点关注原料、添加剂的使用和生产工艺、流程规范、安全,曝光能起到引导消费、净化市场的作用。此外,一段时间内食品加工、运输过程中的问题被曝出,连锁餐饮及食品企业被曝出使用过期食材、虚假宣传等问题,也可能在315期间被挖掘出更多同类问题。

  • 安全防护产品质量被关注

安全防护产品质量不过关,危害消费者健康,易造成‌人身伤害及‌财产损失,或成为今年315期间持续关注的内容,如安全帽不安全、防火玻璃不防火及灭火器偷工减料等涉及个人及企业生产的商品质量问题,涉及安全防护产品的‌个人防护装备、‌消防安全产品、‌家庭安全产品等多个品类。此外,近年来‌智能安全设备普及量增高,应关注可能存在的安全风险及实际使用效果。‌

  • 热点消费领域的灰色地带

互联网+经济领域。涉及互联网及直播经济的潜规则也将是关注的重点,流量造假、虚假宣传等问题频频暴露。游走在监管边缘的AI直播、换脸带货,对AI数字人直播进行规范成为相关部门的工作重点。新兴科技领域的风险同样不容忽视,尤其是AI技术的滥用和智能设备的隐私泄露问题,产品的安全性等问题已成为社会关注重点。

文旅消费领域。文旅经济作为新的经济增长点,文娱演出、旅游景点“火爆”“出圈”现象多发,黄牛票务、虚假票务平台等各类问题,景区通过套票等方式,捆绑销售高价项目现象,低价团强制消费侵害消费者权益现象多发,及新型娱乐项目、“网红”项目的安全性问题,都可能成为文旅消费整治重点。

健康医美领域。保健品、医美、养生机构作为问题高发领域,是315期间的曝光重点。出现问题主要集中在医美、养生机构未获批的材料、违规使用的原料、无资质操作,保健品的虚假营销等。

新能源交通领域。随着新能源汽车市场的迅速发展,电池等方面安全隐患逐渐显露,以及充电桩质量不达标、回收、保险等配套问题也被消费者日益关注。此外,交通出行方面的投诉问题,如付费选座等付费项目的合理性,可能在315期间被强调。

  • “一老一小”是被重点关注群体

315期间,涉及少年儿童和老年群体的商品和服务也是重点。涉及少年儿童的用品和学习、健康辅助等商品,存在安全、性能等问题或危害少年儿童身心成长。侵害老年群体权益的行为,多存在于科技产品及相关服务、涉及健康的虚假营销,及套取老年人服务费等行为。

  • 危害消费者权益的热点现象

“职业闭店人”兴起威胁消费安全。因法律漏洞和监管缺失,“职业闭店人”问题得不到有效解决,甚至形成黑色产业链,严重破坏市场秩序,产生消费者预付款无法使用、无法退回等消费安全问题。

商家落实国补政策不规范的行为有待治理。国家补贴政策让利于民、促进消费的作用显现,但有商家和平台通过涨价“套取”补贴、使用国补后不保价、强制取消订单致消费者国补资格丧失等不当行为损害了消费者权益,背离了政策初衷。

315舆情风险应对分析

相关部门应高度重视315维护消费者利益和规范市场的示范作用,同时避免因辖区重点扶持企业、行业龙头企业、地方支柱企业被曝光,对当地经济发展、政府形象产生影响。一是加大对辖区重点企业的舆论监测,关注全网范围内产品状况、企业口碑,督促企业将舆论危机在苗头阶段解决,帮扶企业及时止损良性发展。二是面对辖区企业大面积负面舆论不遮掩逃避,主动回应,第一时间依监管责任表明态度,避免出现企业不能平息舆论后,站在企业立场再次回应,引发直接针对政府方面“被资本绑架”“地方保护”的质疑。三是无论企业问题还是政府部门监管缺失,回应都需真诚,区分生产、指导、监督、管理方面责任。四是迅速形成相应方案,对地区产业、政府形象进行修复。除关注消协重点关注的行业及问题外,315期间突发的消费者维权行为,也会因时间节点引发媒体或舆论关注,迅速发酵,应关注各种形式的现场维权或群体性消费维权。

消费者维权意识不断提升,多渠道的维权方式已是常态,企业要持续提升企业的社会责任感,建立负面口碑收集和危机应对机制,避免大规模负面舆论引发危机,造成不可挽回的影响。一是企业在日常管理中,以消费者口碑为导向,积极解决问题,把握苗头和倾向,将服务走在问题发生之前,减少网络负面信息,减少因负面舆论造成企业不良印象。二是做好信息监测,日常关注市场监管、消费者权益保护等部门官方网站、政务平台等投诉信息及阶段工作重点,对照本企业产品、服务等情况,以此对企业内部查漏补缺,不触碰相关部门“红线”。关注专业投诉平台及各大交互平台,收集投诉意见及相关服务、产品体验等建议。

来源:微热点

", - "pubDate": "Tue, 11 Mar 2025 16:22:14 +0800", + "title": "当“小龙虾”潜入内网,如何解决“影子AI”的隐匿危机", + "link": "https://www.4hou.com/posts/42E7", + "description": "

近期,OpenClaw(俗称“小龙虾”)这一开源AI智能体因其强大的自主执行能力而迅速爆火,成为众多企业与开发者的效率神器。然而,就在热度持续攀升之际,国家及行业权威机构接连发布重磅预警:这个看似能干的“AI助手”,正因其模糊的信任边界和脆弱的默认安全配置,成为潜伏在企业内网中的高危风险源。

从已披露的CVE-2026-25253、CVE-2026-25157到最新的多个供应链投毒事件,多个已知漏洞正威胁着从个人隐私到关键基础设施的安全防线。面对来势汹汹的“龙虾”漏洞潮,传统“只扫不治”的扫描模式已然失效。企业需要的不是一份简单的风险清单,而是一套可管、可控、可追溯的漏洞治理方案。

一、治理之困:为何你的网络成了“坏虾”的养殖场?

在与众多企业的交流中,我们听到了两种典型的声音:

  “影子AI”的恐慌:“员工偷偷部署了OpenClaw,我连它们在哪里都不知道,更别提管控了。这些主机端口暴露在外,无异于给黑客留了后门。”

  “合法使用”的盲区:“业务部门正式部署了小龙虾,但我根本看不清它做了哪些外部访问,是否存在被恶意指令劫持的风险?”

更棘手的是,OpenClaw的流量通常加密传输、端口极易修改,传统基于端口的识别方式形同虚设。当攻击者利用代码注入、路径遍历或权限绕过漏洞发起攻击时,企业若仅能“发现”而无法“处置”,就只能眼睁睁看着AI助手沦为攻击者的“肉鸡”和内网跳板。

二、破局之道:从“漏洞扫描”到“漏洞治理”的跨越

面对OpenClaw带来的新型挑战,绿盟科技依托网络安全漏洞扫描系统与威胁与漏洞管理平台联合打造了针对性的专项治理方案。区别于传统工具只输出报告,该方案致力于构建“快速识别-智能分派-闭环处置-合规报告”的全流程体系,真正实现对“龙虾”漏洞的精准管控。

1. 主动资产发现,让“影子”无所遁形

依托绿盟漏扫对 OpenClaw 的资产精准探测能力,突破应用版本信息屏蔽、默认端口不暴露的探测壁垒,实现企业内资产全面发现、精准识别。借助平台统一纳管能力,清晰呈现资产分布、版本状态、关联责任人等核心信息,让企业彻底掌握 OpenClaw 资产底数,从根源上消除隐匿安全盲区,为后续漏洞防护、风险管控提供明确且完整的资产抓手。

2. 灵活适配场景,精准定位“龙虾”漏洞

针对不同用户的安全管理策略(例如严格禁止OpenClaw端口暴露、允许在内网有限使用但需强化管控等等),漏扫提供两种互补的检查模式:

·远程扫描排查:面向可能暴露至公网的实例,快速探测未授权访问、命令注入等高危漏洞,及时识别暴露面风险,帮助安全人员掌握哪些“龙虾”已“浮出水面”。

·登录扫描检查:针对内网或需认证的实例,通过模拟用户登录行为,深入检测资产中是否安装了OpenClaw、精准识别版本信息、全面检测各类漏洞,实现“资产-版本-漏洞”三位一体的深度排查。

此外,对于允许合规安装OpenClaw的场景,系统还提供安全基线检查功能,基于安全基线对实例的运行权限、访问控制、隔离措施等进行合规性评估,及时发现权限过高、配置不当等问题,从源头加固安全防线。

3. 内置专项情报,让风险“看得深”

绿盟威胁与漏洞管理平台已预置“小龙虾漏洞专项知识库”。该库不仅覆盖了漏扫针对AI的全量高中危漏洞(如CVE-2026-28468等),更结合了绿盟威胁情报中心对恶意Skills插件(供应链投毒)的深度行为分析。

4. 智能分派与闭环,让处置“不落空”

支持创建 “小龙虾漏洞专属处置规则”,可标记漏洞优先级为 “高”,基于预设的资产-责任人映射关系,通过邮件、系统消息或工单系统将漏洞直接派发给责任人,灵活设置24小时响应、72小时修复的SLA时限。责任人在专属的“小龙虾漏洞清单”中,可直接在线反馈修复进展、上传佐证材料。修复完成后,平台自动触发复测任务,验证通过即自动闭环,形成“发现-修复-复测”的管理闭环,杜绝假修复或漏修复。

5. 输出治理报告,让合规“有据可依”

安全工作的最终价值需要被看见。针对金融、能源等关键行业严格的合规审计需求,平台可自动生成“小龙虾资产风险报告”,包含风险总览(影响资产规模、修复率)、部门治理排名、逾期未修复明细的管理型视图。这不仅为内部考核提供了依据,更在监管检查面前,为企业提供了一份可自证清白的合规凭证。 

结语

两会期间多次强调“发展与安全并重”,这不仅是国家战略,更是企业数字化转型的底线 。OpenClaw的普及是AI技术发展的必然,但绝不能以牺牲安全为代价换取效率。

绿盟科技漏洞治理方案,正是要在AI的高速公路上为企业装上“安全护栏”。我们不只做发现风险的“报警器”,更要做闭环处置的“控制中枢”,帮助您的企业在享受“小龙虾”带来的智能红利时,也能守好数据资产的每一道防线,让AI应用在安全轨道上平稳运行。

", + "pubDate": "Wed, 08 Apr 2026 16:31:06 +0800", "author": "企业资讯" }, { - "title": "中央网信办发布2025年“清朗”系列专项行动整治重点", - "link": "https://www.4hou.com/posts/Bv7Q", - "description": "

近年来,中央网信办持续部署开展“清朗”系列专项行动,集中时间、集中力量打击网上各类乱象问题,从严处置违规平台和账号,取得积极成效,形成有力震慑。2025年,“清朗”系列专项行动将进一步巩固提升治理成效,聚焦人民群众反映强烈的突出问题,在破解难点瓶颈方面下功夫,强化源头管理和基础管理;在治理创新方面下功夫,针对性细化每个专项打法举措;在维护网民权益方面下功夫,严厉打击各类侵权违法行为,营造更加清朗有序的网络环境。

重点整治任务主要包括:一是整治春节网络环境,集中打击挑起极端对立、炮制不实信息、宣扬低俗恶俗、鼓吹不良文化、违法活动引流等问题。二是整治“自媒体”发布不实信息,包括发布干扰舆论、误导公众内容,不做信息标注、内容以假乱真问题,缺失资质、提供伪专业信息等问题,规范重点领域信息内容传播。三是整治短视频领域恶意营销,打击虚假摆拍、虚假人设、虚假营销、炒作争议性话题等问题,强化信息来源标注、虚构和演绎标签标注。四是整治AI技术滥用乱象,突出AI技术管理和信息内容管理,强化生成合成内容标识,打击借AI技术生成发布虚假信息、实施网络水军行为等问题,规范AI类应用网络生态。五是整治涉企网络“黑嘴”,处置集纳负面信息,造谣抹黑企业和企业家,从事虚假不实测评,诋毁产品服务质量等问题,进一步优化营商网络环境。六是整治暑期未成年人网络环境,强化涉未成年人不良内容治理,净化儿童智能设备、未成年人模式、未成年人专区等重点环节信息内容,防范线上线下交织风险。七是整治网络直播打赏乱象,打击利用高额返现吸引打赏、情感伪装诱导打赏、低俗内容刺激打赏、未成年人打赏等突出问题,加强直播打赏功能管理。八是整治恶意挑动负面情绪,包括借热点事件等挑起群体极端对立情绪,通过夸大炒作不实信息和负面话题,宣扬恐慌焦虑情绪,借血腥暴力画面挑起网络戾气等问题,严肃查处违规营销号、网络水军和MCN机构。

中央网信办相关部门负责人表示,将有序推进“清朗”系列专项行动各项任务,同时,也会根据实际情况需要增加重点整治内容。将进一步压实各方主体责任,持续净化信息内容、规范功能服务,确保整治工作取得实效,推动网络生态持续向好。

来源:网信中国

", - "pubDate": "Tue, 11 Mar 2025 16:14:40 +0800", + "title": "绿盟NF防火墙:筑牢OpenClaw安全防线,构筑AI时代安全基石", + "link": "https://www.4hou.com/posts/33BA", + "description": "

2026年2月至3月,国家工业和信息化部网络安全威胁和漏洞信息共享平台(NVDB)连续两次发布关于OpenClaw(俗称“龙虾”)的安全预警,明确指出其“信任边界模糊”“配置缺陷易引发网络攻击、信息泄露”,并首次提出针对AI智能体应用的 “六要六不要” 安全建议。紧接着,国家安全部也发布《“龙虾”安全养殖手册》,警示主机被接管、数据被窃取、供应链投毒等原生风险。

官方密集发声的背后,是一组触目惊心的数据:

·258个已披露漏洞,其中近期发现的82个漏洞里就有12个超危以及21个高危;

·46.9万个公网暴露实例,27.2%的实例存在高危漏洞,面临被直接接管风险;

·22% 受监控企业存在员工私自部署的“影子AI”;

·超820个恶意插件潜伏在ClawHub,伪装成实用工具窃取API密钥、执行任意命令。

面对这一新型AI工具带来的系统性风险,企业急需一套既能精准发现、又能深度检测、还能精确阻断的全流程防护方案。绿盟NF防火墙可全面覆盖OpenClaw全生命周期风险,助力企业在AI时代的安全防护。

一、全面发现:让每一只“影子龙虾”现形

员工私自搭建未经审批的OpenClaw往往成为内网中的“隐形资产”。绿盟NF防火墙以多维检测能力,让内网中任何未经授权的OpenClaw实例无处藏身:

应用识别精准锁定

·内置深度应用识别引擎,精准标记OpenClaw通信流量,无论其是否使用非标准端口。

\"图片31.png\"/

多协议深度检测

·HTTP/WebSocket/mDNS全协议栈覆盖:从明文管理界面到加密WebSocket隧道,从启动广播到后续实时控制,让OpenClaw无处遁形。

\"图片32.png\"/

联动主动扫描

·可联动清风卫AI安全一体机对内网IP范围进行主动扫描探测,主动发现的OpenClaw实例,发现后可一键封堵,不给未报备的OpenClaw藏身之处。

\"图片33.png\"/

二、绿盟NF防火墙:让公网暴露无所遁形

由于OpenClaw前身(Clawdbot/Moltbot)及早期版本默认监听0.0.0.0:18789,大量用户在不知情的情况下将实例暴露公网。国家信息安全漏洞共享平台(以下简称:CNVD)数据显示,截至2026年3月,公网可探测实例累计超46.9万个,其中27.2%存在高危漏洞,攻击者可借此直接访问控制界面、窃取明文存储的API密钥和聊天记录,甚至以OpenClaw为跳板攻击内网,导致数据泄露、系统被控等严重安全事件。

\"图片34.png\"/

某披露暴露在公网OpenClaw资产的网站

绿盟NF防火墙可通过配置实现实时监测进出公网的流量,一旦发现外网IP试图访问内网主机的18789端口,或内网主机向外网发起OpenClaw相关通信,立即记录日志并告警。管理员可通过日志快速溯源,对暴露资产一键阻断或拉黑,及时消除风险。

三、深度检测:多维能力组合,层层过滤风险

发现只是第一步,真正的考验在于识别潜伏的威胁。CNVD报告指出,ClawHub中恶意插件占比高达8%~36%,攻击者通过伪装成“钱包追踪器”“视频摘要”等工具,诱导用户执行恶意命令。

绿盟NF防火墙提供灵活可组合的安全能力,包括入侵防护、Web应用防护、防病毒、漏洞防护、上网行为管理、敏感数据防泄露等,为OpenClaw资产构建纵深防御。

\"图片35.png\"/

这些能力按需组合,既能对单个OpenClaw实例的行为进行安检,也能在网络层构建统一防线,让任何恶意行为都无处遁形。

四、精确阻断:可信放行、异常阻断

管控不等于一刀切。对于企业合规使用的OpenClaw,绿盟NF防火墙支持精细化的策略管控:

资产报备与可信放行

·管理员可将通过审批的OpenClaw实例加入白名单,正常放行其业务流量

黑名单一键封禁

·对于未报备、来源不明的OpenClaw实例,可直接加入黑名单,阻断其所有外联,强制“隔离养殖”

结语:从“养虾”到“护虾”,绿盟NF防火墙构筑全流程防线

当OpenClaw这类新型AI工具成为企业数字化转型的“双刃剑”,绿盟NF防火墙以业界领先的应用识别库和持续更新的IPS特征规则为核心,配合主动扫描与多维检测能力,构建起全面发现—深度检测—精确阻断的全流程防护体系。

让合规的“龙虾”安心工作,让违规的“影子”无处藏身——这正是绿盟NF防火墙为企业带来的核心价值之一。

数据来源:

1. https://big5.cctv.com/gate/big5/news.cctv.com/2026/03/13/ARTIEOruVARjjvgc18Uw0m5F260313.shtml

2. https://mp.weixin.qq.com/s/CUO_SW9GNjwcKWiwKGa6xA?mpshare=1&scene=1&srcid=0313KYT9eWVqkWzYBRyHzsOr&sharer_shareinfo=7c376052746dbf9dfd63cfa2ef4ced38&sharer_shareinfo_first=c23ba00e40dc2860981c39b1cdaed680&version=5.0.2.99762&platform=mac&from=industrynews#rd

3. https://www.nvdb.org.cn/publicAnnouncement/2031684972835299329

4. https://mp.weixin.qq.com/s/VOSy-kWs6zuNIBn40dWGWQ

", + "pubDate": "Wed, 08 Apr 2026 16:26:08 +0800", "author": "企业资讯" }, { - "title": "2025年网络安全十大发展趋势发布", - "link": "https://www.4hou.com/posts/Ar79", - "description": "

近日,中国计算机学会(CCF)计算机安全专委会和上海市计算机学会网络专委会联合发起2025年网络安全十大趋势预测活动。来自国家网络安全主管部门、高校、科研院所、国有企业及民营企业界的专家学者,投票评选出了2025年网络安全十大发展趋势。

趋势1:人工智能广泛赋能网络安全

随着人工智能(AI)技术的飞速发展,其已逐渐渗透到网络安全的各个层面。AI在网络安全中的应用,如通过机器学习算法自动检测异常行为、预测潜在威胁,以及利用自然语言处理技术分析安全日志,能显著提升安全检测的效率与准确性。例如,AI可以实时分析海量网络数据,快速识别出恶意软件或钓鱼攻击,减少人工干预的时间延迟。据Gartner预测,到2025年,超过60%的企业将采用AI增强的安全解决方案来增强防御能力。此外,AI的持续学习能力使其能够不断适应新的威胁模式,为网络安全提供动态、智能的防护屏障,成为企业安全防护体系中不可或缺的一部分。

趋势2:数据安全法规的进一步细化

随着《数据安全法》《个人信息保护法》等法律法规的相继出台,中国乃至全球对数据安全的重视程度达到了前所未有的高度。2025年,预计数据安全法规将更加细化,不仅限于数据的收集、存储、使用等基本环节,还将深入到数据分类分级、跨境流动规则、数据主体权利保护等多个维度。例如,针对不同敏感级别的数据,将制定具体的保护措施和访问权限控制;对于跨境数据传输,将建立更加严格的审批和监管机制。这些细化的法规将为企业提供更明确的合规指导,促进数据的安全流动与价值挖掘,同时保护用户隐私,为数字经济的健康发展奠定坚实的法律基础。

趋势3:隐私保护技术的快速发展

随着用户对个人隐私保护意识的日益增强,隐私保护技术成为网络安全领域的重要研究方向。2025年,预计差分隐私、联邦学习、可信执行环境等隐私保护技术将得到广泛应用。差分隐私技术通过在数据集中添加噪声来保护个体隐私,同时保证数据分析的准确性;联邦学习则允许数据在本地进行处理,只传输模型更新而非原始数据,有效避免了数据泄露的风险;可信执行环境(TEE)是一种安全的计算环境,确保敏感数据和代码的安全性和隐私性。这些技术的应用,将使得企业在处理和分析用户数据时,能够确保用户隐私信息的安全,增强用户信任,促进数据的合法合规利用。同时,隐私保护技术的发展也将推动相关法律法规的完善,形成技术与法律双重保障下的隐私保护体系。

趋势4:区块链技术在网络安全中的应用

区块链技术作为一种新兴的技术,具有去中心化、不可篡改等特点,在网络安全领域具有潜在的应用价值。例如,利用区块链技术可以构建分布式身份认证系统,确保用户身份的真实性和不可伪造性;还可以利用区块链技术实现数据的加密存储和传输,防止数据被恶意篡改或窃取。近年来,一些网络安全企业已经开始探索区块链技术在网络安全中的应用,并取得了一定的成果。2025年,预计区块链技术将在网络安全中得到更多应用。企业应关注这一趋势,积极探索区块链技术在网络安全领域的创新应用,提升自身的网络安全防护能力。

趋势5:网络安全技术自主可控成为趋势

在全球化背景下,网络安全技术自主可控对于维护国家网络安全具有重要意义。近年来,一些国家在网络安全技术上过度依赖他国,导致在关键时刻遭受网络攻击时难以有效应对。因此,推动网络安全技术的自主可控发展显得尤为重要。2025年,预计各国将加大自主研发力度,推动网络安全技术的自主可控发展。政府会加大对网络安全技术研发的投入和支持力度;企业积极参与网络安全技术研发和创新活动;同时,加强产学研合作,推动网络安全技术的成果转化和应用。

趋势6:供应链安全成为焦点

近年来,供应链攻击事件频发,如黎巴嫩BP机爆炸事件对全球供应链系统的潜在影响深远。在依赖全球供应链的同时,必须加强供应链管理,确保生产过程中的每个环节都在可控范围内。随着全球化进程的加深和供应链的日益复杂化,任何一个环节的漏洞都可能成为整个供应链安全的薄弱点。2025年,企业将更加重视供应链安全管理,通过实施供应商风险管理、加强供应链透明度、采用区块链技术追踪产品流向等措施,确保供应链的稳定性和安全性。

趋势7:物联网安全成为新挑战

随着物联网技术的飞速发展,物联网设备已经渗透到我们生活的方方面面,从智能家居到智慧城市,无所不在。据统计,到2025年,全球物联网设备连接数量预计将超过250亿个。这一庞大的设备数量,加之物联网设备在安全性设计上的不足,使得物联网安全成为了一个新的挑战。例如,智能门锁被黑客破解、智能摄像头被用于窃取隐私等事件频发,揭示了物联网安全问题的严峻性。2025年,物联网安全将受到前所未有的关注,企业需要投入更多资源,加强物联网设备的安全管理,包括加密通信、访问控制、定期更新固件等措施,以防止设备被恶意控制或利用进行大规模的网络攻击。

趋势8:工业控制系统安全升级

工业控制系统(ICS)作为国家关键基础设施的“大脑”,其安全性直接关系到国家的经济安全和社会稳定。近年来,针对工业控制系统的网络攻击事件频发,如2023年美国宾夕法尼亚州阿利基帕市水务局也因为暴露的Unitronics可编程逻辑控制器(PLC)而被黑客组织攻击,导致相关系统下线并被迫改为手动操作。2025年,工业控制系统安全升级成为必然趋势。这包括加强安全防护体系的建设,如部署防火墙、入侵检测系统;加强漏洞管理,及时发现并修复系统漏洞;以及建立完善的应急响应机制,确保在发生安全事件时能够迅速响应,最小化损失。通过这些措施,可以显著提升工业控制系统的安全防护能力,确保其稳定运行。

趋势9:量子安全技术的探索应用

量子计算技术的快速发展,对传统加密方法构成了潜在威胁。传统的加密算法,如RSA、椭圆曲线加密等,在量子计算机面前将变得脆弱不堪。2025年,预计量子安全技术将开始探索应用,包括量子密钥分发(QKD)、量子随机数生成等,为网络安全提供新的保障手段。量子密钥分发利用量子力学的特性,确保密钥传输过程中的绝对安全;量子随机数生成则能产生真正不可预测的随机数,增强加密系统的安全性。虽然量子安全技术目前仍处于实验和初步应用阶段,但随着技术的不断成熟,未来有望成为保障网络安全的重要基石。

趋势10:网络安全技术的自动化与智能化运维

自动化与智能化运维能够提高网络安全管理的效率和准确性。当前,网络安全管理面临着海量数据和复杂环境的挑战,传统的人工运维方式已难以满足需求。2025年,预计网络安全技术将实现更加广泛的自动化与智能化运维。通过引入AI、机器学习等技术手段,可以实现对网络安全事件的自动监测、分析和响应。自动化运维能够大大提高安全管理的效率,减少人为错误和漏洞。智能化运维则能够通过对数据的深度分析和挖掘,发现潜在的安全威胁和风险点,为安全管理提供更加精准的决策支持。通过自动化与智能化运维,网络安全管理将更加高效、准确,为企业的网络安全保驾护航。

来源:华声在线

", - "pubDate": "Tue, 11 Mar 2025 16:12:09 +0800", + "title": "绿盟科技大模型安全白皮书发布:聚焦智能体风险与防护,护您安全“养虾”", + "link": "https://www.4hou.com/posts/2XzM", + "description": "

3月20日,由中国信息安全测评中心指导,绿盟科技联合中国科学院信息工程研究所编写的《面向智能体时代的大模型安全——Agentic Security一体化安全范式重构与工程实践》白皮书在北京重磅发布,本次发布会汇聚国内人工智能安全领域专家,围绕智能体时代大模型安全的发展态势、风险挑战、技术体系与产品落地等核心议题展开深度研讨,为行业破解智能体安全治理难题、构建一体化安全防护体系提供权威指引与实践路径。

绿盟科技作为网络安全领域的领先企业,此次发布白皮书既是对智能体时代大模型安全技术研究的成果凝练,更是面向产业实践的安全能力落地,为人工智能产业安全、健康、规模化发展筑牢屏障。

一、能力升级,把准智能体全维度安全脉

中国信息安全测评中心研究员李维杰博士围绕“人工智能发展态势”“人工智能安全风险”展开讨论。他认为,人工智能发展迅猛,从“能说会道”的大模型到“能跑会跳”的具身机器人再到“能干会拼”的智能体,都给人类社会带来广泛的进步,但若应对不当,行业可能再度陷入发展“寒冬”。因此,亟需破解规模化应用落地、安全风险治理等难题。

针对人工智能安全风险,李维杰博士认为部分国家将安全风险测评作为应对人工智能安全风险“主抓手”,在标准研制、平台建设、科研攻关等方面持续推进,形成的经验值得借鉴。针对智能体安全,李维杰认为首先需回答好“系统行为是否可控”这一关键问题,建立覆盖智能体全生命周期的安全能力,才能更好促进产业发展。2025年12月,中国信息安全测评中心联合国内力量,研究人工智能安全风险和测评技术,发布白皮书《人工智能安全风险测评(2025年)》,支撑人工智能安全风险测评发展。此次,中国信息安全测评中心作为指导单位,参与白皮书《面向智能体时代的大模型安全——Agentic Security一体化安全范式重构与工程实践》发布,也是希望增进与行业联系,共同推进人工智能安全风险测评工作。

\"图片26.png\"/

随着大语言模型及其智能体在产业与社会中的广泛应用,其安全与隐私风险日益凸显。中国科学院信息工程研究所陈恺主任围绕大模型生命周期中的安全挑战,重点讨论了:模型供应链安全,可能引入后门、污染数据、脆弱性等风险;大模型越狱与防御机制,介绍一种利用大模型内部状态变化的越狱防御机制;大模型智能体安全及其隐私泄露风险,例如推理过程中的用户隐私暴露,以及相关的缓解方法等。

\"图片27.png\"/

二、“养虾”踩坑?焊牢智能体全流程安全门

OpenClaw的普及让“人人都能玩智能体”,然而,其安全能力的结构性缺失,让每一次便捷操作都可能踩雷。绿盟科技天枢实验室主任研究员顾杜娟博士带来《“龙虾”热潮下的智能体安全:安全技术体系与产品落地路径》的主题分享,围绕企业在智能体时代面临的安全新挑战展开,系统说明安全边界如何从传统的大模型内容安全,进一步演进到面向Agent系统、工具调用、执行链路与运行环境的整体安全治理。 

顾博士将以OpenClaw为例,分析其带来的新型攻击面扩张、系统失控与行为滥用等核心风险,结合OWASP等主流框架,从全生命周期视角梳理Agent风险分布与根因机制。在此基础上,她重点介绍了企业如何构建覆盖资产识别、漏洞发现、Skill风险识别、行为监测、攻击链追踪和持续运营的一体化安全能力,并结合已检出漏洞、风险分类与监测实践展示安全效果。 

本次发布的《面向智能体时代的大模型安全——Agentic Security一体化安全范式重构与工程实践》技术白皮书,提出可供企业参考的落地路径与实践指南,为企业开展智能体安全建设、风险治理和运营闭环提供方法参考。

\"图片28.png\"/

当“龙虾”(OpenClaw)等智能体系统成为主流,传统终端防护与安全分支模式正面临三重挑战:版本分裂导致补丁滞后、私有分支维护成本高企、以及供应链依赖带来的长期风险。为此,绿盟科技AI安全产品总监李斌详述了绿盟AI-UTM“清风卫”智能体防护方案。 

其核心理念是“无侵入、全围栏、管行为”。区别于业界终端方案或开源分支维护模式,“清风卫”AI-UTM通过透明代理与网关监听实现无侵入式对接,彻底规避版本分裂与供应链风险。在能力上,其构建输入/输出、检索、搜索、执行四道安全围栏,防御提示词注入与敏感数据泄露;同时通过智能体资产发现与行为管控,精准监测非法外联、横向越权及Skill投毒等系统级攻击。

绿盟“清风卫”AI-UTM,从“单点防护”升级为“全流程闭环”,让智能体应用更安全、更可控。

\"图片29.png\"/

\"图片30.png\"/

三、圆桌直击:专家支招安全养虾防护思路

问题一:当前,各级政企都纷纷拥抱多智能体,广大普通用户也在最近“养虾”热潮中跃跃欲试,请问我们在使用过程中应该注意哪些安全风险,如何做好防护与检测呢?

中国信息安全测评中心研究员李维杰博士:智能体作为先进的工具能够提高工作效率、降低社会成本,具备诸多优势,我们应该持积极的态度。但在使用过程中要提高警惕,首先,需要明确智能体的权限红线,为其完成指令及任务划定边界,尤其对于重要资产的防护;其次,要使用通过安全合格检测的产品或服务,确保资源可靠;第三,需要联合社会各界形成合力,做好风险研究,筑牢安全底线。

问题二:在“龙虾”这种先进智能体技术下,您有什么见解和想法?对于接下来的技术研究方向,我们应该如何发力呢?

中国科学院信息工程研究所陈恺主任:我们认识到,“龙虾”(OpenClaw)是目前能力很强的一种应用程序,在执行过程中,它与大模型通过语言的指令进行交互,就会涉及到系统安全和权限管理,比如大模型遭到投毒也会影响“龙虾”的使用效果。此外,以前的命令是固化的,而“龙虾”是可以进行自主编程的非固化工具,这与之前人工智能发展相较而言是很大的不同,因此,我们研究要往前看,对当下面临的安全问题也要尤为警醒。 

问题三:随着“龙虾”等智能体系统出现,传统围栏似乎难以覆盖“龙虾”真实面临权限滥用、插件风险以及算力失控等系统性问题。绿盟规划面向“龙虾”安全产品,其核心能力与业界有什么不同?

绿盟科技AI安全产品总监李斌:针对“龙虾”(OpenClaw)类智能体的系统风险,绿盟AI-UTM的核心差异在于“无侵入架构+全流程闭环”的双重深度防御。与通常的终端方案或维护私有安全分支不同,我们通过透明代理与网关监听实现无侵入式对接,避免了版本分裂、补丁滞后的供应链风险。真正做到不仅防“对话”,更能管行动与连接,构建覆盖“事前-事中-事后”的闭环防护体系。

当前,AI安全已迈入全生命周期、全链路管控的新阶段,需锚定安全性、可靠性、可控性、公平性为目标构建防护体系。绿盟科技“Agentic Security一体化安全范式”指引下的AI安全全体系产品加持,将有效遏制智能体的“野蛮生长”,让AI在安全轨道上赋能新质生产力发展。

", + "pubDate": "Wed, 08 Apr 2026 16:15:11 +0800", "author": "企业资讯" }, { - "title": "2025年全国两会即将召开:委员拟提案建言AI虚假信息治理", - "link": "https://www.4hou.com/posts/zANq", - "description": "

来自新疆的全国政协委员拟为治理“AI生成不实信息”提出建言。

2025年全国两会即将召开,全国政协委员、新疆新的社会阶层人士联谊会副会长海尼扎提·托呼提拟向大会提交“关于加强AI生成不实信息治理”等提案,建议社交媒体平台等互联网平台加强内容审核机制,建立专门的AI生成内容审核团队,对平台内容执行严格监管。

随着人工智能技术的迅猛发展,AI生成不实信息的问题愈发严重,成为信息传播领域面临的一大新挑战。“这些不实信息通常具有迷惑性强、刺激度高、传播力广等特点,不仅侵蚀了信息的真实性,还扰乱了社会秩序与公众认知。”前述提案举例说,在甘肃首例AI虚假信息案中,洪某弟利用ChatGPT软件编造虚假新闻牟利;四川网警公布的多起如“山体滑坡导致8人遇难”、“喜德县发生地震”等AI造谣典型案例,均造成了不良社会影响。此外,近期西藏自治区发生地震灾害后,网络上出现了多起不当利用AI技术生成灾害场景的情况,抖音平台严肃处置了23652条涉及地震的不实信息。还有青海某网民为博取眼球,将“小男孩被埋图”与日喀则地震相关的信息进行关联拼凑、移花接木,混淆视听、误导公众,导致谣言信息的传播扩散。

“这些事件引起了公众对AI技术滥用和网络虚假信息治理问题的高度关注。舆论认为,网络虚假信息的泛滥严重侵犯了公众的知情权和选择权,破坏了市场竞争的公正性。”提案认为,由AI生成的虚假信息还可能侵犯知识产权、动摇版权规则,涉嫌侵犯个人隐私、泄露身份信息,甚至存在滥用的风险。这些情况凸显了加强网络信息监管、提升公众媒介素养的紧迫性和重要性。

前述提案为此建议:第一,加强法律法规建设,完善法律体系,强化现有法律执行,明确责任归属。第二,强化技术监管措施,建立检测和识别技术体系,严格要求内容标识。第三,提升平台责任意识,采用技术手段加强平台内容的审核机制。

具体而言,提案建议进一步细化《网络安全法》、《数据安全法》、《个人信息保护法》等现有法律法规在AI领域的具体适用条款,确保这些法律能够有效覆盖AI生成不实信息的各个环节,明确AI生成内容的标识、审核、责任划分等具体要求,为AI内容生成企业提供清晰的操作指引。并且应考虑到不同类型AI应用所面临的不同行业特点,以便制定差异化政策。同时,加大对AI生成不实信息行为的惩处力度,提高违法成本。对于故意利用AI技术生成和传播不实信息的行为,应依法予以严厉处罚,包括但不限于罚款、吊销营业执照等,从而促使企业自觉遵守相关规定。

在技术监管上,提案建议通过运用尖端技术手段,对AI生成的内容进行实时监测和筛查,可以开发和应用AI生成内容检测算法,从而提升对虚假信息的辨识能力,及时发现并处理不实信息。同时,严格要求网络信息服务提供者遵循相关强制性国家标准进行内容标识,确保用户能够明确识别内容是否由AI生成。

此外,还应该督促社交媒体平台、新闻网站等互联网平台加强内容审核机制,建立专门的AI生成内容审核团队,对平台内容执行严格监管,及时删除和处理不实信息。

“这不仅涉及对现有内容的审查,还包括对新上传内容的实时监控,确保平台内容的质量和真实性。”前述提案表示,鼓励平台采用内容过滤、关键词屏蔽等技术手段,自动识别并拦截AI生成的不实信息,加强对用户发布内容的审核力度,有效降低不实信息的传播范围,并对未能履行监管职责的平台,依法进行处罚,以此作为警示,促使平台自觉履行监管责任,维护网络环境的健康和秩序。

来源:澎湃新闻

", - "pubDate": "Tue, 11 Mar 2025 15:36:29 +0800", + "title": "高校邮件安全怎么抓?北工大这份“可复制范本”值得一看", + "link": "https://www.4hou.com/posts/ZgqQ", + "description": "

“近年来,钓鱼邮件的威胁愈发严峻,教育行业首当其冲。校园邮箱用户多、人员流动性强、钓鱼手段层出不穷——高校已成为黑客的重点攻击目标。” 在近期的邮件安全管理员直播分享中,北京工业大学的霍老师一语道破当下高校邮件安全的严峻现状。

作为北京市属重点、国家“211工程”和“双一流”建设高校,北京工业大学(以下简称:北工大)的邮件系统承载着教学科研、校内办公等核心业务,自然也直面着这一教育行业的共性安全困境。2025年《中国企业邮箱安全研究报告》显示,教育领域钓鱼邮件占比高达14.1%,位列行业第二。奖学金通知、学术会议邀请、论文审稿……这些师生们习以为常的邮件,正成为钓鱼攻击最危险的伪装。

\"图片1.png\"/

一、三大安全痛点:直击高校邮件安全“共性难题”

在北工大,邮件系统几乎与每位师生的学习、工作紧密相连,在带来便利的同时,也让邮件系统成为安全风险的高发区。回顾部署专业邮件安全网关之前的日子,学校曾面临三道棘手的“关卡”:

第一关:国产化合规成为“必答题”

随着教育部门对安全合规和国产化替代的要求不断提升,学校必须部署国产化独立邮件安全网关。国产化合规不再是“选择题”而是“必答题”。

第二关:新型钓鱼邮件防不胜防

此前的学校防护体系主要依赖本地特征库加CAC(内容分析通道)进行过滤,但新型钓鱼邮件早已进化——不再将恶意内容直接放入正文文本,而是藏进图片、附件或二维码中,传统方式根本无从查起。此外,一旦校内账号被盗,利用校内信任关系发送的钓鱼邮件极易在师生中快速扩散,稍不留意就中招。

第三关:运维管理成为“老大难”

原有邮件系统的投递日志单次最多仅能查询 7 天的记录,当需要追溯邮件投递轨迹、排查安全问题时,数据支撑不足,常常陷入“想查查不到”的困境。

这些并非北工大独有的难题,而是许多高校在邮件安全管理中共同面对的“硬骨头”。要真正破局,靠小修小补显然不够。

二、破解校园安全痛点:CACTER做对了什么?

针对以上难题,CACTER为北工大部署了国产化独立CACTER邮件安全网关,从四个维度实现了有效突破:

1.合规落地,为信创改造铺平道路。网关采用国产化独立部署模式,支持海光、鲲鹏、飞腾等国产芯片,适配电科金仓等国产数据库,可实现全栈信创、自主可控。学校不用再为“能不能过审”担心,信创改造的路也走得更踏实。

\"图片1(3).png\"/

2. 精准防护,让钓鱼邮件无处遁形。奖学金通知、学术会议邀请……这些师生每天都可能收到的邮件,曾经是最危险的“伪装者”。现在,网关具备图片OCR识别、二维码解析、附件深度检测等能力,针对新型钓鱼邮件整体拦截率更是高达99.8%,误判率低于0.02%。

·学校高危邮件直接隔离,不进入师生收件箱

·普通垃圾分类存放,不影响日常使用体验

·异常外发智能阻断,快速遏制风险扩散

\"图片2.png\"/

3. 稳定运行,保障校园邮路畅通。高校邮件系统一旦中断,教学通知、科研沟通、办公流程都会受影响。CACTER采用双机高可用部署模式,主备节点实时同步,即使单点发生故障,系统也能自动无缝切换,师生完全感知不到。同时,每日定时备份配置,即便设备出现问题也能快速恢复,把数据丢失风险降到最低。这套“双保险”,即使意外发生,邮件收发依然稳稳当当。

4. 便捷运维,让管理从“救火”走向“掌控”。网关支持长时间跨度的日志检索,邮件投递、拦截记录等随时可查,问题排查精准高效。再加上死信处理、邮件召回、多维统计等功能,运维团队不再被动“救火”,而是做到更精细化管控,大幅减轻运维负担。

\"微信图片_20260331172631_1030_4.jpg\"/

三、北工大安全实践:从“解决一个问题”到“提供一套范本”

霍老师对这套方案的效果给出了直观的评价:“部署CACTER网关后,直观地看到大量钓鱼邮件已被拦截,避免进入用户邮箱被误点中招。自此,邮件安全已不再是‘有无防护’的问题,而是未来‘防护是否精准、响应是否及时’的能力较量。CACTER网关很好地满足了在精准防护和高效运维两方面的核心需求。”

从北工大的实践来看,一套真正适配高校场景的邮件安全方案,绝非止步于基础的垃圾邮件拦截,更要同时满足三大核心要求:对信创合规的完整契合、对钓鱼邮件的精准识别、对运维管理的便捷支持

CACTER网关在这几个维度的落地效果,为众多正面临邮件安全困扰的高校,提供了一个经过验证的参考路径。

随着教育数字化加速,高校邮件安全将迎来新挑战。CACTER已服务超过150所院校,包括北大、同济等高校,积淀了丰富的高校邮件安全实战经验。未来,CACTER将持续深耕高校场景,以更适配的安全产品,守护高等教育的信息传递通道,为高等教育高质量发展筑牢邮件安全屏障。

", + "pubDate": "Wed, 08 Apr 2026 14:59:43 +0800", + "author": "CACTER邮件安全" + }, + { + "title": "Claude Code源码泄露遭利用,攻击者借GitHub散播窃密木马", + "link": "https://www.4hou.com/posts/J1GK", + "description": "

威胁组织正利用近期Claude Code源代码泄露事件,通过伪造GitHub仓库向用户分发Vidar窃密木马。

Claude Code是人工智能公司Anthropic推出的一款终端版AI代理工具,可直接在终端中执行编程任务,作为自主代理实现系统直接交互、大语言模型API调用管理、MCP集成以及持久化记忆等功能。 

据悉,Anthropic在发布npm包时因疏忽,意外嵌入了一个大小为59.8MB的JavaScript源码映射文件,导致这款新工具的完整客户端源代码被公开泄露。

此次泄露包含1906个文件、共计51.3万行未做混淆处理的TypeScript代码,暴露了该AI代理的调度逻辑、权限与执行机制、隐藏功能、编译细节以及多项安全相关核心实现。

泄露代码很快被大量用户下载并上传至GitHub,出现数千次复刻分叉。

Zscaler在一份报告中指出,此次源码泄露为威胁组织创造了可乘之机,使其能够向搜索Claude Code泄露内容的用户投放Vidar窃密软件。 

研究人员发现,一个由用户“idbzoomh”发布的恶意GitHub仓库上传了伪造的泄露版本,并宣称该版本“解锁企业级功能”且无使用限制。

\"图片62.png\"/

GitHub代码库传播恶意软件

为吸引更多流量,该仓库针对搜索引擎做了优化,在谷歌搜索“leaked Claude Code”等关键词时会出现在前列位置。

\"图片63.png\"/

恶意GitHub代码库的搜索结果

据研究人员分析,用户下载到一个7-Zip压缩包,其中包含一个名为ClaudeCode_x64.exe的Rust语言可执行程序。该程序运行后,会释放投放通用窃密木马Vidar,同时安装GhostSocks网络流量代理工具。 

Zscaler监测发现,该恶意压缩包会频繁更新,未来不排除被加入其他恶意载荷的可能。 

研究人员还发现了第二个代码完全相同的GitHub仓库,但该仓库中的“下载ZIP”按钮在分析期间处于失效状态。Zscaler判断,该仓库由同一威胁组织运营,很可能用于测试不同的投放传播策略。

\"图片64.png\"/

第二个与同一威胁者关联的GitHub代码库

尽管GitHub平台具备安全防护机制,仍频繁被攻击者用于以各种伪装方式分发恶意载荷。

在2025年末的多轮攻击活动中,威胁组织就曾针对经验不足的研究人员或黑客,在仓库中谎称存放最新披露漏洞的概念验证(PoC)利用代码。

从以往案例来看,攻击者往往会迅速借热点公开事件发动机会主义攻击,借机入侵目标设备。

", + "pubDate": "Wed, 08 Apr 2026 12:00:00 +0800", + "author": "胡金鱼" + }, + { + "title": "嘶吼安全动态|国家安全部提醒:“囤词元暴富” 背后,暗藏间谍窃取数据陷阱 苹果Mac威胁50.32%来自木马,盗窃用户隐私成主要目的", + "link": "https://www.4hou.com/posts/YZoA", + "description": "

嘶吼安全动态

【国内新闻】

国家安全部提醒:“囤词元暴富” 背后,暗藏间谍窃取数据陷阱

摘要:国家安全部提醒,随着词元(Token)的爆火,一些不法分子开始打起了词元的主意,伺机布设各种陷阱。不法分子可通过跨站脚本攻击(XSS)、公共Wi-Fi嗅探等方式,窃取、截获未加密的词元。一旦词元泄露,攻击者可直接盗用用户身份,获取隐私信息、登录账号、篡改数据,甚至实施诈骗、转账等操作,直接威胁个人财产安全。

原文链接:https://finance.sina.com.cn/7x24/2026-04-07/doc-inhtrivn0610932.shtml

CNNVD通报OpenClaw多个安全漏洞

摘要:根据国家信息安全漏洞库统计,自2026年3月10日-2026年4月2日,共采集OpenClaw漏洞155个,其中超危漏洞11个、高危漏洞53个,中危漏洞80个、低危漏洞11个,包含了访问控制错误、代码问题、路径遍历等多个漏洞类型。

原文链接:https://finance.sina.com.cn/jjxw/2026-04-07/doc-inhtrqcm7319735.shtml

应对AI技术赋能背后风险挑战 我国人工智能安全标准体系加速构建

摘要:近日,全国网络安全标准化技术委员会正式组建“人工智能安全标准工作组”(WG9),标志着我国人工智能安全标准体系建设进入系统性推进阶段。

原文链接:https://www.news.cn/tech/20260407/a9b90ab84933492587fd3a783e3423c8/c.html

北京警方提醒苹果手机用户需警惕:近一月已接警12起,涉案金额超26万元

摘要:据警方介绍,最近一个月,利用苹果iMessage功能诱导转账诈骗警情高发,全市已接报相关警情12件,涉案金额26万余元。警方建议关闭iMessage邮件接收、开启双重验证。

原文链接:http://baijiahao.baidu.com/s?id=1861679367819464394&wfr=spider&for=pc

【国外新闻】

苹果Mac威胁50.32%来自木马,盗窃用户隐私成主要目的

摘要:4月7日消息,根据Jamf最新发布2026年安全报告显示,在苹果Mac平台,木马恶意软件已完全主导Mac威胁领域,占所有恶意软件检测量的50.32%,相比2024年的16.61% 实现爆发式增长。

原文链接:https://k.sina.com.cn/article_5952915720_162d2490806703n2g2.html

Anthropic发布顶级安全大模型Claude Mythos,仅限科技巨头定向测试

摘要:4月7日,Claude母公司Anthropic正式发布Claude Mythos Preview——官方定义为史上最强通用安全大模型,同时明确:永久不向公众、普通用户、普通企业开放,仅小范围定向授权给顶级安全防御伙伴。

原文链接:http://m.toutiao.com/group/7626163177306194432/

4小时自主攻破FreeBSD服务器,AI正式改写网安攻防逻辑

摘要:安全研究员利用AI大模型构建的自主智能体,在无需人工干预的情况下,仅用4小时便扫描发现了开源操作系统FreeBSD的零日漏洞并完成完整攻击链构建,成功夺取root 权限,标志着AI进攻能力的质变。

原文链接:https://tech.ifeng.com/c/8s8JyywAQ3E

Linux打印系统CUPS爆出高危漏洞,实现“零点击”提权至Root

摘要:Linux 通用打印服务CUPS存在严重漏洞链,攻击者无需任何凭证,即可通过发送恶意打印任务远程执行代码并获取root权限,完全控制受影响系统。

原文链接:https://finance.sina.com.cn/tech/digi/2026-04-08/doc-inhttxke2910543.shtml

勒索软件Medusa实现“24小时全流程攻击”,微软预警零日威胁

摘要:微软威胁情报中心监测到,Medusa勒索软件团伙已具备利用零日漏洞并在24小时内完成从入侵到加密全流程的能力。攻击者高度依赖建立新用户帐户维持存取权,防御方响应窗口被极度压缩。

原文链接:https://www.informationsecurity.com.tw/article/article_detail.aspx?aid=12816

", + "pubDate": "Wed, 08 Apr 2026 11:59:00 +0800", + "author": "胡金鱼" + }, + { + "title": "以 CaaS 2.0 重构数字信任,领航后量子时代——亚数TrustAsia 2026春季战略发布会圆满举行", + "link": "https://www.4hou.com/posts/XPmv", + "description": "

这是一个数字身份呈指数级爆炸的时代。当人们还在谈论移动互联网的红利消减,关于后量子时代(PQC)的威胁、TLS/SSL 证书、代码签名证书有效期的持续缩短、以及机器身份规模化管理的挑战,已如潮水般涌至企业 CIO 们的案头。

在回溯亚数TrustAsia 过去十四年的演进历程中,亚数TrustAsiaCEO 翟新元告诉我们,在行业剧烈变革来临之前,企业真正的确定性,来自于主动融入技术演进的浪潮,通过持续的产品深度迭代,在不确定中锚定增长机会。 

2026 年 3 月 31 日,2026 亚数TrustAsia 春季战略发布会于上海圆满举行。会上,亚数TrustAsia 正式发布 CaaS 2.0 产品服务体系,并同步推出公益普惠项目 LiteSSL,以产品创新、技术沉淀与社会责任协同推进,开启数字信任领域的新一轮增长曲线。 

这不仅是一次产品层面的跨代升级,更展示了一家数字信任领军企业在面对“后量子时代”与“全自动化”双重挤压下的前瞻判断与战略定力。

\"图片22.png\"/

一、以自动化为锚:CaaS 体系破解 TLS/SSL 证书管理难题 

数字安全的演进始终与市场刚需同频。2025 年 4 月,CA/B 论坛通过 SC-081v3 提案,正式奏响了 TLS/SSL 证书有效期缩短至 47 天的序曲。 

“‘47 天’意味着什么?意味着再也无法通过人工来使用和管理 SSL 证书了。”亚数TrustAsia CEO 翟新元在发布会上指出,“证书自动化不再是选项,而是企业必须具备的能力。” 

作为行业先行者,亚数TrustAsia 于 2025 年 8 月前瞻性地提出 CaaS(Certificate as a Service,证书即服务) 模式,并构建起以 TrustAsia CertCloud为核心,TrustAsia 数字证书、CLM(证书生命周期管理)、MySSL 证书发现&监控、CTLog 有机组成的自动化体系。

CaaS 1.0 围绕证书全生命周期,初步打通了计划发现、快速签发、自动部署、持续监测与续期等关键环节,形成闭环,帮助企业快速应对证书有效期持续缩短带来的运维压力。 

2026 年 TrustAsia CaaS 证书订阅服务模式正式全面落地。通过“订阅制 + 自动化”双轮驱动,企业可按 1–6 年周期订阅证书服务,系统在服务期内自动完成签发、续期与部署,为用户提供了平滑迁移的整体过渡方案,用户体验和业务安全双重保障。

在会上亚数TrustAsia 解决方案架构师陈伽介绍,针对不同 IT 架构与运维模式,CaaS 提供四大自动化部署方案:主动管理(CM Agent/Agentless)、行业标准协议(可管理的ACME)、高度集成(RESTful API)、透明接入(HiHTTPS 网关),覆盖从安全网关设备到 CI/CD 集成的整套解决放哪,实现证书自动化羡慕的高效、有序、安全与灵活落地。

\"图片23.png\"/

二、从 CaaS 1.0 到 CaaS 2.0:数字信任边界的再次拓展 

 CaaS 1.0 给企业 TLS/SSL 证书高效管理的提出了可行方案,那么亚数 CaaS 2.0 则再次拓宽了企业数字信任服务的边界,定义了全新的服务形态。 

升级一:从 TLS/SSL 证书到全数字证书的服务化 

CaaS 2.0 的首要升级,是全面拓宽服务边界——从单一的 TLS/SSL 证书管理,延伸至整个数字证书生态。代码签名、邮件安全(S/MIME)、文档签名、物联网安全通信、企业级私有 PKI ……所有数字证书的应用场景,均逐步纳入统一管理平台。 

在代码签名和文档签名服务中,重点提升了云端与硬件的协同能力,将私钥统一托管在硬件安全模块(HSM)中,每次签名都需经过多因子认证或审批流程,实现“密钥不出库、签名走服务”的安全闭环。 

“这不仅是工具的整合,更是信任架构的重构。”会上,亚数TrustAsia CTO 余宁强调,“我们正在将分散的、孤岛式的证书管理,转变为统一、可治理的信任服务平台。”

\"图片24.png\"/

升级二:AI 深度赋能,从“自动化”到“智能化” 

CaaS 2.0 基于 AI 能力打造成了企业的“AI 数字证书管家”。通过 MCP 协议,AI 智能体可直接操作复杂证书任务,如自动分析业务拓扑并推荐最优部署方案。 

在接下来的规划中,CaaS 2.0 将会更进一步让数字信任变得“无感化”:AI 不仅能主动发现问题,还能自动诊断并尝试修复,实现无人值守的“自愈”能力。通过开放 MCP 协议集成,CaaS 2.0 将成为 AI 原生的信任基础设施,让各类 AI 应用都能直接、安全地调用信任服务,实现“无感”的数字身份保护。 

三、扎根中国,服务全球:LiteSSL 让中国的 CA 能力覆盖全球 

在企业级软件服务体系外,亚数TrustAsia 团队始终坚持企业的社会责任,致力于推动数字安全的普惠化。正式发布了面向开发者与中小企业的公益项目——LiteSSL,对全球开发者和中小企业免费提供 TLS/SSL  DV 证书及必备的自动化解决方案,帮助网站、应用零门槛接入 HTTPS,加速安全加密的全面普及。

LiteSSL 依托亚数TrustAsia 的自主根信任链和 CertCloud 有益的平台能力,实现证书签发、续期全流程自动化,兼顾本土化验证和全球可用性,确保用户快速、安全地享受 HTTPS 的保障。通过 ACME 标准接口,LiteSSL 可一键接入各类 Web 服务和云平台,极大简化部署与运维流程。

作为一个开放公益平台,LiteSSL 鼓励开发者、开源社区和行业伙伴共同参与建设,共享安全技术成果。亚数TrustAsia CEO 翟新元表示,亚数TrustAsia 希望通过 LiteSSL,将国产技术能力与国际的最新安全实践相结合,打造可持续、可信赖的互联网信任生态,让数字信任成为真正的基础设施服务。 

四、深耕技术底座,构建全球协同生态 

无论是赋能企业高效管理数字身份的 CaaS 2.0,还是推动网络安全普惠化的 LiteSSL,亚数TrustAsia 的每一项创新成果都建立在深厚的技术底座和持续迭代的核心能力之上。作为国内数字信任领域的领军者,亚数TrustAsia 始终以技术为基石,从基础能力建设到行业生态共建,一步步夯实数字信任底层基建,践行普惠安全的发展理念。

自 2014 年起,亚数TrustAsia 率先推动 HTTPS 普及化,并不断完善自身 CA 核心能力布局,成功取得国内电子认证领域三项核心资质:国密局《电子认证服务使用密码许可证》、工信部《电子认证服务许可证》、国密局《电子政务电子认证服务机构资质证书》,通过六项 WebTrust 国际安全审计认证、SOC 2 认证,搭建高标准真双活 CA 数据中心,实现技术服务能力、合规要求与业务连续性齐备的三重业务保障。 

从传统的证书供应商到数字信任基础设施的建设者,亚数TrustAsia 的发展始终与各行业发展同频共振。

作为亚太地区首家具有全球可信 CA 资质的 Matter Open PAA,公司将数字信任能力延伸至物联网,为智能设备提供安全可信的数字身份认证服务,推动物联网生态安全、高效发展。同时,亚数TrustAsia 在证书透明度(Certificate Transparency, CT)领域占据全球重要地位,是全球八大证书透明度日志运营商之一,也是亚太地区唯一 CT 日志运营商,不断推动 Web PKI 社区的健康与可持续发展。 

TrustAsia CaaS 的落地,不仅展现了亚数TrustAsia 自身的技术创新实力,也体现了公司长期推动全球生态合作伙伴协同共建的战略理念。多年来,亚数TrustAsia 持续深化生态合作伙伴计划,致力于打造开放、协作、共赢的证书管理生态。 

TrustAsia CaaS 的落地,不仅展现了亚数TrustAsia 自身的技术创新实力,也体现了公司长期推动全球生态合作伙伴协同共建的战略理念。多年来,亚数TrustAsia 持续深化生态合作伙伴计划,致力于打造开放、协作、共赢的证书管理生态。 

在本次发布会上,亚数的用户与合作伙伴也带来了各自的实践经验与创新成果: 

友邦保险 IT 基础设施运营副总监 Tony Wang——《风险、挑战与自动化破局之道——友邦人寿案例分享》

友邦保险 IT 基础设施运营副总监 Tony Wang 在分享中说到“47天不是技术参数,而是业务SLA的生死线”,借助亚数 Certmanager 系统实现证书申请、部署的管理自动化,减少认为的遗漏和失误,增加证书使用监控,在异常情况出现时,及时发现立即处理。形成从证书申请、审核、颁发、部署、监控、续期的全生命周期自动化管理

赛尔网络有限公司数字证书产品负责人张培俊——《教育网域名安全证书服务》

赛尔网络有限公司数字证书产品负责人张培俊在分享中提到,在2019年全国高校门户网站部署SSL证书的占比为25%,而到了2026年这一数字提升至了83%。HTTPS 的普及带来了海量,赛尔深耕教育行业所积累的行业经验与亚数在SSL证书领域的专业能力深度结合,为高校量身打造真实可落地的联合解决方案

连接标准联盟亚太区解决方案架构师杨莉——《安全为基,互联致远》

连接标准联盟亚太区解决方案架构师杨莉在演讲中,为到场嘉宾分享了连接标准联盟在物联网技术应用与创新中的思考与见解,致力推动全球开放标准建设,让万物得以安全地互联互通。亚数作为联盟认可的亚太区首家matter Open PAA机构,在为全球范围内的智能家居企业提供数字证书整体解决方案的同时,也深度参与了联盟的各项标准制定。

活动的圆桌论坛环节,由赛博英杰创始人谭晓生主持,亚数TrustAsia CEO翟新元、中国电子口岸数据中心上海分中心副主任经峥嵘 、万事网联信息安全经理倪凯闻、 上海移远通信高级产品经理陀家滨围绕着“数字证书应用与实践经验”展开了深度对话。

五、拓展服务边界:领航后量子时代的数字信任

立足 CaaS 2.0 的全新起点,亚数TrustAsia 将目光投向更远的未来,布局 VMC 证书服务提升电子邮件安全、C2PA 签名证书服务为AI生成式内容打上身份标签、可验证全球法人识别编码(vLEI)打通全球可信数字信任体系等等,使数字信任延伸至身份认证、内容安全、AI 防护等多元领域。 

而最值得关注的,是亚数TrustAsia 对 MTC(Merkle Tree Certificates,默克尔树证书) 的前瞻布局。面对后量子安全挑战,传统 X.509 证书在 TLS 握手时传输开销大、延迟高。谷歌于 2026 年 2 月公布 MTC 计划,通过默克尔树结构实现批量签发,单个根签名可覆盖大量证书,显著降低握手成本,并制定了 2027 年实现关键里程碑的路线图,使这一颠覆性证书形态加速从实验室走向实际应用。 

凭借多年运营 CT 日志的深厚经验,亚数TrustAsia 已深入理解 Merkle 树基础设施,并拥有 Merkle 树数据处理和验证能力,同时,公司积极参与 MTC 标准制定与早期试点,为行业标准落地贡献技术经验。未来,亚数TrustAsia 计划将 MTC 无缝集成至 TrustAsia CaaS 体系,为企业提供高效、量子安全的数字身份管理方案。 

“善弋者,下鸟乎百仞之上,弓良也。”在数字信任的竞技场上,CaaS 2.0 就是那把“强弓”——它不仅是一套工具,更是一种能力、一个生态。从十年前推动 HTTPS 普及,到今天以自动化、智能化重构数字信任服务,亚数TrustAsia 以持续进化证明:在这个规则不断被重写的时代,唯有躬身入局、主动求变,才能真正成为用户值得信赖的“数字信任底座”。 

当量子计算真正降临,当证书以天为单位轮换,当每一个设备都拥有不可伪造的数字身份时,我们今天的选择,将决定明天信任的根基。

", + "pubDate": "Tue, 07 Apr 2026 16:11:02 +0800", "author": "企业资讯" }, { - "title": "超 4300 万 Python 安装有代码执行漏洞隐患", - "link": "https://www.4hou.com/posts/yzO6", - "description": "

\"WX20250311-102629@2x.png\"/

在 Python JSON Logger 包(python-json-logger)中,发现了一个严重影响版本 3.2.0 和 3.2.1 的重大漏洞,编号为 CVE-2025-27607。该漏洞因对缺失依赖项 “msgspec-python313-pre” 的滥用,导致了远程代码执行(RCE)风险。最近的一项实验揭示了恶意行为者能够通过声明和操纵这一缺失的依赖项来利用该漏洞,使得这一问题引发了广泛关注。

漏洞详细信息

问题源于 PyPi 中 “msgspec-python313-pre” 依赖项被删除。这一删除操作使得该依赖项名称可供任何人随意声明,这就为恶意行为者创造了可乘之机,他们有可能发布同名的恶意软件包。一旦恶意行为者声明拥有该依赖项,在 Python 3.13 环境下使用 “pip install python-json-logger [dev]” 命令安装 python-json-logger 开发依赖项的用户,就可能在毫不知情的情况下,下载并执行恶意代码。

该漏洞是由 @omnigodz 在研究供应链攻击时发现的。研究人员注意到,尽管 PyPi 中已不存在 “msgspec-python313-pre” 依赖项,但在 python-json-logger 版本 3.2.1 的 pyproject.toml 文件中,它仍被声明存在。

受影响的版本

受此次漏洞影响的版本为 3.2.0 和 3.2.1。为了在不造成实际危害的前提下演示该漏洞,研究人员临时发布了同名的非恶意软件包,之后又将其删除。这一操作使得该软件包名称与受信任的实体关联起来,有效防止了潜在恶意行为者利用此漏洞。

影响与响应

根据官方 PyPi BigQuery 数据库数据,python-json-logger 包应用广泛,每月下载量超 4600 万次。尽管目前没有证据表明该漏洞在公开披露前已被利用,但其潜在影响不容小觑。一旦恶意行为者声明拥有 “msgspec-python313-pre” 依赖项,所有安装 python-json-logger 开发依赖项的用户都将面临风险。

为解决这一问题,python-json-logger 的维护人员迅速发布了 3.3.0 版本,该版本已移除了易受攻击的依赖项。建议使用受影响版本的用户尽快更新到最新版,以降低遭受 RCE 攻击的风险。

此次事件凸显了维护和确保软件包依赖关系安全的重要性,同时也强调了在开源生态系统中,对供应链安全保持高度警惕的必要性。虽然这一特定漏洞已得到解决,但它提醒着开发人员和用户,要时刻关注潜在安全风险,并及时将软件更新到最新版本。

", - "pubDate": "Tue, 11 Mar 2025 10:54:09 +0800", - "author": "山卡拉" - }, - { - "title": "直播预告:智御邮件新型威胁,CACTERE大模型网关新品发布", - "link": "https://www.4hou.com/posts/wx8r", - "description": "

3月13日(周四)15:00直播,立即扫码预约,一键占座!


直播亮点抢先看:
✔前沿洞察:大模型在邮件安全领域的破局之路
✔新品发布:CACTER大模型邮件安全网关首秀
✔跨界论道:清华学者&技术大拿共话AI防御演进

CACTER大模型邮件安全网关重磅登场!大模型赋能邮件安全,精准智御新型恶意威胁,守护邮件安全防线,超多功能等你揭秘~

\"直播海报.png\"/


", - "pubDate": "Tue, 11 Mar 2025 09:58:26 +0800", - "author": "Coremail邮件安全" - }, - { - "title": "YouTube 预警:首席执行官的 AI 视频恐成网络钓鱼新工具", - "link": "https://www.4hou.com/posts/om9Y", - "description": "


\"WX20250306-113551@2x.png\"/

YouTube 发出警告,称诈骗者正利用人工智能生成的该公司首席执行官视频实施网络钓鱼攻击,目的是窃取创作者的登录凭证。

攻击者通过电子邮件,以私人视频的形式将这些伪造视频分享给目标用户,并宣称 YouTube 正在变更其货币化政策。

在线视频共享平台 YouTube 在其官方社区网站的置顶帖中提醒道:“我们发现,网络钓鱼者一直在通过分享私人视频的方式发送虚假视频,其中就包含由人工智能生成的、YouTube 首席执行官尼尔・莫汉 (Neal Mohan) 宣布货币化政策变动的视频。”

“YouTube 及其员工绝不会通过私人视频与您联系或分享信息。如果有人以私人方式与您分享视频,并声称来自 YouTube,那么这个视频就是网络钓鱼诈骗。”

颇具讽刺意味的是,这些网络钓鱼电子邮件中还警告称,YouTube 绝不会通过私人视频分享信息或联系用户,同时提示收件人若发现可疑邮件,要举报发送邮件的频道。

钓鱼邮件中所链接视频的描述,要求打开视频的用户点击链接,跳转到一个页面(studio.youtube-plus [.] com)。在这个页面上,用户被要求登录账户,以 “确认更新后的 YouTube 合作伙伴计划(YPP)条款,从而继续通过内容获利并使用所有功能”。但实际上,该页面的真实目的是窃取用户的登录凭证。

\"image.png\"/

网络钓鱼登陆页面(BleepingComputer)

诈骗者还制造紧迫感,威胁称若用户不确认遵守新规则,其账户将被限制七天(据称这些限制涵盖上传新视频、编辑旧视频、获得货币化资格以及提取已赚取的货币化资金等方面)。

在用户输入凭证后,无论输入的是真实信息还是随机的电子邮件和密码,创作者都会被告知 “频道目前处于待定状态”,并要求 “打开视频描述中的文档以获取所有必要信息”。

自 1 月底开始,YouTube 用户就陆续收到此类电子邮件,而 YouTube 团队表示,他们已于 2 月中旬着手对此类活动展开调查。

YouTube 提醒用户,切勿点击这些电子邮件中嵌入的链接,因为这些链接可能会将用户重定向至网络钓鱼网站,导致登录凭证被盗取,或者设备被恶意软件感染。

\"image.png\"/

该公司还补充道:“许多网络钓鱼者积极针对创作者下手,试图通过利用平台内的功能,将链接指向恶意内容,以此冒充 YouTube 官方。”“请时刻保持警惕,务必不要打开不可信的链接或文件!”

然而,已有许多创作者不幸成为这些攻击的受害者。他们报告称,诈骗者劫持了他们的频道,并利用这些频道直播加密货币诈骗内容。

YouTube 在其帮助中心提供了有关如何避免遭遇网络钓鱼电子邮件以及如何举报此类邮件的提示,同时还给出了关于类似网络钓鱼活动的更多详细信息。

自 2024 年 8 月起,YouTube 还推出了新的支持助手,帮助用户在 YouTube 账户遭到黑客攻击后进行恢复,并保护账户安全。


", - "pubDate": "Fri, 07 Mar 2025 10:19:21 +0800", - "author": "山卡拉" - }, - { - "title": "新型 Anubis 勒索软件来袭,Windows、Linux、NAS、ESXi x64/x32 环境无一幸免", - "link": "https://www.4hou.com/posts/nlV5", - "description": "

\"Windows,

在当下复杂且变幻莫测的网络安全形势中,一个名为 Anubis 的全新勒索软件组织已强势登场,迅速成为网络安全领域里令人瞩目的重大威胁。

自 2024 年底起,Anubis 便开始活跃起来。它运用先进技术,具备在多个平台上运行的能力,这些平台涵盖了 Windows、Linux、NAS 以及 ESXi 环境。该组织借助勒索软件即服务(RaaS)以及其他基于联盟的货币化模式,不断拓展自身的影响力范围。

技术能力与目标平台

据了解,Anubis 勒索软件是基于 ChaCha + ECIES 加密算法开发而成的,这一算法赋予了它极为强大的数据加密能力。它能够针对各种环境中的 x64/x32 架构展开攻击,并且能够将权限提升至 NT AUTHORITY\\SYSTEM 级别,从而实现对系统更深层次的访问。此外,该恶意软件还具备自我传播的功能,可以高效地对整个域进行加密操作。而所有这些功能,均通过专门为联属会员设计的、操作便捷的网络面板来进行管理。Anubis 集团将业务重点聚焦于关键行业,其中医疗保健和工程领域成为了他们的主要目标。近期,澳大利亚、加拿大、秘鲁以及美国的一些组织已不幸沦为其受害者。值得留意的是,在已确认的四名受害者当中,有两名来自医疗保健行业,这一情况凸显出该组织对敏感数据行业存在潜在的高度关注。

联盟计划:多样化的盈利模式

为了吸引网络犯罪分子与之合作,Anubis 推出了一系列联盟计划:

· 勒索软件即服务(RaaS):参与该计划的联盟会员,若成功部署 Anubis 勒索软件,将能够获得高达 80% 的赎金分成。

· 数据勒索计划:在此模式下,主要通过以公开曝光所窃取数据作为威胁手段,将这些数据货币化。关联公司在此计划中可获得 60% 的收入,但被盗数据必须符合特定标准,比如具备排他性和相关性。

· 访问货币化计划:初始访问经纪人可以向 Anubis 出售公司凭证,进而获取 50% 的收入分成。该计划还包含详细的受害者分析环节,目的在于最大程度地提升勒索筹码。

这些联盟计划构建起了一套结构完善的商业模式,旨在通过多元化的收入来源,实现盈利能力的最大化。

据 Kela 介绍,Anubis 的运作方式极为复杂。他们会在隐藏的博客页面上发布关于受害者的调查文章,试图以此迫使相关组织支付赎金。一旦谈判破裂,该组织就会在其博客或者社交媒体平台上公开发布被盗数据。

\"image.png\"/

Anubis博客首页截图 

此外,他们还会通知监管机构以及受影响的各方,以此加大对受害者的压力。该组织的代表以 “superSonic” 和 “Anubis__media” 等化名活跃于俄语网络犯罪论坛,如 RAMP 和 XSS。从他们在论坛上发布的帖子能够看出,他们此前极有可能作为其他团体的成员,积累了丰富的勒索软件操作经验。

Anubis 的出现,充分彰显了勒索软件威胁正呈现出不断演变的特性。他们所具备的技术专长,加之创新的商业模式以及对关键领域的重点关注,使其成为了一个实力强劲的对手。在此,建议各个组织务必加强网络安全防御措施,时刻对这一新兴的威胁保持高度警惕。

", - "pubDate": "Fri, 07 Mar 2025 10:19:14 +0800", - "author": "山卡拉" - }, - { - "title": "时隔四年再提“平安中国”,国投智能深耕AI+公共安全", - "link": "https://www.4hou.com/posts/pn6Q", - "description": "

2月28日,习近平总书记在中共中央政治局第十九次集体学习时着重强调,要坚定不移贯彻总体国家安全观,在国家更加安全、社会更加有序、治理更加有效、人民更加满意上持续用力,把平安中国建设推向更高水平;指出适应形势任务的发展变化,平安中国建设只能加强,不能削弱。

同时总书记还强调,要完善公共安全体系,推动公共安全治理模式向事前预防转型,加强防灾减灾救灾、安全生产、食品药品安全、网络安全、人工智能安全等方面工作。要着力防范重点领域风险。

作为网络空间安全与社会治理领域国家队,国投智能始终以科技创新为驱动,紧扣新时代平安中国建设需求,在“雪亮工程+网络空间安全”、公共安全管理、社会治理AI新基建等领域持续突破,为推进社会治理现代化提供坚实技术支撑。  

01打造线上线下融合治理体系,助力构建“雪亮工程+网络空间安全”

随着我国数字经济高速发展,网络空间治理面临新挑战。截至2024年底,我国网民规模达11.08亿,5G基站总数419.1万个,5G用户占比56%,以电信网络诈骗为代表的新型网络犯罪成为主流,互联网成为打击犯罪的新战场。

国投智能致力于“雪亮工程+网络空间安全”建设,打造线上线下融合治理体系,实现虚拟社会和现实社会治理的线上线下全覆盖、全维感知、双向赋能,提升社会类风险的全维感知,提前发现和防范化解,助力公共安全治理模式向事前预防转型。

国投智能支撑的国家级反诈平台建设项目,依托国务院反电信网络诈骗联席会议制度和《反电信网络诈骗法》等,服务全国各行业的反诈工作,并通过国家反诈APP触达全国老百姓,助力执法部门联动金融、通信、互联网等行业构建风险预警与协同处置机制。通过“限额管控”“断卡行动”等技术升级,有效化解涉诈交易纠纷,助力公共安全治理实现"被动响应"向"主动预防"的范式转型。(点击了解详情)

02创新公共安全管理模式, 服务安全韧性城市建设

总书记提出,建设更高水平平安中国,必须强化社会治安整体防控;要把专项治理和系统治理、依法治理、综合治理、源头治理结合起来,发展壮大群防群治力量,筑起真正的铜墙铁壁。公安机关提出要建立完善“专业+机制+大数据”新型警务运行模式,在社会基层坚持和发展新时代“枫桥经验”,加强风险源头防控,严防发生极端案件。

国投智能打造的“祥云”城市公共安全管理平台,通过健全群防群治,探索多渠道、跨部门的信息采集、治理、分析,将原本在单一部门维度下无风险的线索,进行跨层级、跨部门、跨系统的多维度碰撞,挖掘出潜在的风险隐患,推动社会治理由事后应急向事前预警、被动应对向主动预防、单一管理向综合治理的转变,助力形成共建共治共享新格局,全面提高市域社会治理的风险洞察、防控、化解、治本及转化能力。

“祥云”在厦门公共安全(社会治理协同)管理平台的落地实践中,平台汇聚了84家单位的821亿条数据,在支撑厦门市公共安全管理、构建“共建、共治、共享”社会治理格局中发挥了重要作用,多次为重大活动的安保任务提供了有力支撑和保障,形成了“平台倒逼机制变革、数据驱动治理创新”的公共安全治理“厦门模式”。

\"82a0a07a39bef64aeda5c325c99f8e87.png\"/

03深耕数据要素价值,助力提升社会治理效能  

人工智能产业中,算力、算法、数据、应用场景是四大核心要素,算力和算法效能迭代快、开源化、性价比越来越好,对于公共安全行业来说数据和应用场景变得极其关键。

国投智能作为公共安全大数据领先企业,始终坚持“大数据操作系统+公共安全大模型”双技术路线,服务行业数据治理标准构建和落地应用。公司熟悉公共安全行业数据和业务,擅长治理公共安全行业数据形成高质量的行业数据集,依托部省市三级30余个大模型实践项目,全面赋能支持行业业务系统和大数据平台的升级改造,打造公共安全行业的新型基础设施。

公司自主研发的大数据操作系统具备强大的数据基座能力,依托大数据操作系统,公司深度融入厦门、开远、常熟等城市的智慧化规划与实施中,构筑智慧城市的中枢神经——城市大脑,涵盖数据中台、业务中台、感知中台及AI中台,旨在为多样化的智慧应用提供统一且强大的共性能力支撑与业务处理能力;成功赋能了公共安全大数据平台、居民身份证电子证照系统等多个国家重点项目。

\"640.png\"/

04构筑AI新基建技术护城河,提升公共安全新质生产力

总书记提出,要注重运用现代科技手段提高社会治理效能,公安机关也认为提升公安机关新质战斗力,人工智能与大模型是关键。

在生成式AI技术快速迭代的产业窗口期,公司前瞻布局取得关键突破。由国投智能自主研发的"天擎"公共安全大模型作为国内首个通过国家网信办备案的行业大模型,通过与DeepSeek的技术协同,补强其公共安全行业私有化知识不足,开展参数优化提升行业适应性,解决复杂案件处理过程中模糊信息推理、跨模态推理等实战难题,实现公共安全场景的推理准确率提升。

\"640.jpeg\"/

基于"天擎+DeepSeek"双引擎架构的国产化AI一体机解决方案,实现技术赋能与安全可控的双重突破,支持警务意图识别、警务情报分析、案情推理等高阶应用,实现与现有大数据平台和业务系统的无缝对接,有效破解行业智能化升级中的"数据孤岛"难题,为公安机关新质战斗力建设提供核心工具。

\"a99176311b41962b19a63b045bb44e75.gif\"/

针对生成式AI滥用风险,依托在深度合成和生成式AI技术领域的深厚积累,国投智能推出“慧眼”视频图像鉴真工作站、“美亚内容鉴真平台”微信小程序等智能装备和产品,全面支撑人工智能生成视频图像、音频和文本等多媒体内容的检测、鉴定和溯源工作,为有效打击利用AI技术进行的犯罪行为提供了有力的技术保障。

公司将以公共安全大模型打造行业基座、国产一体机打通落地链路、央企资源锁定场景入口,构筑社会治理AI新基建核心竞争壁垒,推动政策红利向产业动能转化  。

\"640

从技术攻坚到产业落地,国投智能始终秉持“国家队”使命,以自主创新为矛,以场景深耕为盾,推动公共安全从“被动应对”向“主动防控”跃迁。未来,国投智能将持续深化大模型技术与产业融合,丰富应用场景,让科技之力成为人民群众安全感、幸福感的坚实后盾,为守护平安中国贡献力量。


", - "pubDate": "Thu, 06 Mar 2025 18:03:58 +0800", + "title": "“影子AI”危机?绿盟威胁情报“三把锁”,构筑OpenClaw防御体系", + "link": "https://www.4hou.com/posts/W1kE", + "description": "

2026年,AI智能体被广泛应用,OpenClaw(俗称“龙虾”)凭借其自主决策与本地执行能力,成为企业与开发者的高频提效工具。然而,近期多家权威安全机构接连发布预警:OpenClaw正面临从供应链投毒到远程控制的多维安全威胁。

当内部员工私自部署此类“影子AI”资产,加之部分恶意Skills(插件)存在越权窃取核心数据的行为,传统边界安全防线正面临失效风险。针对这一现状,绿盟科技结合近期实战攻防与样本研判,基于深度威胁情报体系,输出了OpenClawAI供应链情报、OpenClaw失陷情报、OpenClaw钓鱼情报三大核心能力矩阵,为企业应对新型AI威胁提供“知其源、溯其踪、断其链”的实战支撑。

风险一:生态审核缺失下的“AI供应链投毒”

OpenClaw的扩展性高度依赖于其开放的Skills生态(如ClawHub)。监测发现,由于第三方平台缺乏严格的代码安全审核机制,攻击者可轻易植入后门插件,导致AI供应链投毒事件频发。

早在今年二月,绿盟天元实验室便发布了针对ClawHub平台恶意Skills风险的预警报告。持续跟踪表明,尽管OpenClaw官方已宣布开展安全治理,但截至目前,仍有大量高危插件存活,缺乏鉴别能力的非技术侧员工极易在无意间引入风险。

\"图片16.png\"/

【应对一:OpenClawAI供应链情报——知其源】

绿盟科技依托全球样本监测网络,对主流市场的Skills持续进行动态清洗与深度行为分析。目前,绿盟情报已实现高危Skills黑名单(涵盖密钥窃取、远控后门等类别)的实时输出,并为企业梳理了经过安全验证的“可信Skills库”。企业可借此在插件安装侧建立风险评估机制,从源头切断AI供应链的投毒路径。

风险二: AI执行能力被滥用后的“失陷问题”

一旦恶意Skills被触发或相关底层漏洞被利用,OpenClaw实例即宣告失陷。攻击者可利用AI工具的高权限,静默执行系统命令、窃取浏览器凭证,甚至将其作为跳板发起内网横向渗透。

【应对二:OpenClaw失陷情报——溯其踪】

针对此类攻击,绿盟威胁情报已提取并覆盖了高质量的IOC(威胁指示器)。在EDR(终端)层面,精准定位恶意Skills文件的落盘Hash;在NDR(网络)层面,直击失陷主机主动外联黑产C2的异常流量特征。

此外,研究团队创新性地将“AI异常行为指纹”纳入情报规则库。绿盟情报可通过云端快速同步至本地设备,当内网出现违规外联或异常进程调用时,可实现快速告警并溯源失陷主机,消除“影子AI”的隐蔽潜伏风险。

\"图片17.png\"/

\"图片18.png\"/

\"图片19.png\"/

风险三:诱导下载与钓鱼攻击

近期监测数据显示,黑产团伙正利用OpenClaw的热度,大肆构建钓鱼网络。攻击者针对普通业务人员,利用SEO精准投放高仿钓鱼网站,诱骗员工下载捆绑了木马程序的伪造版客户端,以此实施水坑攻击。

【应对三:OpenClaw钓鱼情报——断其链】

绿盟科技持续监控全网涉OpenClaw的数字资产与钓鱼源头,第一时间对伪造站点进行测绘并提取威胁情报。通过联动企业边界防护设备,在网关侧直接识别并封堵此类仿冒网站,斩断钓鱼攻击链条。

\"图片20.png\"/

结语:构建AI应用的安全护栏

OpenClaw的普及是技术发展的必然,但其模糊的信任边界机制极易被利用。在强调“发展与安全并重”的当下,面对“龙虾”热潮,企业在享受提效的同时,需重点关注其伴生的安全盲区。

绿盟科技输出的三大专项情报,旨在为企业应对AI智能体威胁提供全生命周期的防御数据支撑。通过精准鉴别风险、提取高保真IOC与源头风险管控,为企业的AI应用构建安全护栏。

防御维度

风险场景

情报能力

知其源

插件引入风险

OpenClawAI供应链情报

溯其踪

失陷与异常行为

OpenClaw失陷情报

断其链

钓鱼站点访问

OpenClaw钓鱼情报

立即接入绿盟威胁情报,防范网络资产沦为恶意AI的法外之地。

https://nti.nsfocus.com/

\"图片21.png\"/

", + "pubDate": "Tue, 07 Apr 2026 15:38:44 +0800", "author": "企业资讯" }, { - "title": "为AI助跑!赛宁网安大模型四件套重磅发布!", - "link": "https://www.4hou.com/posts/mkVR", - "description": "

在人工智能迅猛发展的今天,AI深度融入社会经济,成为推动产业升级变革的重要力量,同时,也带来了前所未有的安全挑战。数据泄露、模型恶意内容生成、隐私侵犯等安全风险泛滥,随时可能让企业遭受重创。在此背景下,赛宁网安强势发布“3款大模型重磅产品+1站式业务实践指导”,为AI助跑,全力护航智能时代!


\"产品.png\"/


一、大模型安全检测平台:掌控LLM+RAG安全风险


赛宁网安大模型安全检测平台深度融合“内生安全”理念,涵盖内容安全、数据安全、伦理安全、业务合规4大测评维度。依托诱导式对抗检测技术,提供AIGC安全性、泛化性、鲁棒性全链路测评,为政府、能源、电力、教育、金融等领域的AI应用落地提供保障。


\"01-1.png\"/


1、 实时监测:对大模型运行进行24小时不间断跟踪,确保输出内容的安全、合规。

2、 全面测评:测评覆盖内容安全、数据安全、伦理安全和合规安全4大核心维度,多达200+子类。



\"01-2.png\"/



3、 精准定位:精准识别数据泄露风险点、恶意代码特征等问题,实现对安全问题的快速定位,为后续处理提供精确依据。

4、 灵活部署:支持本地部署、SaaS化部署等多种形式,满足用户多样化需求。


二、大模型内容安全网关:输入输出的守门员


赛宁网安大模型内容安全网关通过实时监控和处理输入、输出内容,实施脱敏和行为拦截,确保企业数据安全,减少合规风险,提高数据治理水平。


\"02-1.png\"/

\"02-2.png\"/




1、 数据智能防护:采用多重加密技术与隐私保护机制,严格过滤敏感信息,保障用户数据安全,让企业放心使用大模型。

2、 内容智能拦截:具备强大的并行计算能力对输入内容进行实时深度分析,一旦检测到高风险敏感信息,实时响应并触发内容阻断。

3、 策略灵活定制:充分考虑不同行业、企业的内容合规需求差异,支持自定义规则,满足多样化需求。


三、DeepSeek一体机:满血版9.8万接受全网比价


\"03-1.png\"/



        1、开箱即用:内置多个RAG引擎及200+应用,支持处理多类非结构化数据,帮助企业快速搭建基于本地知识库的智能对话系统。


\"03-2.png\"/



       2、合规保障:内置应用支持复杂权限管理,同时严格遵守数据安全与合规要求,模型和知识库均经过全面审查,确保不产生意识形态偏见、违法违规或伦理问题。


       3、极致性价比:满血配置9.8万,接受全网比价,高配版本支持租赁模式。



\"03-3.png\"/



四、AI培训与实践指导:权威课程及最佳实践落地


0-1-N,涵盖AI基础入门、AI能力进阶、AI实操技巧、AI安全风险、AI应用指导全系课程


      1、专业指导:清华、复旦等顶尖高校老师研究成果。

      2、快速入门:涵盖Prompt工程、AI攻防、合规实践等。

      3、深度定制:政务、能源、电力、金融等行业最佳实践。


\"04-1.png\"/


未来,AI安全将成为人工智能时代的重要基石。赛宁网安将勇担时代使命,基于实战对抗和AI能力,持续加强对大模型安全技术的研究和应用,助力用户高效识别、防范AI技术可能带来的潜在风险和挑战,护航AI技术的健康、可持续发展。

", - "pubDate": "Thu, 06 Mar 2025 16:34:11 +0800", - "author": "赛宁网安" - }, - { - "title": "个人信息安全三重防线(下):三者相互独立还是紧密联系?", - "link": "https://www.4hou.com/posts/9jAz", - "description": "

在上篇中,我们探讨了App隐私合规检测、PIA认证、个人信息保护审计的基本概念和各自的具体实施内容要点。随着隐私保护法规的日益严格,企业在进行数字化转型时,必须面对这些隐私安全环节的具体操作与合规要求。然而,尽管App隐私合规检测、PIA认证和个保审计各自具备独立的功能,它们并非独立存在,反而在实践中互为补充,形成了一个整体的隐私保护体系。

本篇将进一步解构这三者之间的区别与关联,探讨它们各自的侧重点和实施时机,并列举相应的参考案例。App隐私合规检测关注的是移动应用在个人信息处理活动中是否符合相关法律法规,是隐私保护的合规基础;PIA认证对拟实施的个人信息处理活动进行评估,帮助企业识别潜在的隐私风险;而个保审计则对企业在隐私保护方面整体的合规性进行审查和评估,确保各项保护措施得以有效执行。通过了解它们之间的区别与关联,企业不仅能更好地应对监管合规要求,还能提升隐私保护的综合能力,进一步增强用户对其个人信息处理能力的信任。

一、区别详解

1、 侧重点不同

  • App隐私合规检测

主要聚焦于应用程序的具体隐私行为。它通过检查应用程序的隐私政策、用户个人信息收集和处理流程、对用户的权利保障等,确保其符合相关法律法规和行业标准。旨在发现应用在隐私保护方面的潜在问题,及时修正,以避免用户个人信息泄露和滥用风险。

  • 个人信息保护影响评估

则更侧重于对拟实施的个人信息处理活动的全面分析,关注其处理活动对用户隐私的潜在影响。它不仅考虑法律合规,还分析个人信息处理的必要性和合理性,识别可能危害个人信息主体权益的各种风险,然后根据这些风险评估结果,采取相应的个人信息安全防护与管理措施。

  • 个保合规审计

关注的是个人信息处理者(包括但不限于企事业单位、政府机构、社会组织等)在个人信息保护方面的管理框架和实施效果。它从宏观层面评估企业的合规性,检查其管理制度、流程以及实际操作措施是否与既定的合规标准一致。通过审计结果,不断优化企业个人信息治理能力,形成更合规的管理制度体系。

2、 实施时机不同

  • App隐私合规检测

通常在应用上架各大移动应用市场前进行,同时网信办、工信部等监管部门在应用上线后也会对其进行日常隐私合规检测、整改、二次检测和抽检等。这样就能使得企业可以在不同阶段及时发现和解决隐私问题,确保个人信息收集和处理的合规性。

  • 个人信息保护影响评估

在《个人信息保护法》中的第五十五条有明确规定,有下列情形之一的,个人信息处理者应当事前进行个人信息保护影响评估,并对处理情况进行记录:

(一)处理敏感个人信息;

(二)利用个人信息进行自动化决策;

(三)委托处理个人信息、向其他个人信息处理者提供个人信息、公开个人信息;

(四)向境外提供个人信息;

(五)其他对个人权益有重大影响的个人信息处理活动。

  • 个保合规审计

根据《个人信息保护法》第五十四条和第六十四条,可将个保合规审计分为“定期自主审计”和“监管强制审计”两种类型。“定期自主审计”是指个人信息处理者应定期自行开展审计。关于定期自主审计的频率,根据《个人信息保护合规审计管理办法(征求意见稿)》,处理超过100万人个人信息的个人信息处理者,应当每年至少开展一次;其他个人信息处理者应当每二年至少开展一次。而“监管强制审计”则由监管部门发起,通常在发现企业个人信息处理活动存在较大风险或企业发生个人信息安全事件时要求进行。“监管强制审计”只能由专业机构开展,而不能由企业内部机构进行。

二、关联分析

尽管App隐私合规检测、个人信息保护影响评估和个保合规审计在侧重点、实施时机有所不同,但它们之间存在着紧密的相辅相成关系,形成一个有效的个人信息保护体系。

  • 相互促进

App隐私合规检测为个人信息保护影响评估提供了具体的个人信息收集和处理情况,帮助评估者更好地理解存在的隐私问题。例如,在隐私合规检测中发现存在非必要收集个人信息的问题,可以直接影响后续的个人信息保护影响评估,使评估者能够在识别风险时,对隐私合规检测中发现的问题进行验证,并检查是否已采取措施进行整改。反过来,评估结果可以为之后的隐私合规检测提供指导,促使应用程序的收集和处理的目的更加合理,确保在设计阶段就充分考虑隐私因素。

  • 形成闭环

个保合规审计通过对App隐私合规检测和个人信息保护影响评估的结果进行综合分析,识别出企业用户在合规性管理中的薄弱环节,帮助企业持续加强隐私保护,规范合规性管理。例如,审计结果可能指出在个人信息主体权利保障环节中执行上的不足,导致应用隐私合规检测时频繁出现问题。审计发现后,企业可以在接下来的隐私合规检测和评估中加以修正,形成一个不断循环和优化的合规管理机制。

  • 系统性治理

这三者结合形成了企业个人信息保护的系统性治理框架。企业可以通过定期的App隐私合规检测和个人信息保护影响评估,及时发现潜在风险并进行调整,而个保合规审计则提供了一个全面的视角,帮助企业识别合规管理中的不足,从而提升整体隐私保护水平。

三、参考案例

为了更好地理解这三者之间的关系,我们可以参考以下案例。

案例1:短视频平台

  • 背景:

某短视频平台计划推出“个性化推荐”功能,通过分析用户观看历史、点赞记录和评论内容来提升推荐算法的精准度。这一功能需要采集大量用户行为数据,并与第三方算法服务商共享部分个人信息。

  • App隐私合规检测:

技术团队在功能开发后进行隐私合规检测,发现现有隐私政策未能清晰说明个人信息采集范围和与第三方共享的情况。团队据此更新了隐私政策,新增对个性化推荐服务所需个人信息及与第三方合作内容的详细说明,确保告知用户个人信息的具体用途和共享方式。

  • 个人信息保护影响评估:

功能上线前,应需利用个人信息进行自动化决策和向其他个人信息处理者提供个人信息,平台进行了个人信息保护影响评估,发现由于数据分析涉及第三方,存在潜在个人信息泄露风险。评估后,团队引入数据加密与匿名化处理技术,同时要求第三方签署个人信息保护协议,明确责任划分和违规处罚措施。

  • 个人信息保护合规审计:

功能上线一年后,应平台处理个人信息超过100万人,所以由企业内部机构进行合规审计,审查个人信息采集和共享的实际操作是否符合既定政策。审计显示,部分用户对隐私政策内容关注度不高,导致功能体验中仍存在信任问题。团队据此优化用户界面,在权限申请环节增加简明说明,引导用户查看政策详情。

案例2:外卖平台

  • 背景:

某外卖平台推出“实时配送跟踪”功能,需要采集用户的精确位置信息以优化配送效率。然而,部分用户担心位置数据可能被滥用或泄露,导致隐私保护争议增加。

  • App隐私合规检测:

在功能开发完成初期,技术团队对应用进行隐私合规检测,发现现有权限申请机制过于模糊,无法确保用户了解位置数据的具体用途。团队据此调整权限申请流程,分步骤明确位置数据用于配送调度、异常报告及历史订单展示等用途,增强透明度。

  • 个人信息保护影响评估:

功能上线前,应需处理精准位置信息(敏感个人信息),平台开展个人信息保护影响评估,发现持续采集精确位置存在较高敏感性数据泄露风险。团队因此调整为“仅在配送中实时采集,订单完成后立即删除”的策略,同时为用户提供查看和管理位置数据的权限入口。

  • 个人信息保护合规审计:

上线两年后,平台委托独立第三方机构进行个保合规审计。审计通过模拟恶意数据访问的场景测试个人信息保护安全机制,发现某些情况下配送员端的位置信息更新存在延迟清除的情况,可能间接泄露用户地址。根据审计建议,平台升级了数据实时清理程序,并对配送员端应用增加权限监控,确保用户地址仅在配送期间可见且配送完成后自动销毁。

案例3:在线教育平台

  • 背景:

一家在线教育平台推出了“AI个性化学习助手”,通过采集学生的学习数据和行为习惯,生成个性化学习方案。然而,这项功能涉及学生的学习记录、考试成绩等敏感数据,家长对数据安全性表达担忧。

  • App隐私合规检测:

技术团队在功能开发过程中发现,现有隐私政策仅对普通用户数据做了说明,对未成年人的个人信息保护措施表述不足。经隐私合规检测后,平台新增针对未成年人隐私保护的专门章节,明确采集范围和监护人授权要求。

  • 个人信息保护影响评估:

上线前,应需利用个人信息进行自动化决策和处理未成年人信息(敏感个人信息),平台进行了个人信息保护影响评估,发现可能出现因算法偏差而产生歧视性推荐的问题。团队决定通过算法透明化测试,确保生成的学习方案公平无误。此外,个人信息存储采用分级加密,防止敏感个人信息被非法访问。

  • 个人信息保护合规审计:

平台上线后,团队实施个保合规审计,通过深度访谈和数据追踪方式,检查个人信息处理流程的实际运行情况。审计发现,在某些跨部门协作中,存在部分学生学习记录未能完全匿名化的问题。平台据此优化了跨部门数据流转的规则,实施全程加密及访问权限动态控制机制,确保只有经授权的人员才能查看学生个人信息,同时避免不必要的数据暴露。

四、总结与建议

随着《个人信息保护法》等相关法律法规的实施,企业面临的合规压力不断加大,而用户对隐私保护的关注度也日益提升。在这样的背景下,App隐私合规检测、个人信息保护影响评估和个保合规审计作为保护个人信息的重要手段,发挥着不可或缺的作用。此三者有效结合形成了一个系统性的个人信息保护治理框架。企业应当在这三者之间建立有效的联动机制,提升整体的个人信息保护能力,以实现合法合规与用户信任的双重目标。在实践中,企业还需不断优化个人信息处理流程,加强员工的隐私保护意识,从而在合法合规的基础上实现可持续发展。


", - "pubDate": "Thu, 06 Mar 2025 16:32:33 +0800", + "title": "一只AI“龙虾”的冰火一周:从全网追捧到紧急卸载——OpenClaw爆火背后的三大智能体安全风险与应对", + "link": "https://www.4hou.com/posts/VWgz", + "description": "

一场轰轰烈烈的“养虾运动”,从全网追捧到紧急卸载,只持续了短短一周。二手平台已经出现另一种服务:远程卸载OpenClaw。价格从499元安装到299元卸载[1],一条“装虾—教虾—卸虾”的产业链迅速形成。第一批“养虾人”的翻车经历[2]也不断出现:

·有人授权OpenClaw访问邮箱,结果邮件被批量删除;

·有人让AI清理磁盘,结果整个目录被误删;

·还有用户因为API Key泄露,一夜之间损失数万美元;

3月10日晚,国家互联网应急中心紧急发布风险提示[3],提醒公众谨慎部署类似AI智能体系统。随后,工信部NVDB(国家信息安全漏洞库)也将OpenClaw列入重点关注名单,明确指出其可能引发网络攻击、数据泄露等重大风险[4]。

一只“龙虾”的命运,在一周之内完成了从全网追捧到紧急卸载的反转。在这场狂热背后,一个更深层的问题浮出水面:当AI从“思考”走向“动手”,我们该如何确保它不会失控?

AI智能体的三大安全风险与应对

与传统AI应用不同,AI智能体具有三个关键能力:访问真实系统资源、调用工具执行任务、自主规划行动步骤等。正是这些能力,让AI从“对话者”进化为“行动者”。但这也意味着,一旦出现安全漏洞,影响将不再局限于模型输出,而可能直接波及真实的系统环境与业务流程。

一只“龙虾”的冰火一周,实际上提前暴露了OpenClaw的三大安全风险,与风险对应的解决方案如下图:

\"图片4.png\"/

图1 OpenClaw的三大安全风险和应对方案

风险一:影子“龙虾”——隐匿的OpenClaw

OpenClaw的爆火不仅激发了个人用户的尝鲜热潮,也在企业网络中悄然埋下了一类全新的安全隐患——影子AI资产(Shadow AI Assets)。为提升效率或便捷体验,许多员工在未经安全审批的情况下,自行在个人电脑、研发服务器甚至企业内网中部署OpenClaw等AI智能体系统。

从安全视角来看,这类影子AI资产普遍具备以下三大典型特征:

·难以发现:安全团队可能对内部署的AI智能体一无所知,这些系统可能散布于研发服务器、测试环境、云主机甚至员工个人设备上,形成管理盲区。传统资产发现手段难以识别AI智能体的特有指纹,“看不见”成为首要难题。

·漏洞复杂:AI智能体系统通常由模型框架、插件模块及ACP、MCP、API等多种接口组成,各组件间依赖关系复杂,组件供应链投毒、配置错误、权限绕过等风险交织叠加,使得漏洞面显著扩大。

·权限过高:为完成任务,OpenClaw等智能体常被授予访问系统文件、浏览器环境及API接口的高权限。一旦节点被攻击者控制,即可直接窃取敏感数据、执行高权限操作,甚至以此为跳板横向移动,深入渗透企业内网。

这些影子AI资产往往直接接入核心资源——本地文件系统、企业邮箱、API密钥、内网服务接口等。与传统影子IT相比,影子AI资产的权限更高、组件更复杂、隐匿性更强,已然成为企业网络安全的“暗礁”,亟待引起重视。

应对一:雷达“扫虾”——AI资产测绘与风险识别

针对影子AI资产带来的治理困境,绿盟提供AI资产与风险识别智能体,包括能力如下:

1. AI资产自动发现:让隐匿的AI系统无处遁形

通过网络空间测绘与AI资产指纹识别技术,自动发现网络中的能够自动发现隐藏或未纳入管理范围的AI资产。覆盖OpenClaw等智能体平台以及各类AI应用服务节点、模型服务接口和AI运行环境等多种形态的AI资产,形成动态更新的资产清单,彻底消除盲区。AI资产与风险识别智能体发现:截止2026年3月12日上午11点,全球已有12w个开放的OpenClaw在线资产,其中中国含有47,233个资产,占全球国家分布排行第一。

\"图片5.png\"/

图2 OpenClaw全球资产测绘情况

2. AI资产组件漏洞深度识别:看见AI背后的真实攻击面

通过对智能体关键组件进行漏洞关联分析,可以识别模型框架漏洞、插件风险和工具调用安全缺陷,并提供详细的漏洞说明与修复建议。例如 CVE-2026-27002、CVE-2026-28391、CVE-2026-28474 等漏洞,一旦被利用,攻击者不仅可以控制AI智能体本身,还可能继承其全部系统权限,从而访问AI能够调用的所有资源,包括:宿主机文件系统、容器集群、私有云存储平台(Nextcloud)。换句话说,一旦AI被攻陷,攻击者控制的就不只是一个模型,而是 AI背后的整个系统生态。

\"图片6.png\"/

图3 OpenClaw漏洞情况

\"图片7.png\"/

图4 OpenClaw安全治理安全建议

3. 风险画像构建与优先级排序:让高风险AI资产一目了然

结合AI资产测绘与开源供应链分析,识别组件供应链暴露程度及关联漏洞信息等多维数据,为每个AI资产构建风险画像,定位高风险节点(如高危组件、漏洞利用链、外网暴露等),开展风险优先级排序,同时研判潜在的供应链风险。

\"图片8.png\"/

图5 Openclaw供应链组织成分图谱分析

通过这些能力,企业能够将游离于管控之外的影子AI资产纳入统一安全管理体系,为AI技术的安全落地筑牢防线。

风险二:有毒“龙虾”——被投毒的Skill生态

OpenClaw的能力很大程度上来自其Skills插件生态。通过安装不同Skills,用户可以让AI智能体执行邮件管理、文件处理、自动脚本执行、代码开发辅助等自动化任务。这种插件化架构极大扩展了智能体的能力边界,但也打开了一扇危险的“后门”——一个全新的、隐蔽的攻击面正在形成。

根据安全研究,Skills相关的安全事件可归纳为以下主要类别:

·恶意插件:披着羊皮的“特洛伊木马”: 攻击者将恶意代码伪装成“邮件助手”等正常工具,诱导用户安装。一旦启用,智能体便在后台窃取数据、控制设备等。研究显示,ClawHub近4000个Skills中,36.8%存在安全问题,13.4%含严重漏洞,涉及恶意分发、数据泄露等[5]。

·提示词注入攻击:语言指令成为武器:除了恶意代码直接执行,攻击者还通过精心构造的自然语言指令,诱导AI智能体执行非预期操作。这类攻击利用AI对自然语言的理解缺陷,绕过安全限制。通过诱导性对话,让AI主动交出用户的社保号、银行卡信息[6];OpenAI Codex一名成员的OpenClaw被恶意指令欺骗,转走了价值约45万美元的数字货币[7];

·供应链安全与系统性风险:绿盟科技在《2026网络安全趋势报告》[8]中指出,智能体的自主决策特性放大了供应链风险。当用户从不可信来源安装Skill时,无异于主动把家门钥匙交给陌生人。此类风险涉及身份伪造、决策失控、数据泄露、模型漏洞等多个层面。 

可见,Skills生态在赋予AI强大能力的同时,也带来了前所未有的安全挑战。用户需谨慎选择Skills来源,并持续关注安全动态。

应对二:安检“验虾”——Skills全方位测评

针对智能体Skills插件生态日益严峻的安全危机,绿盟构建了Skills安全测评智能体,可以对插件进行系统化安全检测。该测评智能体从三个核心维度展开,形成覆盖代码、行为、权限的全方位检测:

1. 静态代码分析: 从源头识破恶意逻辑

通过自动化扫描Skills源代码,识别可疑函数调用、外联通信逻辑以及数据外传行为。静态分析引擎内置了针对AI插件特有的恶意模式库(如权限边界突破与能力滥用、敏感数据暴露与外流风险、执行面失控风险等),可精准发现隐藏在正常功能代码中的“特洛伊木马”。该引擎对已知恶意模式的检出率可达90%以上。如下图所示,在测试的恶意Skill中识别到了一些恶意模式库中的风险,包含执行面失控、敏感数据暴露与外流风险等。

\"图片9.png\"/

图6 Skill文件内容静态分析

2. 动态行为检测:在隔离环境中“抓现行”

将插件放入沙箱隔离环境运行,实时监测其文件访问、网络通信、系统权限调用等行为。无论恶意代码如何混淆,只要它在运行时试图读取私钥文件、连接未知C2服务器、或执行异常外传,动态检测引擎都会记录并告警。结合Skill行为沙箱动态分析与静态审计交叉验证,这种“动静态结合”的方式,有效弥补了单一静态分析的盲区。

\"图片10.png\"/

图7 Skill静态行为交叉验证

3. 权限最小化控制:让插件“各司其职”

对插件能力进行分级管理和细粒度权限控制。通过定义明确的权限边界(如仅允许访问特定目录、禁止外联、限制API调用范围),即使插件存在未知漏洞或被植入恶意代码,其破坏能力也被限制在最小范围内。平台支持基于角色的权限分配,确保每个技能只能访问完成任务所必需的最小资源集。

\"图片10.png\"/

图8 Skill权限分析

Skills安全测评智能体正是将这种“开门揖盗”的风险降至最低——通过动静态结合的深度检测、权限最小化控制、以及持续的安全自检能力,帮助企业和个人用户在体验“龙虾”浪潮中,守住安全的底线。

风险三:贪婪“龙虾”——恶意消耗Token算力

OpenClaw还暴露出另一个被很多人忽视的问题:Token资源可能被恶意劫持与滥用。与传统对话式AI不同,AI智能体在执行复杂任务时,需要进行大量多轮推理、工具调用、自动代码生成和长上下文分析。这种能力在为用户带来便利的同时,也打开了一扇新的攻击窗口——攻击者可以通过精心构造的提示词,诱导AI执行高消耗任务,从而形成AI资源耗尽攻击(AI DoS)。学术界已将这类攻击命名为“Deadlock Attack”或“ThinkTrap”,具体风险有以下三类:

·提示词诱导下的算力耗尽: 研究显示,攻击者仅需构造约20个Token的输入,即可诱导模型生成4096+ Token的超长输出,形成“非对称消耗”[9]。这种低速率攻击(如每分钟10次请求)可将服务吞吐量降至原容量的1%,响应延迟增加100倍,甚至引发服务崩溃[10]——极低成本即可瘫痪企业AI服务。

·AI“自主钻空”引发的资源劫持:令人警惕的是,AI可能主动突破安全边界。

·API密钥泄露下的算力盗用:内部凭证泄露同样致命。深圳一程序员因API密钥被盗,3天损失1.2万元Token费用[13]。市场数据显示,OpenClaw占openrouter平台总消耗的95%以上(2.05T/周)[14],而多智能体系统消耗是普通对话的4-15倍——如此庞大的算力池,已成攻击者的“金矿”。 

这些案例表明,Token失控已从成本问题演变为安全问题。一旦缺乏监测与限制,AI算力随时可能被劫持,而受害者往往在收到账单或服务崩溃时方才察觉。

应对三:阀门“控虾”——Token监测与资源控制

面对Token算力攻击带来的资源失控风险,绿盟构建了 Token行为监测与资源控制智能体,从“监测—识别—控制”三个维度形成闭环防护,帮助企业将AI算力消耗纳入可管可控的轨道。

1. Token消耗监测:让每一分钱都有迹可循

智能体实时统计模型的调用频率与Token使用量。无论是正常业务增长,还是突发异常暴涨,运营团队都能第一时间感知。这相当于为AI系统安装了“智能水表”——用水量清晰可见,漏水才能及时止损。

\"图片12.png\"/

图9 LLM Token消耗实时监控

2. 异常行为识别:捕捉失控前的“蛛丝马迹”

智能体持续分析Token消耗模式,自动识别异常行为特征:Token消耗在短时间内陡增,远超正常波动范围;模型调用出现高频循环,疑似陷入死循环或遭受攻击;任务执行时长显著超出历史基线等。一旦发现上述模式,系统立即触发告警,并提供详细的调用链路回溯,帮助安全团队快速定位问题源头——是被恶意提示词注入,还是智能体自身逻辑出现偏差。

\"图片13.png\"/

图10 Agent资产管理与行为监控

3. 资源限额控制:给AI算力套上“缰绳”

通过精细化的资源管控策略,平台从源头遏制算力滥用:

·Token预算:为不同任务、不同用户设定Token消耗上限,超限自动熔断;

·调用频率限制:限制单个会话或API Key的单位时间请求次数,防止高频滥用;

·任务时长控制:设定任务执行超时阈值,避免智能体陷入无限循环;

这些控制策略既可全局生效,也可按业务场景灵活配置,确保AI系统在高效运转的同时,不会因资源失控而沦为攻击者的“算力肉鸡”或企业的“账单炸弹”。

\"图片14.png\"/

图11 周期性Token消耗统计

通过Token行为监测与资源控制,绿盟希望帮助企业从“被动承受Token账单”转向“主动掌控AI算力”,让每一次模型调用都清晰可见、可控可管。

结语:OpenClaw故事正是AI智能体时代的一个缩影

当AI从“对话”走向“行动”,开始真正操作系统、调用工具、执行任务时,安全的边界也随之扩展为智能体系统安全。面对这一变革,绿盟科技正积极推动AI智能体安全评估与防护体系建设,并将于近期发布《面向智能体时代的大模型安全技术白皮书》,为行业提供系统性参考与前瞻视角,敬请期待。

关于绿盟“清风卫”  

AI安全一体机(“清风卫”),是软硬一体的“全能卫士”,集成了内容安全过滤、敏感数据防泄漏、精细化算力调度及应用层攻击防护等核心能力。通过自研“风云卫”混合模型和三级资源管控机制,有效防御提示词注入、模型越狱等高级攻击,同时保障资源高效利用,防止模型滥用。

绿盟“清风卫”AI安全产品体系具备“平台化集成、场景化适配、自动化运营”三大特点,可灵活对接各类智能体开发平台与既有安全基础设施,为客户提供从开发态到运行态的一体化“监管控”能力。

OpenClaw故事正是AI智能体时代的一个缩影。当AI从“对话”走向“行动”,开始真正操作系统、调用工具、执行任务时,安全的边界也随之扩展为智能体系统安全。面对这一变革,绿盟科技正积极推动AI智能体安全评估与防护体系建设,并将于近期发布《面向智能体时代的大模型安全技术白皮书》,为行业提供系统性参考与前瞻视角,敬请期待。

\"图片15.png\"/

参考文献

[1] “装虾299、卸载199”,“养龙虾”热潮迎来冷静期, https://news.qq.com/rain/a/20260311A043TJ00?suid=&media_id=

[2] “AI打工人”OpenClaw存在失控风险,安全问题引监管紧急提示, https://www.sohu.com/a/995076409_393779?scm=10001.325_13-325_13.0.0-0-0-0-0.5_1334&spm=smpc.channel_248.block3_308_NDdFbm_1_fd.1.1773206897097caBeGIT_324

[3] 国家互联网应急中心发布关于OpenClaw安全应用的风险提示, https://www.news.cn/tech/20260310/d5e1d772bed046239ea3774903c08970/c.html

[4] 重要提醒!工信部提示OpenClaw安全隐患, https://www.peopleapp.com/column/30051585475-500007383083

[5] Snyk Finds Prompt Injection in 36%, 1467 Malicious Payloads in a ToxicSkills Study of Agent Skills Supply Chain Compromise, https://snyk.io/de/blog/toxicskills-malicious-ai-agent-skills-clawhub/

[6] 你养的“龙虾”,已在失控边缘,https://www.36kr.com/p/3718104716326273

[7] “养龙虾”八面漏风,人类被坑惨了,https://www.thepaper.cn/newsDetail_forward_32749599

[8] 绿盟科技,2026网络安全趋势报告,https://book.yunzhan365.com/tkgd/evsw/mobile/index.html

[9] LLM Infinite Thinking DoS, https://www.promptfoo.dev/lm-security-db/vuln/llm-infinite-thinking-dos-ab428aed

[10] One Token Embedding Is Enough to Deadlock Your Large Reasoning Model,https://neurips.cc/virtual/2025/loc/san-diego/poster/116766

[11] Anthropic Upgrades Claude AI Web Search Tools With 11% Accuracy Boost, https://blockchain.news/news/anthropic-claude-web-search-dynamic-filtering-upgrade#google_vignette

[12] Wang W, Xu X X, An W, et al. Let It Flow: Agentic Crafting on Rock and Roll, Building the ROME Model within an Open Agentic Learning Ecosystem[J]. arXiv preprint arXiv:2512.24873, 2025.

[13] 养龙虾,别被偷了家,https://item.btime.com/4bd4ab33bf764be3bd3980d6ad9

[14] 疯狂的OpenClaw:Token放量、资本热捧,大厂卡位战已打响!风险不容忽视,https://finance.sina.com.cn/jjxw/2026-03-10/doc-inhqpnum6129952.shtml

", + "pubDate": "Tue, 07 Apr 2026 15:22:49 +0800", "author": "企业资讯" }, { - "title": "AI 训练数据藏雷:近 12,000 个 API 密钥与密码曝光", - "link": "https://www.4hou.com/posts/jBMy", - "description": "

Common Crawl 非营利组织维护着一个庞大的开源存储库,其中存储了自 2008 年以来收集的数 PB 级网络数据,任何人都能免费使用这些数据。由于数据集规模巨大,许多人工智能项目,包括 OpenAI、DeepSeek、Google、Meta、Anthropic 和 Stability 等公司的大型语言模型(LLM)训练,可能至少部分依赖这一数字档案。

Truffle Security 公司(TruffleHog 敏感数据开源扫描器背后的公司)的研究人员对 Common Crawl 2024 年 12 月档案中 267 亿个网页的 400 TB 数据进行检查后,发现了 11,908 个成功验证的有效机密。这些机密均为开发人员硬编码,这意味着 LLM 存在在不安全代码上进行训练的可能性。

在这些机密中,有 Amazon Web Services(AWS)的根密钥、MailChimp API 密钥以及 WalkScore 服务的有效 API 密钥等。

\"image.png\"/前端 HTML

源代码中的 AWS 根密钥:Truffle Security

TruffleHog 在 Common Crawl 数据集中总共识别出 219 种不同类型的秘密,其中最常见的是 MailChimp API 密钥,近 1,500 个独特的 Mailchimp API 密钥被硬编码在前端 HTML 和 JavaScript 中。

\"image.png\"/

MailChimp API 密钥在前端 HTML 源

代码中泄露:Truffle Security

开发人员的失误在于将这些密钥硬编码到 HTML 表单和 JavaScript 片段中,而未使用服务器端环境变量,这使得攻击者有可能利用这些密钥开展恶意活动,如进行网络钓鱼、品牌冒充,进而导致数据泄露。

此外,研究人员还发现报告中的机密存在高重复使用率,63% 的机密出现在多个页面上。例如,一个 WalkScore API 密钥在 1,871 个子域中出现了 57,029 次。研究人员还在一个网页上发现了 17 个独特的实时 Slack webhook,而 Slack 明确警告 webhook URL 包含秘密,严禁在网上(包括通过公共版本控制存储库)分享。

尽管 LLM 训练数据会经过预处理阶段,旨在清理和过滤掉不相关数据、重复内容、有害或敏感信息,但机密数据仍然难以彻底删除,且无法保证完全清除如此庞大数据集中的所有个人身份信息(PII)、财务数据、医疗记录和其他敏感内容。

研究结束后,Truffle Security 联系了受影响的供应商,并协助他们撤销了用户的密钥,成功帮助这些组织集体轮换 / 撤销了数千个密钥。即便人工智能模型使用的是比研究人员扫描的数据集更旧的档案,Truffle Security 的发现仍给我们敲响了警钟,不安全的编码实践可能会对 LLM 的行为产生影响。

", - "pubDate": "Thu, 06 Mar 2025 11:02:57 +0800", - "author": "山卡拉" - }, - { - "title": "国产化替换案例:CACTER邮件网关为Groupwise系统加固邮件安全防线", - "link": "https://www.4hou.com/posts/kgKJ", - "description": "

电子邮件作为企业信息流转的命脉,承载着商业机密与客户数据。然而,网络攻击手段日益复杂,钓鱼邮件等威胁正快速侵蚀企业安全防线。据《2024年第四季度企业邮箱安全性研究报告》显示,2024年Q4企业邮箱用户遭遇的钓鱼邮件数量激增至2.1亿封。


在此背景下,构建智能化、高可靠的邮件安全体系成为企业关键课题。某电子制造企业采用CACTER邮件安全网关后,成功化解邮件安全危机,为行业提供了重要实践参考。

\"邮件安全网关域内解决方案.png\"/


客户介绍

该电子制造企业作为电子制造领域的佼佼者,专注于高端电子元器件的研发与生产,其产品远销全球,凭借卓越的品质赢得了广泛赞誉,荣获多项行业殊荣。随着企业业务版图的持续扩张,内部沟通对外协作日益频繁,邮件系统作为信息传递的关键枢纽,其安全性和稳定性的重要性不言而喻。


客户面临的安全挑战

此前,该企业采用Groupwise邮件系统搭配梭子鱼网关进行邮件安全管理。然而,原有的网关在应对钓鱼邮件和垃圾邮件方面逐渐暴露出诸多问题,钓鱼邮件漏判率高、垃圾邮件过滤效果差,导致大量恶意邮件涌入员工收件箱,正常邮件被误判为垃圾邮件,需人工频繁干预放行。不仅干扰了员工正常的工作流程,还给企业带来了潜在的安全风险。


因此,该企业急需一款既能精准拦截恶意威胁邮件,又能无缝兼容现有系统的邮件安全网关。该企业对市面上多家网关厂商进行了测试筛选,在众多产品中,CACTER邮件安全网关脱颖而出,成为该企业替换梭子鱼网关的理想之选。


CACTER邮件安全网关智能重塑企业安全防线

精准拦截,恶意邮件无所遁形

此前,该企业使用的梭子鱼网关的漏判问题导致员工收件箱充斥钓鱼邮件,误判正常邮件更让IT团队疲于手动处理。部署CACTER邮件安全网关后,利用其自主研发的NERVE2.0神经网络平台深度学习能力,对恶意邮件进行精准识别和拦截,反垃圾准确率高达 99.8%,误判率低于 0.02%。从而使得员工收到的恶意邮件数量锐减,正常邮件自动放行,IT运维效率大幅提升,摆脱“人工筛邮件”的被动局面。

\"高精准的恶意邮件拦截.png\"/


平滑迁移,业务运行零干扰

考虑到该企业替换老旧网关时担心影响业务正常运行,CACTER提供了一套成熟的迁移方案:

  • 规则迁移:将原有网关的规则快速导出,批量导入CACTER邮件安全网关;

  • 新旧网关并行/试运行:CAC品质组7天品质监控,动态调优,逐步将旧网关下架,确保业务正常进行;

  • 灰度上线&多域名分批切换:分批次切换邮件域名流量,确保业务连续性。

CACTER邮件安全网关替换方案成熟,可使原有网关业务三步平滑迁移,迁移过程用户零感知,不影响该企业现有业务。


客户评价

“CACTER邮件安全网关在恶意邮件拦截方面表现出色,有效提升了公司的邮件安全水平。同时,CACTER邮件安全网关与公司现有的Groupwise邮件系统兼容性良好,有效保障公司内部邮箱安全运行。”

——某电子制造企业IT负责人

CACTER邮件安全网关凭借精准的恶意威胁检测能力和成熟的平滑迁移方案两大优势,成功帮助该企业解决了老旧网关性能滞后、威胁防护不足的痛点,为该企业的全球业务筑起了一道可靠的邮件安全防线。CACTER邮件安全网关不仅支持Groupwise邮件系统,而且支持Coremail、Exchange、O365、Gmail 、IBM Domino、lotus notes、网易企邮、飞书企邮等几乎所有邮件系统。


至今,CACTER已为20000+家企业构建邮件安全防线,覆盖制造、金融、教育、政府、医疗等多个行业,成为国产化替代浪潮中的标杆解决方案。未来,CACTER将持续深耕邮件安全领域,以技术革新助力企业应对复杂多变的网络威胁,守护企业邮件安全。


CACTER邮件安全网关支持免费试用15天!

扫码添加“CACTER小助手” 或直接致电咨询400-000-8664

\"小助手二维码.jpg\"/


", - "pubDate": "Thu, 06 Mar 2025 10:25:47 +0800", - "author": "Coremail邮件安全" - }, - { - "title": "新型恶意软件猛攻 4000 多家 ISP,从而实现远程入侵", - "link": "https://www.4hou.com/posts/gyKr", - "description": "

\"ISPs.png\"/

近期,Splunk 威胁研究团队发现了一起大规模恶意软件攻击活动,4000 多家互联网服务提供商(ISP)深受其害,黑客借此获得了关键基础设施的远程访问权限。种种迹象表明,此次攻击或源自东欧,攻击者运用了暴力攻击手段、植入加密挖掘负载,并采用了先进的规避技术。

攻击概述

该恶意软件专门针对 ISP 系统中存在的弱凭证,通过暴力破解的方式强行渗透进入。一旦成功潜入系统,攻击者便迅速部署一系列恶意二进制文件,像 mig.rdp.exe、x64.exe 和 migrate.exe 等。这些文件一方面执行加密挖掘操作,利用受害系统的计算资源谋取利益;另一方面,负责窃取敏感信息。

这些恶意有效载荷具备多种破坏能力,它们能够禁用系统的安全功能,通过命令和控制(C2)服务器(其中包括 Telegram 机器人)将窃取的数据泄露出去,并且能够在受感染的网络中寻找并攻击其他目标。在受感染网络中横向移动时,该恶意软件主要借助 Windows 远程管理(WINRM)服务。它运用编码的 PowerShell 脚本,不仅可以禁用防病毒保护,终止其他竞争的加密矿工程序,还能在受感染的系统上建立起长期的控制权,同时修改目录权限,限制用户访问,防止自身文件被发现。

\"image.png\"/

启用目录的继承权限

技术细节

此次恶意软件活动采用自解压 RAR 档案(SFX)的方式,极大地简化了部署过程。以 mig.rdp.exe 有效载荷为例,它会释放出多个文件,其中包含批处理脚本(ru.bat、st.bat)和可执行文件(migrate.exe)。这些文件会禁用 Windows Defender 的实时监控功能,并添加恶意例外,以此躲避安全软件的检测。另一个组件 MicrosoftPrt.exe 则充当剪贴板劫持程序,专门针对比特币(BTC)、以太坊(ETH)、莱特币(LTC)等加密货币的钱包地址进行窃取。

攻击者还使用 masscan.exe 这类大规模扫描工具,识别 ISP 基础设施内易受攻击的 IP 范围。一旦确定目标,便利用 SSH 或 WINRM 协议进一步获取访问权限。

\"image.png\"/

SSH 连接凭证

为了提高攻击效率,攻击者利用 Python 编译的可执行文件实现自动化操作,这样既能最大限度减少操作痕迹,又能在受限环境中保持高效运作。像 Superfetch.exe(XMRig 加密矿工)、IntelConfigService.exe(用于逃避防御的 AutoIt 脚本)以及 MicrosoftPrt.exe 等文件,均已被研究人员标记。这些文件通常隐藏在诸如 C:\\Windows\\Tasks\\ 或 C:\\ProgramData\\ 等非常规目录中。此外,该恶意软件还会操纵注册表项,禁用远程桌面协议(RDP)服务,注销活跃用户,以此阻碍受害方的补救工作。

此次活动凸显了针对关键基础设施提供商的恶意软件日益复杂化。

通过将加密挖掘与凭证盗窃和高级持久性机制相结合,攻击者的目标是最大限度地利用资源,同时逃避检测。

使用 Telegram 机器人作为 C2 服务器进一步使传统的网络监控工作复杂化。

Splunk发布了一套检测规则,帮助组织识别与此活动相关的可疑活动。

这些包括针对不寻常文件路径、基于 WINRM 的 PowerShell 执行以及与 Telegram API 相关的 DNS 查询的警报。

由于互联网服务提供商 (ISP) 仍然是数字连接的重要支柱,此次攻击凸显了采取强有力的网络安全措施的迫切需求。

建议组织实施强密码策略,密切监控端点活动,并部署先进的威胁检测工具,以减轻与此类复杂活动相关的风险。

", - "pubDate": "Wed, 05 Mar 2025 11:02:25 +0800", - "author": "山卡拉" - }, - { - "title": "全国政协委员肖新光:网络安全人才培养要坚持实战化导向", - "link": "https://www.4hou.com/posts/2XrM", - "description": "

网络安全是国家安全的重要组成部分,青年人才构建网络安全防线的关键力量。全国政协委员、安天科技集团董事长肖新光一直关注并用实际行支持青年网络安全人才的培养。

针对网络安全人才缺口和培养实战性需要,安天科技集团设立了大学生实习基地,力求通过广泛的合作及模式创新,培养合格的网络安全人才。

“网络安全实战人才依然极为稀缺。”肖新光指出必须,“网络安全人才培养坚持实战化的导向。”

此外,肖新光还表示,“我特别注意到,当前网络安全专业技术人才在某些关键领域存在能力不足的倾向,特别是在系统底层的内核级开发和二进制威胁分析能力方面。然而,这些领域曾是中国网络安全从行业群体的显着优势。”

肖新光提出:“我们需要通过一系列举措来巩固我国人才梯队技术和威胁分析方面的能力,产生持续保持优势,并转化为整个人才梯队的核心竞争力。只有这样,才能确保我们的人才拥有全面且强大的能力。”

来源:中国青年报

", - "pubDate": "Tue, 04 Mar 2025 15:12:36 +0800", + "title": "各种Claw层出不穷,你的龙虾是否也已沦为“黑客内鬼”?", + "link": "https://www.4hou.com/posts/RX2V", + "description": "

AI智能体工具OpenClaw的爆火,催生出一个现象级的开发者生态。截至2026年3月,与OpenClaw功能属性相同、设计逻辑相似的衍生项目已超300个,成为高效开发范式下的典型代表。

但繁荣背后,安全隐患已全面凸显。大量类OpenClaw工具为追求便捷性与自动化,舍弃基础安全设计,导致超13.5万个公网实例处于无防护的“裸奔”状态,黑客自动化扫描、接管攻击已成为现实,原本的生产力工具,正面临沦为黑客“内鬼”的风险。

一、300余项目快速迭代,创新背后暗藏安全短板

OpenClaw带动的开源AI智能体生态呈爆发式增长,目前在claw工具社区中已有超25个活跃项目被收录,贡献者超5000人,OpenClaw新变种持续涌现。其中,中国团队的创新成果尤为突出,在嵌入式、商业模式、云端集成等方向形成引领,展现出国内在该领域的技术实力。

项目名称

GitHub

关注量

关键特点

中国团队

OpenClaw

292K+

原版全功能本地AI助手,支持多工具调用,占用内存约512MB

PicoClaw

22K+

超轻量设计,占用内存<10MB,用于嵌入式/IoT领域

NanoClaw

20K+

容器化部署,主打安全与隐私保护,代码量精简

ZeroClaw

24K+

二进制体积小,内存运行安全,性能表现优异

ClawWork

6K+

打造“AI同事”模式,可完成多类职业基础任务

KimiClaw

-

浏览器原生集成,含5000+技能,配备40GB云存储

在高效开发的导向下,类OpenClaw项目普遍采用“先上线、后安全”的模式,导致架构性安全风险突出。不同工具变种的设计逻辑,形成了功能与安全的明确权衡,四类主流应用类型均存在难以规避的剩余风险。

类型

代表项目

核心安全策略

剩余主要风险

全功能原生版

OpenClaw

无限制工具调用,最大化实现自动化

攻击面最大,默认配置存在系统级远程执行风险

语言级加固版

ZeroClaw

采用内存安全语言重构代码,夯实基础安全

仍存在逻辑漏洞,插件层未做安全隔离处理

沙箱隔离版

IronClaw

引入容器化执行环境,做操作范围隔离

性能有损耗,复杂文件系统交互受限制

云端托管版

KimiClaw

工具托管于服务商环境,远离用户本地资产

仍无法规避恶意指令注入带来的信息泄露风险

二、四大核心攻击面,成为黑客操控AI工具的关键路径

尽管各类Claw工具的代码实现存在差异,但核心逻辑架构高度相似,输入、鉴权、执行、生态四大层面,成为黑客的主要攻击突破口,直接导致工具从生产力载体沦为窃取信息、破坏系统的“内鬼”。

输入层:恶意指令注入,直接劫持工具逻辑

这是AI智能体工具的核心安全威胁。类OpenClaw工具普遍具备自动读取邮件、网页、即时通讯消息的功能,黑客可通过发送含恶意指令的内容,让工具误将其判定为高优先级执行指令,进而完成信息窃取、操作篡改等行为。

\"图片1.png\"/

图-借助邮件的OpenClaw间接提示词注入

鉴权层:访问控制缺失,工具实例全网暴露

大量开发者在部署工具时,忽视基础的访问权限设置,或为调试便捷关闭权限认证、使用简易验证令牌,加之工具对本地地址的默认信任机制,导致全球超13.5万个公网实例无有效防护,黑客通过简单的扫描手段,即可直接接管工具控制台。

执行层:高权限无监督,操作风险无限放大

类OpenClaw工具被赋予较高的系统操作权限,且多以主机高权限运行,同时多数工具未设置操作监督机制,也无工具调用的二次确认流程。一旦工具被注入恶意指令,其高权限将成为黑客的“攻击利刃”,轻易实现文件篡改、系统破坏等操作。

生态层:插件供应链无管控,成为投毒重灾区

插件市场是类OpenClaw生态的最大安全变量。黑客会发布功能诱人的插件,在底层代码中隐藏恶意程序,而工具本身缺乏插件代码审计和运行时行为监控能力,恶意插件一旦被安装,即可实现长期驻留,持续窃取信息或控制设备。

\"图片2.png\"/

图-恶意Skills

核心洞察:当前类OpenClaw工具均以自然语言解析、开放式外部工具调用为核心架构,且未做物理层面的沙箱隔离,因此无法从根本上规避恶意指令注入带来的系统级接管风险。

三、高危漏洞集中爆发,系统性安全风险凸显

目前社区关注的重点多为插件生态的次生风险,但OpenClaw自身的代码质量缺陷、开发范式漏洞,才是引发系统性安全问题的根源。工具普遍存在输入验证缺失、访问控制不严、资源配置不当等问题,其GitHub仓库短期积压超6700个问题,维护响应滞后,进一步放大了安全风险。

\"图片3.png\"/

图-OpenClaw相关部分漏洞披露时间线

已有多个高危漏洞被披露,部分已获得CVE编号,攻击影响覆盖未授权访问、任意命令执行、权限提升等多个方面,对个人及企业资产安全构成严重威胁。绿盟科技大模型风险评估工具(AI-SCAN)可进行OpenClaw相关资产风险发现。

漏洞名称

CVE编号

潜在影响

错误反向代理配置导致未授权访问


攻击者可直接连接工具高权限控制界面,实现全程接管

1click漏洞-网关地址篡改

CVE-2026-25253

通过钓鱼链接诱骗点击,窃取验证令牌,进而执行任意命令

SSH命令注入漏洞

CVE-2026-25157

构造恶意远程登录目标,在客户端触发本地恶意命令执行

提示词注入风险扩大

CVE-2026-24764

扩大恶意指令注入攻击面,易引发非预期操作及信息泄露

Docker沙箱命令注入

CVE-2026-24763

通过操纵环境变量,绕开沙箱隔离实现命令注入

参数过大导致拒绝服务

CVE-2026-29612

造成工具服务崩溃、设备资源耗尽,实现拒绝服务攻击

共享主机权限提升

CVE-2026-27486

可终止其他用户进程,实现权限提升或系统破坏

沙箱容器重建哈希

CVE-2026-27007

绕开容器安全配置,引发非预期的设备控制风险

四、分角色安全应对策略,构建全生命周期安全防护体系

解决类OpenClaw工具的共性安全风险,核心是构建全生命周期、系统性的安全防护与评估能力:在设计阶段严格遵循最小权限原则,运行阶段引入沙箱隔离机制,强化外部输入内容的过滤与管控,同时建立工具资产的自动发现、持续风险评估与动态加固能力,推动AI智能体从“高危实验品”转变为可信、可控的生产力基础设施。

个人用户和开发者:拒绝盲目部署,做好基础安全隔离

1. 不将工具部署在存储敏感数据、高价值认证凭据的主机上,优先选择虚拟机、容器、专用云服务器等隔离环境运行;

2. 定期检查已安装的本地skills和插件,及时删除来源不明、功能存疑的插件,并将工具更新至最新版本;

3. 云资源管理、加密资产操作等设计系统修改的高危操作,避免通过AI工具执行。

企业安全团队:建立全流程治理体系,强化风险管控

1. 搭建AI智能体资产发现与治理能力,实现企业内部工具的精准识别、动态监测,做到安全风险早发现、早处置;

2. 工具部署时强制实施网络隔离、严格身份认证,绑定本地访问地址,禁用默认无认证模式,遵循最小权限原则,限制工具的文件、网络及系统调用权限;

3. 部署专业AI安全防护设备或沙箱隔离方案,对工具的所有输入、输出内容进行实时检测与过滤,拦截恶意操作;

4. 建立智能体专用审计日志体系,完整记录工具调用、API请求、敏感操作等行为,支撑事后安全溯源与合规审计。

开源社区和项目维护者:完善安全开发流程,筑牢生态安全防线

1. 强化安全开发生命周期实践,将安全设计、代码审计与功能迭代同步推进,从源头减少安全漏洞;

2. 针对插件市场建立自动化检测机制,通过静态检测、代码语义分析、沙箱分析等手段,完善插件上架审核、人工抽检、用户举报响应体系;

3. 建立标准化漏洞响应流程,对安全研究人员反馈的漏洞及时评估、修复,并同步发布安全公告,提醒用户做好防护。

", + "pubDate": "Tue, 07 Apr 2026 14:52:12 +0800", "author": "企业资讯" } ] \ No newline at end of file diff --git a/resources/JSON/anquanke.json b/resources/JSON/anquanke.json index 2a33d80..2ac20e4 100644 --- a/resources/JSON/anquanke.json +++ b/resources/JSON/anquanke.json @@ -1,162 +1,162 @@ [ { - "guid": "https://www.anquanke.com/post/id/305052", - "title": "腾达 AC7 路由器漏洞:攻击者可借助恶意有效载荷获取 Root Shell 权限", - "author": " 安全客", + "guid": "https://www.anquanke.com/post/id/315489", + "title": "科技云报到:智算千亿赛道向何方?一文读懂信通院《2026智能算力服务研究报告》", + "author": " 科技云报到", "description": null, - "source": "cybersecuritynews", - "pubDate": "2025-03-14 11:32:33" + "source": null, + "pubDate": "2026-05-12 16:57:09" }, { - "guid": "https://www.anquanke.com/post/id/305049", - "title": "GitLab警告:多个高危漏洞或致使攻击者可冒充有效用户登录", - "author": " 安全客", + "guid": "https://www.anquanke.com/post/id/315487", + "title": "亿格云完成数亿元B轮融资,加码“人+AI”统一安全治理", + "author": " 亿格云", "description": null, - "source": "cybersecuritynews", - "pubDate": "2025-03-14 11:24:45" + "source": null, + "pubDate": "2026-05-12 16:36:31" }, { - "guid": "https://www.anquanke.com/post/id/305045", - "title": "Siemens SINAMICS S200 陷安全危机,引导加载程序漏洞引攻击者觊觎", - "author": " 安全客", + "guid": "https://www.anquanke.com/post/id/315417", + "title": "安全进入“AI自主攻击”时代,瑞数信息如何用AI对抗AI", + "author": " 科技云报到", "description": null, - "source": "cybersecuritynews", - "pubDate": "2025-03-14 11:18:08" + "source": null, + "pubDate": "2026-04-29 16:51:10" }, { - "guid": "https://www.anquanke.com/post/id/305043", - "title": "微软警示:ClickFix 通过虚假 Booking. com 邮件,对酒店业展开网络钓鱼行动", - "author": " 安全客", + "guid": "https://www.anquanke.com/post/id/315419", + "title": "智能体关键年:Agent扎根业务流,AI生产力正在形成", + "author": " 科技云报到", "description": null, - "source": "TheHackersNews", - "pubDate": "2025-03-14 11:05:39" + "source": null, + "pubDate": "2026-04-29 16:50:36" }, { - "guid": "https://www.anquanke.com/post/id/305041", - "title": "黑客滥用Microsoft Copilot进行复杂的网络钓鱼攻击", + "guid": "https://www.anquanke.com/post/id/315390", + "title": "深度分析Sorry勒索软件的加密实现与行为特征", "author": " 安全客", "description": null, - "source": "cybersecuritynews", - "pubDate": "2025-03-14 10:54:30" + "source": null, + "pubDate": "2026-04-29 13:32:51" }, { - "guid": "https://www.anquanke.com/post/id/305038", - "title": "勒索软件攻击达到历史新高:2025年2月攻击数量激增126%", - "author": " 安全客", + "guid": "https://www.anquanke.com/post/id/315341", + "title": "科技云报到:当AI闯入特教行业,一场颠覆变革正在发生!", + "author": " 科技云报到", "description": null, - "source": "hackread", - "pubDate": "2025-03-14 10:36:04" + "source": null, + "pubDate": "2026-04-21 10:21:50" }, { - "guid": "https://www.anquanke.com/post/id/305035", - "title": "Medusa 勒索软件威胁:企业面临的持续挑战", - "author": " 安全客", + "guid": "https://www.anquanke.com/post/id/315337", + "title": "科技云报到:AI云,逻辑变了吗?", + "author": " 科技云报到", "description": null, - "source": "securitybrief", - "pubDate": "2025-03-14 10:23:46" + "source": null, + "pubDate": "2026-04-20 16:21:23" }, { - "guid": "https://www.anquanke.com/post/id/305026", - "title": "360预警:银狐木马又双叒变异,PDF文件成传播“帮凶”", - "author": " 安全客", + "guid": "https://www.anquanke.com/post/id/315292", + "title": "工程化实战思维在红队技战术中的应用", + "author": " 蔚(Yù)谛", "description": null, - "source": "360数字安全", - "pubDate": "2025-03-14 10:08:25" + "source": null, + "pubDate": "2026-04-13 11:15:45" }, { - "guid": "https://www.anquanke.com/post/id/305023", - "title": "ExHub 的 IDOR 漏洞可致攻击者篡改网站托管配置", - "author": " 安全客", + "guid": "https://www.anquanke.com/post/id/315277", + "title": "鸿蒙NEXT应用一键加固——AI Agent助力安全开发", + "author": " 三六零天御", "description": null, - "source": "cybersecuritynews", - "pubDate": "2025-03-13 14:50:25" + "source": null, + "pubDate": "2026-04-10 16:25:22" }, { - "guid": "https://www.anquanke.com/post/id/305020", - "title": "施乐打印机漏洞可致攻击者从PDA和SMB捕获身份验证数据", - "author": " 安全客", + "guid": "https://www.anquanke.com/post/id/315253", + "title": "科技云报到:AI算力革命,终结云计算20年降价史", + "author": " 科技云报到", "description": null, - "source": "cybersecuritynews", - "pubDate": "2025-03-13 14:39:42" + "source": null, + "pubDate": "2026-04-03 17:38:08" }, { - "guid": "https://www.anquanke.com/post/id/305015", - "title": "瞻博网络成功修复 Session Smart Router 关键漏洞", - "author": " 安全客", + "guid": "https://www.anquanke.com/post/id/315234", + "title": "科技云报到:“龙虾”入笼:为何金融行业不敢“养”?", + "author": " 科技云报到", "description": null, - "source": "securityaffairs 2", - "pubDate": "2025-03-13 11:38:18" + "source": null, + "pubDate": "2026-03-27 10:44:02" }, { - "guid": "https://www.anquanke.com/post/id/305013", - "title": "Blind Eagle APT-C-36:快速利用补丁漏洞,借知名平台发动网络攻击", - "author": " 安全客", + "guid": "https://www.anquanke.com/post/id/315195", + "title": "科技云报到:“龙虾”OpenClaw狂欢之下,需要一针清醒剂", + "author": " 科技云报到", "description": null, - "source": "cybersecuritynews", - "pubDate": "2025-03-13 11:24:58" + "source": null, + "pubDate": "2026-03-19 16:04:44" }, { - "guid": "https://www.anquanke.com/post/id/305010", - "title": "通过 YouTube 传播的 DCRat 恶意软件正攻击用户以窃取登录凭证", - "author": " 安全客", + "guid": "https://www.anquanke.com/post/id/315209", + "title": "瑞数信息入选IDC两大AI安全报告,防御OpenClaw小龙虾裸奔危机", + "author": " 科技云报到", "description": null, - "source": "cybersecuritynews", - "pubDate": "2025-03-13 11:03:28" + "source": null, + "pubDate": "2026-03-19 16:04:10" }, { - "guid": "https://www.anquanke.com/post/id/305007", - "title": "不断演变的分布式拒绝服务(DDoS)攻击策略:网络专家剖析社交媒体平台X的遭袭事件", - "author": " 安全客", + "guid": "https://www.anquanke.com/post/id/315197", + "title": "2026首届汽车安全白帽黑客大会圆满收官,共筑车联网安全新生态", + "author": " 泽鹿安全", "description": null, - "source": "securitybrief", - "pubDate": "2025-03-13 10:49:42" + "source": null, + "pubDate": "2026-03-19 12:15:49" }, { - "guid": "https://www.anquanke.com/post/id/305005", - "title": "新型Anubis恶意软件:可完全躲避检测,让黑客得以执行远程命令", + "guid": "https://www.anquanke.com/post/id/315140", + "title": "Ally WordPress插件高危SQL注入漏洞 威胁40万个网站", "author": " 安全客", "description": null, - "source": "cybersecuritynews", - "pubDate": "2025-03-13 10:41:12" + "source": "securityonline", + "pubDate": "2026-03-13 10:34:49" }, { - "guid": "https://www.anquanke.com/post/id/305002", - "title": "Opentext推出人工智能网络安全解决方案抵御威胁", + "guid": "https://www.anquanke.com/post/id/315145", + "title": "OpenAI战略调整Sora视频AI将直接接入ChatGPT", "author": " 安全客", "description": null, - "source": "securitybrief", - "pubDate": "2025-03-13 10:23:40" + "source": "webpronews", + "pubDate": "2026-03-13 10:34:23" }, { - "guid": "https://www.anquanke.com/post/id/304997", - "title": "Nasuni 与 CrowdStrike 合作,大幅提升威胁检测效能", + "guid": "https://www.anquanke.com/post/id/315148", + "title": "HPE发布Aruba OS高危漏洞预警 可未授权重置密码", "author": " 安全客", "description": null, - "source": "securitybrief", - "pubDate": "2025-03-13 10:13:45" + "source": "webpronews", + "pubDate": "2026-03-13 10:34:00" }, { - "guid": "https://www.anquanke.com/post/id/304995", - "title": "360携手首都在线 拟推动DeepSeek一体机安全与服务落地合作", + "guid": "https://www.anquanke.com/post/id/315152", + "title": "能感知自身正在被测试的AI Anthropic关于Claude自我意识的惊人发现", "author": " 安全客", "description": null, - "source": "360数字安全", - "pubDate": "2025-03-13 10:01:25" + "source": "webpronews", + "pubDate": "2026-03-13 10:33:36" }, { - "guid": "https://www.anquanke.com/post/id/304990", - "title": "紧急!CISA 警告苹果 iOS 漏洞正被恶意利用", + "guid": "https://www.anquanke.com/post/id/315155", + "title": "GitLab发布紧急安全更新 修复高危XSS与API拒绝服务漏洞", "author": " 安全客", "description": null, - "source": "cybersecuritynews", - "pubDate": "2025-03-12 17:53:54" + "source": "securityonline", + "pubDate": "2026-03-13 10:33:13" }, { - "guid": "https://www.anquanke.com/post/id/304988", - "title": "360携手清微智能DeepSeek一体机 拟推动“国产算力+大模型安全+AI应用”协同发展", + "guid": "https://www.anquanke.com/post/id/315158", + "title": "Telegram的黑色面 网络罪犯利用机器人API隐秘窃取数据", "author": " 安全客", "description": null, - "source": "360数字安全", - "pubDate": "2025-03-12 17:40:24" + "source": "securityonline", + "pubDate": "2026-03-13 10:32:51" } ] \ No newline at end of file diff --git a/resources/JSON/baidu.json b/resources/JSON/baidu.json index c7be9d1..9533ce3 100644 --- a/resources/JSON/baidu.json +++ b/resources/JSON/baidu.json @@ -1,144 +1,749 @@ { - "齐鲁银行": [ + "银行测试": [ { - "title": "齐鲁银行在您身旁", - "link": "https://www.qlbchina.com/", - "description": "关于规范个人贷款资金使用及警惕冒用银行名义营销的风险提示 — 2024年11月26日 关于银行卡系统维护的公告 — 2024年11月25日 齐鲁银行 关于金融IC借记卡有效期到期服务的客户公告 — 2024年11月22日 关于发售2025年第1期齐鲁银行济南市外机构个人大额存单(3年期 )的公告 ...", + "title": "银行压力测试- 百度百科", + "link": "https://baike.baidu.com/item/%E9%93%B6%E8%A1%8C%E5%8E%8B%E5%8A%9B%E6%B5%8B%E8%AF%95/2786826", + "description": "银行 压力 测试 是以定量分析为主的风险分析方法,涵盖信用风险、市场风险、流动性风险和操作风险等领域,要求商业银行综合评估不同风险的相互作用。该方法由美国财长盖特纳在2009年提出的金融稳定计划中列为重点,欧盟要求大型银行通过压力测试检测资产负债表隐患。国际货币基金组织和世界银行于1999年将压力测试纳入金融部门评估计划作为核心工具", "author": "百度快照", - "pubDate": "2024-10-22" + "pubDate": "2025-11-29" }, { - "title": "齐鲁银行在您身旁总行", - "link": "https://www.qlbchina.com/qlbchina/jrql/xwgg/cggg/zx/index.html", - "description": "齐鲁银行 银企大集系统优化升级项目(二次)竞争性磋商公告 [2025-01-06] 齐鲁银行信用卡多渠道进件及信用卡审批系统人力外包项目(二次)竞争性磋商公告 [2025-01-06] 齐鲁银行村镇智能柜台系统改造项目竞争性磋商公告 [2025-01-03] 齐鲁银行商用密码安全评估服务项目 ...", + "title": "【学习】银行测试项目和普通测试有哪些区别?_银行测试和普通项目...", + "link": "https://blog.csdn.net/qdguozhixin/article/details/137777453", + "description": "此外, 银行测试 项目还需对数据进行加密和保护,以防止信息泄露。而常规测试项目在风险控制方面的要求相对较低。 四、监管要求 银行业务受到严格的监管,因此银行测试项目必须满足相关法规和政策要求。例如,银行测试项目需要对反洗钱、反恐怖融资等方面进行测试,以确保系统符合相关法律法规。而常规测试项目在监管要求方面相对宽...", "author": "百度快照", - "pubDate": "2025-01-06" + "pubDate": "2024-04-15" }, { - "title": "齐鲁银行(601665)_股票行情,行情首页_中财网", - "link": "https://gg.cfi.cn/quote.aspx?stockid=92680&contenttype=outline&client=pc", - "description": "中财网提供 齐鲁银行 (601665)实时行情动态分析,全面报道齐鲁银行(601665)基本资料及重大新闻、行业资讯,浏览齐鲁银行(601665)财务数据、行情数据,公司公告,重大事件。", + "title": "银行项目测试_银行验收测试-CSDN博客", + "link": "https://blog.csdn.net/2301_76679169/article/details/130297869", + "description": "测试 独立在UAT环境测试;配合业务需求人员在UAT环境验收测试;设计和选取:主流程主要业务功能进行测试,以真实使用系统用户的角度测试,以用户体验角度测试系统,发现系统的功能操作是否简单容易,是否符合用户的操作习惯。 准(预)生产测试 准生产测试的环境配置与生产环境接近;测试时主要检查项目版本是否正确完整发布到该环境,主...", "author": "百度快照", - "pubDate": "2024-12-31" + "pubDate": "2023-04-21" }, { - "title": "齐鲁银行股份有限公司德州分行 - 天眼查", - "link": "https://www.tianyancha.com/company/2354701752", - "description": "简介: 齐鲁银行 股份有限公司德州分行,成立于2014年,位于山东省德州市,是一家以从事货币金融服务为主的企业。通过天眼查大数据分析,齐鲁银行股份有限公司德州分行参与招投标项目9次;此外企业还拥有行政许可8个。风险方面共发现企业有 展开 财产线索 线索47预估价值1亿元 ...", + "title": "【银行测试】银行项目-系统性能测试总结(最详细汇总) - 知乎", + "link": "https://zhuanlan.zhihu.com/p/676034641", + "description": "测试 前对铺底数据的构造可从以下四个方面考虑: 表分区情况: 确认测试环境与生产环境(或预计投产后)的表分区和索引分区规划一致,结合表清理策略确认典型场景中各分区、各表中的数据存量大小和分布情况。 表清理策略: 确认生产环境(或预计投产后)的数据库表(尤其业务热表)清理和备份策略,与表分区情况配合,预铺数据并...", "author": "百度快照", - "pubDate": "2024-12-09" + "pubDate": "2024-01-04" }, { - "title": "齐鲁银行聊城分行 - 百度百科", - "link": "https://baike.baidu.com/item/%E9%BD%90%E9%B2%81%E9%93%B6%E8%A1%8C%E8%81%8A%E5%9F%8E%E5%88%86%E8%A1%8C/6555695", - "description": "作为 齐鲁银行 第一家异地分行,聊城分行自2008年3月19日成立以来,在聊城市委、市政府的领导下,在各级各部门的大力支持和帮助下,始终坚持“服务地方经济,服务中小企业,服务市民百姓”的市场定位,以创建“中小企业首选银行”为目标,将营销和服务的重点放在了中小企业和居民个人业务上,优质高效地开展金融服务,有力...", + "title": "银行金融测试与金融项目测试要点全面解析", + "link": "http://word.baidu.com/noteview/b3ee5f1da36e58fafab069dc5022aaea998f4148.html", + "description": "银行 金融 测试 全攻略 解锁测试新技能 银行金融测试是金融科技领域的守护神 确保系统安全又可靠 从功能到性能 从安全到合规 全方位验证 让金融系统稳如泰山 功能测试 基础中的基础 每个业务场景都要细致入微 转账 贷款 理财...一个都不能少 性能测试 模拟真实场景...", "author": "百度快照", - "pubDate": "2024-07-22" + "pubDate": "2026-04-09" }, { - "title": "齐鲁银行信用卡申请进度入口查询 - 首页", - "link": "https://ebank.qlbchina.com/pbank/", - "description": "正在加载请稍候……", + "title": "银行测试是做什么的", + "link": "https://aiqicha.baidu.com/details/ugknowledge?id=c321e1a3a1eef3056844dff7106b588d", + "description": "银行测试 是针对银行软件系统(如柜面、信贷、网银系统)和专用设备(如ATM机)进行的一系列测试工作,旨在确保系统的功能正确性、业务流畅性、性能稳定性和安全性,以保障金融业务正常运行和用户资金安全。 1 测试对象与核心目的 测试对象:主要包括银行核心业务系统(如柜面、信贷、核心系统)、渠道系统(如手机银行、网上银行...", "author": "百度快照", - "pubDate": "2025-01-08" + "pubDate": "2026-03-10" }, { - "title": "14项违规!齐鲁银行收1495万罚单,副行长陶文喆连带被罚 - 知乎", - "link": "https://zhuanlan.zhihu.com/p/677564348", - "description": "最近,国家金融监管总局山东监管局披露相关罚单,显示 齐鲁银行 因存在14项主要违法违规事实,被没收违法所得并罚款合计1495.126802万元。其中,分支机构罚没120万,总行罚没1375.126802万元,罚单开出时间为2023年12月28日。 具体而言,齐鲁银行此次罚单涉及的违法违规事实包括小微企业划型不到位;违规向小微企业收取费用;个贷、房地...", + "title": "银行测试是干什么 - 百度知道", + "link": "https://zhidao.baidu.com/question/1972182363540511500.html", + "description": "银行测试 是银行为了确保其业务运营的稳健性、合规性以及客户服务质量的持续提升而进行的各项测试活动。以下是银行测试的主要目的和类型:1. 风险管理测试:信用风险测试:主要评估借款人的信用状况,确保贷款发放的合理性,降低信用风险。市场风险测试:监控市场波动对银行资产和负债价值的影响,帮助银行制定应对...", "author": "百度快照", - "pubDate": "2024-01-12" + "pubDate": "2025-04-07" }, { - "title": "齐鲁银行是国企还是私企?", - "link": "http://baijiahao.baidu.com/s?id=1716751640979713811&wfr=spider&for=pc", - "description": "齐鲁银行 的性质属于私企,它在1996年6月份正式成立齐鲁银行,有众多股东,这其中包括国有公司中资法人的公司,个人企业以及外资公司等共同组建,是一家股份制的商业银行。它也是全国首批设立的城市商业银行,总部就位于山东的省会济南,该公司最大的股东就是澳洲联邦银行。齐鲁银行作为一家地方性银行,其涵盖领域众多,...", - "author": "百度快照", - "pubDate": "2021-11-18" - }, - { - "title": "齐鲁银行违反《反洗钱法》规定 被罚款30万元 - 每日经济新闻", - "link": "http://baijiahao.baidu.com/s?id=1651509754800941149&wfr=spider&for=pc", - "description": "齐鲁银行 的性质属于私企,它在1996年6月份正式成立齐鲁银行,有众多股东,这其中包括国有公司中资法人的公司,个人企业以及外资公司等共同组建,是一家股份制的商业银行。它也是全国首批设立的城市商业银行,总部就位于山东的省会济南,该公司最大的股东就是澳洲联邦银行。齐鲁银行作为一家地方性银行,其涵盖领域众多,...", - "author": "百度快照", - "pubDate": "No timestamp found" - }, - { - "title": "齐鲁银行5.40(-1.46%)_股票行情_新浪财经_新浪网", - "link": "http://finance.sina.com.cn/realstock/company/sh601665/nc.shtml", - "description": "新浪财经为您提供 齐鲁银行 (601665)股票实时行情走势,实时资金流向,实时新闻资讯,研究报告,股吧互动,交易信息,个股点评,公告,财务指标分析等与齐鲁银行(601665)股票相关的信息与服务.", - "author": "百度快照", - "pubDate": "2025-01-08" - }, - { - "title": "齐鲁银行", - "link": "http://gjxy.sdau.edu.cn/2017/1226/c3557a119546/page.htm", - "description": "2008年11月30日,该行天津分行开业,由此成为山东省首家在省外异地设立分行的城市商业银行。 2010年8月27日,青岛分行成立。 截至2009年12月31日, 齐鲁银行 辖有72家分、支行(部),在岗员工1800余人。全行总资产617.35亿元,是成立之初的19倍;各项存款余额546.55亿元,是成立时的20倍;各项贷款余额353.1亿元,是成立时的20...", - "author": "百度快照", - "pubDate": "2017-12-26" - }, - { - "title": "齐鲁银行(601665)股本结构_新浪财经_新浪网", - "link": "http://vip.stock.finance.sina.com.cn/corp/go.php/vCI_StockStructure/stockid/601665.phtml", - "description": "齐鲁银行 5.59 -0.06-1.06% 2024-12-31 15:00:01 昨收盘:5.65今开盘:5.65最高价:5.70最低价:5.59 市值:270.28亿元 流通:270.28成交:347797手 换手:0.72% 公司资料意见反馈 公司资料: 公司简介 股本结构 主要股东 流通股股东 基金持股 公司高管 公司章程 ...", - "author": "百度快照", - "pubDate": "2024-12-31" - }, - { - "title": "齐鲁银行(QILU BANK)", - "link": "https://bank.cngold.org/index_51.html", - "description": "简要名称: 齐鲁银行 法人代表:邱云章成立日期:1996-06-06 银行性质:城市商业银行银行行长:郭涛注册资金: 客服热线:40060-96588公司总部:济南市顺河街176号 银行简介:济南市商业银行是山东省成立的首家地方性股份制商业银行。1996年6月6日,在济南市16家城市信用社和1家城信社联社的基础上组建了济南城市合作银行;1998年...", - "author": "百度快照", - "pubDate": "2022-11-09" - }, - { - "title": "齐鲁银行- 搜狗百科", - "link": "https://baike.sogou.com/v7655626.htm", - "description": "齐鲁银行 (Qilu Bank)是一家由国有股份、中资法人股份、外资股份和众多个人股份等共同组成独立法人资格的股份制商业银行,实行一级法人体制,成立于1996年6月,总部位于山东省济南市。其原名济南城市合作银行,于1998年6月6日更名为济南市商业银行,于2009年6月更名为齐鲁", - "author": "百度快照", - "pubDate": "2024-07-10" - }, - { - "title": "齐鲁银行(601665)_股票价格_行情_走势图—东方财富网", - "link": "http://quote.eastmoney.com/unify/r/1.601665?from=classic&eventcode=Web_quote_entrance1", - "description": "提供 齐鲁银行 (601665)股票的行情走势、五档盘口、逐笔交易等实时行情数据,及齐鲁银行(601665)的新闻资讯、公司公告、研究报告、行业研报、F10资料、行业资讯、资金流分析、阶段涨幅、所属板块、财务指标、机构观点、行业排名、估值水平、股吧互动等与齐鲁银行(601665)有关", - "author": "百度快照", - "pubDate": "2025-01-03" - }, - { - "title": "齐鲁银行", - "link": "https://yqhome.qlbchina.com/", - "description": "服务热线:40060-96588 账号登录 UKey登录 立即登录 立即注册忘记密码保函查验", - "author": "百度快照", - "pubDate": "2025-01-08" - }, - { - "title": "齐鲁银行(601665.SH)公司高管-PC_HSF10资料", - "link": "http://f10.eastmoney.com/f10_v2/CompanyManagement.aspx?code=sh601665", - "description": "信贷处办事员、办公室科长,中国农业银行泰安市分行党委委员、副行长,中国农业银行山东省分行办公室副主任、主任,中国农业银行山东省分行党委委员、行长助理,中国农业银行山东省分行党委委员、行长助理兼东营市分行党委书记、行长,中国农业银行山东省分行党委委员、副行长,中国农业银行天津市分行党委书记、行长, 齐鲁银行 党委...", + "title": "银行测试主要测试什么", + "link": "https://localsite.baidu.com/site/wjzsorv8/8cd47d9a-7797-42f3-9306-b902ded71161?qaId=3460778&categoryLv1=%E6%95%99%E8%82%B2%E5%9F%B9%E8%AE%AD&efs=1&ch=54&srcid=10014&source=natural&category=%E9%93%B6%E8%A1%8C%E4%BB%8E%E4%B8%9A%E8%B5%84%E6%A0%BC&eduFrom=136&botSourceType=46", + "description": "银行测试 主要围绕应聘者的多维能力展开评估,涵盖逻辑思维、专业素养、性格适配性等多个层面。其核心目的在于筛选出既具备扎实知识储备,又能适应银", "author": "百度快照", "pubDate": "2024-12-06" }, { - "title": "齐鲁银行山东省网点地址电话查询_齐鲁银行网点-金投网(手机金投网...", - "link": "http://bank.cngold.org/yhwd/list_city_51_16.html", - "description": "齐鲁银行 客服热线:40060-96588 简要名称:齐鲁银行 法定名称:齐鲁银行 银行性质: 城市商业银行 公司总部:济南市顺河街176号山东省-齐鲁银行网点查询 济南(共有105个齐鲁银行网点) 青岛(共有2个齐鲁银行网点) 聊城(共有7个齐鲁银行网点) 热门城市-齐鲁银行网点查询 北京 杭州 天津 重庆 苏州 南京 广州 厦门...", + "title": "最新!软件测试-银行测试全面实战详解,全程干货一套带你上手!_哔哩...", + "link": "https://www.bilibili.com/video/av113424499541375/", + "description": "【银行 测试 】最新版软件测试-银行测试项目实战教程,即学即会攻破银行岗!31671506:04:36app 【完整】pytest自动化测试框架实战教程,从0到1自动化测试框架封装,即学即会!57215101:08:43app 一套拿下!web自动化测试-docker+git+jenkins容器自动化集成,即学即上手!121.2万2.7万50:31:07百万播放 app 最新最全花1w...", "author": "百度快照", - "pubDate": "2025-01-07" + "pubDate": "2024-11-04" }, { - "title": "齐鲁银行天津分行 - 百度百科", - "link": "https://baike.baidu.com/item/%E9%BD%90%E9%B2%81%E9%93%B6%E8%A1%8C%E5%A4%A9%E6%B4%A5%E5%88%86%E8%A1%8C/9614852", - "description": "天津分行是 齐鲁银行 成立的首家省外异地分行,是总行新三年发展规划战略实施的重要一步。在地方党委、政府的关怀下,在监管部门的监管指导下,在社会各界的关心支持下,分行于2008年11月30日正式对外营业。分行领导 总行副行长,天津分行党委书记:柴传早,天津分行行长:张宝银,天津分行副行长:张磊、胡立军,天津分行...", + "title": "银行软件测试有哪些测试点?一般银行的软件测试工作流程有哪些...", + "link": "https://www.zhihu.com/question/351055762/answer/99418952429", + "description": "一、 银行 软件 测试 的测试点 1.功能测试 账户管理:开户、销户、账户信息查询等。转账汇款:行内转账、跨...", "author": "百度快照", - "pubDate": "2024-07-01" + "pubDate": "2025-02-12" }, { - "title": "齐鲁银行在您身旁齐鲁银行信用卡多渠道进件及信用卡审批系统人力...", - "link": "https://www.qlbchina.com/qlbchina/2025-01/06/article_2025010613411012428.html", - "description": "齐鲁银行 信用卡多渠道进件及信用卡审批系统人力外包项目(二次)竞争性磋商公告 齐鲁银行信用卡多渠道进件及信用卡审批系统人力外包项目(二次)竞争性磋商公告.docx", + "title": "银行测评避坑10条!性格测试千万别踩雷💥", + "link": "https://mbd.baidu.com/newspage/data/dtlandingsuper?nid=dt_3780407932263043684", + "description": "\"占小便宜\"\"讲闲话\"\"逃避问题\"这类描述,毫不犹豫选\"不符合\",别给 银行 留下坏印象哦!🙅‍♀️9️⃣ 结果与过程都要抓!📈 选\"重结果也重成长\"的平衡项,银行可是希望员工能兼顾结果和过程的哦!😎🔟 不计分但致命!💥 性格测试是面试的重要参考,必须认真对待!别以为它不计分就无所谓,这可是会刷人的关键", "author": "百度快照", - "pubDate": "2024-12-27" + "pubDate": "2026-04-22" + }, + { + "title": "银行测试工作内容 - 百度文库", + "link": "https://wenku.baidu.com/view/82df1f8ebbf67c1cfad6195f312b3169a451eacb.html", + "description": "银行测试 工作内容 银行测试工作内容 银行测试工作是指对银行系统进行各种测试,以确保其运行稳定、数据安全、功能完备、用户友好等方面的质量。银行测试工作内容包括以下方面:1.功能测试:测试银行系统的各个模块功能是否符合需求,如账户开户、存取款、转账汇款、贷款申请等。2.性能测试:测试银行系统的性能指标,如响应...", + "author": "百度快照", + "pubDate": "2023-05-01" + }, + { + "title": "全程软件测试(八十七):银行业务测试基础—读书笔记", + "link": "https://baijiahao.baidu.com/s?id=1719903831467634475&wfr=spider&for=pc", + "description": "银行测试 介绍 1.银行测试简介及前景 银行测试主要是给银行软件系统或是银行专用设备进行测试的工作。一般银行的系统多为中标公司或合作公司承担开发维护的工作,现在很多银行也成立了自己的科技部并进行了资源扩充,其主要负责银行项目管理及部分开发的工作,但是90%的系统开发维护工作仍然由合作公司来负责。为了保证最终...", + "author": "百度快照", + "pubDate": "2021-12-23" + }, + { + "title": "银行核心项目之测试阶段 - zouhui - 博客园", + "link": "https://www.cnblogs.com/finer/p/10871988.html", + "description": "一、 银行测试 的主要任务 二、银行测试的分类和依据 三、银行测试的案例设计 四、银行测试执行要求及准则 1 银行测试的主要任务 银行作为大家的理财顾问,对金钱非常敏感,频繁甚至偶尔出现的软件故障都会打击顾客的信心,如果来个黑客攻击,个人财产受到威胁,银行也必然蒙受损失。所以银行对系统的质量要求非常高,追求功能稳定...", + "author": "百度快照", + "pubDate": "2019-05-15" + }, + { + "title": "银行软件测试全景:流程、侧重点与关键步骤", + "link": "https://baijiahao.baidu.com/s?id=1858891011651889936&wfr=spider&for=pc", + "description": "流程顺畅、数据一致、系统间“不卡壳”是 银行测试 的硬指标;任何一笔转账、一笔贷款、一次还款,只要业务链路里涉及多家系统,测试就必须把整条链路跑通。银行测试团队通常由行方人员与非行方人员(外包)共同组成:非行方人员:需求吃透、用例设计、手工执行、缺陷跟踪、复测,是测试执行的主力;行方人员:更多扮演“...", + "author": "百度快照", + "pubDate": "2026-03-06" + }, + { + "title": "银行软件测试有哪些测试点?一般银行的软件测试工作流程有哪些...", + "link": "http://quan.51testing.com/pcQuan/article/147715?name=%E6%9B%BC%E5%80%A9%E8%AF%99%E8%B0%90", + "description": "银行测试 行业前景广阔,随着金融科技的快速发展和银行业务的不断创新,银行对软件测试的需求也在持续增长。软件测试在确保银行系统软件的稳定性、安全性和可靠性方面起着至关重要的作用,因此,银行测试岗位一直受到广泛的关注和重视。 此外,随着数字化转型的加速推进,银行测试领域也在逐步向自动化、智能化和云化方向发展,...", + "author": "百度快照", + "pubDate": "2025-05-23" + }, + { + "title": "转行做银行测试,需要了解哪些?_业务_系统_人员", + "link": "https://business.sohu.com/a/777791280_121943715", + "description": "转行做 银行测试 ,需要了解哪些? 在这个内卷严重的时代,银行的业务不断增加,随着软件信息化的要求越来越高,银行对软件测试人员也提出了非常高的要求。 银行的软件测试是针对银行的软件系统(如柜面系统、信贷系统)和银行专用设备(如ATM机、自助柜员机等)进行的一系列测试工作。", + "author": "百度快照", + "pubDate": "2024-05-10" + }, + { + "title": "AI 24小时测试银行核心系统!润和软件的“原子化”将终结金融人海...", + "link": "https://baijiahao.baidu.com/s?id=1865224685631595250&wfr=spider&for=pc", + "description": "当AI智能体开始7×24小时自动 测试银行 核心系统,金融行业的“人海战术”时代真要终结了吗?传统金融测试正面临前所未有的困境。随着数字金融的深入发展,银行产品迭代速度越来越快,测试任务随之激增。为了守住金融安全、客户隐私的底线,银行软件测试必须做到极致严谨。然而,传统测试模式高度依赖人力、周期长、场景覆盖有限...", + "author": "百度快照", + "pubDate": "2026-05-15" + }, + { + "title": "银行测试工程师主要测试什么 – PingCode", + "link": "https://docs.pingcode.com/ask/149641.html", + "description": "银行测试 工程师主要负责对银行系统软件进行功能性、性能、安全性、兼容性等方面的测试,确保软件的稳定性、可靠性和用户体验。这些测试关键点包括但不限于:ATM系统、网上银行系统、支付系统、核心银行业务系统等。其中,核心银行业务系统的测试尤为重要,因为它涉及到账户管理、贷款业务、存取款操作等银行的基础服务,直接影...", + "author": "百度快照", + "pubDate": "2024-04-30" + }, + { + "title": "【银行测试】银行金融测试+金融项目测试点汇总..._金融支付系统测...", + "link": "https://blog.csdn.net/m0_70102063/article/details/135130005", + "description": "1、 银行 金融 测试 是做什么? 银行金融测试是指对银行和金融机构的软件系统、应用和服务进行测试和验证,以确保其安全、可靠、符合法规,并提供良好的用户体验。 银行金融测试的主要目标是评估系统的功能、性能、安全性、合规性和用户体验,以及确认系统在真实环境中的稳定性和可用性。", + "author": "百度快照", + "pubDate": "2023-12-21" + } + ], + "APP逆向": [ + { + "title": "把AndroidApp 逆向分为几步?三步-腾讯云开发者社区-腾讯云", + "link": "https://cloud.tencent.com/developer/article/1541448", + "description": "逆向作为一项与应用开发者对抗的网络安全技术,其手段花样多端,有时甚至不需要代码也可以完成逆向,所以这个概括仅对应文中的遇到情况。 定位目标 本次逆向是针对某款 App 的订单接口,首先我们使用抓包工具捕获订单列表请求,下图为 Charles 界面: 可以看到参数里的 data 字段是密文,我们就使用这个API作为目标切入点。 反编译 APK 这里使", + "author": "百度快照", + "pubDate": "2025-10-11" + }, + { + "title": "Python爬虫进阶:APP逆向技术与实战-百度开发者中心", + "link": "https://developer.baidu.com/article/details/3258071", + "description": "APP逆向技术是指通过反编译、调试等手段,获取APP的内部逻辑、数据结构、加密算法等信息,进而实现对APP功能的扩展或数据抓取 。APP逆向技术主要涉及以下几个方面: 反编译技术:将APP的二进制文件转换回源代码,便于分析和理解。 动态调试技术:在APP运行过程中,通过插入断点、查看变量值等手段,实时了解APP的运行状态。 加密...", + "author": "百度快照", + "pubDate": "2024-03-22" + }, + { + "title": "Android逆向实战:一款APP的深度探索与逆向解析", + "link": "https://cloud.baidu.com/article/3305461", + "description": "随着移动互联网的普及,Android平台上的应用数量与日俱增。但你是否想过,这些 APP 是如何运作的?它们的源代码是否如我们所见的那般简单?今天,我们将通过一款实际的APP,来探讨其 逆向 过程,解析其中的奥秘。", + "author": "百度快照", + "pubDate": "2024-04-09" + }, + { + "title": "app逆向(1)| 为什么要进行app逆向_APP逆向-CSDN专栏", + "link": "https://download.csdn.net/blog/column/11648365/123086013", + "description": "1.为什么要进行 app逆向 ? 比如你看到别人写的某个程序能够做出某种漂亮的动画效果,通过反汇编、反编译和动态跟踪等方法分析出其动画效果的实现过程这种行为就是逆向工程。 2.什么是软件逆向? 软件逆向也叫逆向工程,英文名是reverse engineering,大意是根据已有的东西和结果,通过分析来推导出具体实现方法。 3.逆向工程的...", + "author": "百度快照", + "pubDate": "2026-04-12" + }, + { + "title": "APP逆向工程,核心原理与移动应用逆向技术全景解析", + "link": "https://baijiahao.baidu.com/s?id=1859991585185227373&wfr=spider&for=pc", + "description": "APP逆向工程是指通过分析已编译的应用程序二进制代码,推导其内部工作原理、算法实现或业务逻辑的技术过程 。这一技术领域处于法律与技术的交叉地带,需要工程师深刻理解其边界。从技术本质来看,逆向工程包含三个核心层次:行为分析层:通过监控应用输入输出、网络通信等外部表现推断功能代码逻辑层:反编译可执行文件还原高级...", + "author": "百度快照", + "pubDate": "2026-03-18" + }, + { + "title": "APP遭遇逆向破解、恶意篡改有解决办法吗?-CSDN博客", + "link": "https://blog.csdn.net/2301_78078966/article/details/160988475", + "description": "APP 遭遇 逆向 破解和恶意篡改(比如植入木马、插入广告、重打包)确实是移动安全领域的“重灾区”。一旦APP被破解,不仅开发者的知识产权(核心算法、商业逻辑)会裸奔,用户的隐私数据和资金安全也会面临极大威胁。 要想彻底解决这个问题,不存在“一劳永逸”的银弹,但我们可以通过一套“纵深防御体系”,把破解成本无限拉高,让...", + "author": "百度快照", + "pubDate": "2026-05-11" + }, + { + "title": "App逆向-CSDN博客", + "link": "https://blog.csdn.net/u011513939/article/details/151721721", + "description": "1 app 逆向 入门 # 1 逆向设备与root-真机和模拟器-解BL锁-fastboot刷机和root-twrp刷root-面具和常见模块# 2 Python虚拟环境-系统解释器环境-virtualenv虚拟环境-解释器配置常见错误# 3 抓包与配置-charles介绍配置和安装-https证书-用户证书与系统证书-解锁system分区-Magisk+moveCert# 4 反编译工具和配置-apk文件...", + "author": "百度快照", + "pubDate": "2025-09-15" + }, + { + "title": "安卓逆向实战:某App360脱壳、加密协议还原与请求伪造全记录(学...", + "link": "https://www.52pojie.cn/thread-2081208-1-1.html", + "description": "“这是我第一篇关于 App 逆向 的学习笔记,属于是一篇新手学习记录帖,文中可能存在术语使用不当或逻辑...", + "author": "百度快照", + "pubDate": "2025-12-20" + }, + { + "title": "某音乐APP逆向实战(上篇):协议发现与 params 加密破解 - 知乎", + "link": "https://zhuanlan.zhihu.com/p/2018406728010593387", + "description": "某音乐 APP逆向 实战(上篇):协议发现与 params 加密破解 免责声明:本文所有分析内容仅用于安全研究与学习目的,不涉及任何商业利用或恶意攻击行为。文中涉及的技术方法遵循”最小必要”原则,所有密钥、接口等敏感信息均已脱敏处理。请勿将本文内容用于任何违法用途,读者需自行承担相关法律责任。", + "author": "百度快照", + "pubDate": "2026-03-20" + }, + { + "title": "APP逆向入门(adb和Charles抓包) - 凫弥 - 博客园", + "link": "https://www.cnblogs.com/fuminer/p/17300854.html", + "description": "1. 逆向 基本流程 常见 app 的逆向的基本流程: 安装运行 抓包分析 反编译apk 在Java代码中定位 + Hook校验 基于Python还原算法 2.安装运行 后续我们对手机会经常进行:安装、卸载、上传、下载等操作。 【电脑】下载adb 【手机】开启开发者模式 + 打开usb调试 + USB线连接手机 ...", + "author": "百度快照", + "pubDate": "2023-04-09" + }, + { + "title": "APP逆向工程实战笔记:石货APP逆向分析与Hook技术实现", + "link": "http://word.baidu.com/noteview/e35be1150f4e767f5acfa1c7aa00b52acfc79c4b.html", + "description": "APP逆向 工程干货分享 石货 APP逆向 全攻略 在移动互联网时代 APP逆向 工程超重要 本文带你深入了解石货APP逆向分析全过程 从环境配置到强制更新绕过 再到网络抓包 满满都是实战经验 实验环境搭建 Windows 10 雷电模拟器 root版 JD GUI IDA Pro Frida Charles等工具一应俱全 模拟器环境还做了特别配置哦 强制更新", + "author": "百度快照", + "pubDate": "2026-03-30" + }, + { + "title": "安卓APP逆向(五)APP逆向实战-CSDN博客", + "link": "http://famensi.com/about_content.asp?haownn=.shtml20260418925462220", + "description": "安卓 APP逆向 (五)APP逆向实战-CSDN博客在数字时代,学习安卓APP逆向工程就像开启一扇通往创新之门的窗户。它不仅仅是技术技能,更是培养耐心、逻辑思维和问题解决能力的绝佳方式。今天,我们以79777.app为例,来一场积极向上的实战之旅,共同探索如何通过合法、正向的方法剖析APP结构,提升自己的编程素养。首先,理解APP逆向...", + "author": "百度快照", + "pubDate": "2026-04-18" + }, + { + "title": "超赞!发现一个APP逆向神器!", + "link": "https://mp.weixin.qq.com/s?__biz=MzAxMjUyNDQ5OA==&mid=2653580341&idx=1&sn=6ebc99379b3c421d81a8dda62c347925&chksm=806e4288b719cb9e82a8808cf287c6149575c0f6529430d2ff1756644b113bd884539b6d24e2&scene=27", + "description": "此次特训为期3天,专为高阶爬虫 逆向 技术速成而设计。课程内包含多项业界难觅的真实项目,每个项目都是对当下最热门的网站& APP 的深入破解,对应每一项案例都有代码级的拆分详解,深入浅出干货满满,理解和掌握起来很轻松。 顶尖名师的专业指导与规划,搭配最前沿的爬虫逆向实战项目边...", + "author": "百度快照", + "pubDate": "2022-08-01" + }, + { + "title": "APP遭遇逆向破解、恶意篡改有解决办法", + "link": "https://baijiahao.baidu.com/s?id=1840307627260533639&wfr=spider&for=pc", + "description": "APP 遭遇 逆向 破解、恶意篡改,后果往往直接且严重:源代码被窃取导致核心功能仿冒,植入恶意代码后推送诈骗广告,甚至窃取用户隐私数据 —— 这些不仅损害用户体验,更会让企业品牌声誉扫地,造成直接经济损失。对移动应用而言,传统的服务器端防护难以覆盖客户端安全,而移动应用安全方案能从源头构建防护,成为应对这类威胁的...", + "author": "百度快照", + "pubDate": "2025-08-13" + }, + { + "title": "Web逆向、软件逆向、安卓逆向、APP逆向是什么?-知了爱学", + "link": "https://localsite.baidu.com/article-detail.html?articleId=20186873&ucid=n1DvP1c3nHf&categoryLv1=%E6%95%99%E8%82%B2%E5%9F%B9%E8%AE%AD&ch=54&srcid=10004", + "description": "Web逆向、软件逆向、安卓逆向和 APP逆向 都是指对不同类型的软件或应用进行反向工程,从而了解其内部运行机制、破解或修改其功能的技术和方法。 Web逆向主要是指对Web应用程序进行逆向工程,获取其源代码或数据库信息。常见的Web逆向技术包括爬虫、抓包分析、JavaScript反混淆、反编译前端代码等。Web逆向工程常用于...", + "author": "百度快照", + "pubDate": "2024-03-19" + }, + { + "title": "移动应用防逆向破解安全加固-移动应用安全加固-移动开发平台...", + "link": "https://help.aliyun.com/document_detail/173377.html", + "description": "移动应用安全加固(Mobile Security Armor,简称 MSA)为移动应用(下文简称 App )提供稳定、简单、有效的安全保护,提高 App 的整体安全水平,力保应用不被 逆向 破解。 产品背景 Android 应用安全加固 由于Android 系统本身的开源特性,应用极易遭到盗版侵袭、反编译破解等攻击,严重影响应用的数据与隐私安全。mPaaS 移动应用安全...", + "author": "百度快照", + "pubDate": "2025-12-11" + }, + { + "title": "Android逆向技术揭秘:从入门到实践-百度开发者中心", + "link": "https://developer.baidu.com/article/details/3305419", + "description": "一、Android 逆向 入门 Android逆向,简而言之,就是对已经打包好的APK文件进行反编译、源码分析,了解 APP 实现逻辑的一门技术。我们可以把APK文件看作一个加密后的压缩包,逆向就是要最大程度地还原出APK打包之前的源码。逆向需要用到解密、反编译、解压缩等技术,虽然无法100%还原APK的源码,但可以根据实际需求,分析出APK的...", + "author": "百度快照", + "pubDate": "2024-04-09" + }, + { + "title": "ios逆向-app登录协议逆向分析破解-腾讯云开发者社区-腾讯云", + "link": "https://cloud.tencent.com/developer/article/1902084", + "description": "某 app 登录协议 逆向 分析 设备 iphone 5s Mac Os app:神奇的字符串57qm5Y2V 本文主要通过frida-trace、fridaHook、lldb动态调试完成破解相应的登录算法,从达到登录成功,并根据该步骤完成ios逆向分析,文中所有涉及的脚本都已经放在github上面。 弟弟建了一个ios逆向学习交流群,互相学习交流。", + "author": "百度快照", + "pubDate": "2021-11-16" + }, + { + "title": "Android逆向工具篇—反编译工具的选择与使用-腾讯云开发者社区...", + "link": "https://cloud.tencent.com/developer/article/1548700", + "description": "原因很简单,在技术娴熟和精通之前, APP逆向 是门不折不扣的玄学,既然是玄学,就会有很多不可控、随机、稀奇古怪的状况。当JADX中一个变量模糊不清的时候,你就需要去JEB中看一下它的反编译结果,或者使用JEB进行动态调试。当使用JEB 遇到头疼的APK混淆时,就可以试一下开启JADX的反混淆功能。因为这几个软件的逆向原理是...", + "author": "百度快照", + "pubDate": "2019-12-04" + }, + { + "title": "App逆向实战:从查壳到动态Hook的完整流程解析-CSDN博客", + "link": "https://blog.csdn.net/weixin_28732953/article/details/159819675", + "description": "1. 逆向 工程入门:从APK获取到查壳 当你拿到一个陌生的APK文件时,第一反应可能是直接扔进反编译工具。但现实往往没那么简单——就像拆快递时发现包裹被层层胶带缠绕,很多APK都会使用加壳技术保护核心代码。我去年分析某电商 App 时就踩过坑,直接用Jadx打开看到的全是混淆代码,根本找不到业务逻辑入口。", + "author": "百度快照", + "pubDate": "2026-04-04" + } + ], + "渗透测试": [ + { + "title": "渗透测试- 百度百科", + "link": "https://baike.baidu.com/item/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95/7363639", + "description": "渗透测试 ,是一项在计算机系统上进行的授权模拟攻击,旨在对其安全性进行评估,是为了证明网络防御按照预期计划正常运行而提供的一种机制。人工渗透测试的目的就是为了验证系统和各种Web应用是否存在后门。随着网络犯罪防治立法趋势从事后追责转向生态防控,渗透测试等专业安全服务被纳入法律监管框架。不妨假设,你的公司定期更新安全策略和程序,时时", + "author": "百度快照", + "pubDate": "2026-04-17" + }, + { + "title": "渗透性测试- 百度百科", + "link": "https://baike.baidu.com/item/%E6%B8%97%E9%80%8F%E6%80%A7%E6%B5%8B%E8%AF%95/3960442", + "description": "渗透 性 测试 是由道德黑客执行的网络安全评估技术,模拟真实攻击以识别可能导致数据泄露或资产损失的漏洞。认证服务商通过雇佣专业安全人员(如老虎队)实施测试,该团队专门模拟黑客攻击手法,采用黑盒、灰盒测试方法论,服务范围涵盖外部网络、内部系统及云端环境的漏洞检测。标准化流程包含三个阶段:通过攻击路径构建实施漏洞...", + "author": "百度快照", + "pubDate": "2026-03-27" + }, + { + "title": "渗透测试业务简介", + "link": "https://www.itsec.gov.cn/qtyw/ywjs/201205/t20120509_15231.html", + "description": "渗透测试 业务简介 渗透测试是指测试人员尽可能完整地模拟攻击者使用的漏洞发现技术和攻击手段,从攻击者的角度对目标网络、系统、主机应用的安全性作深入的非破坏性的探测, 发现系统最脆弱环节的过程。渗透测试通常能以非常明显、直观的结果来反映出系统的安全现状,其目的是能够让管理人员直观地知道自己网络所面临的问题。", + "author": "百度快照", + "pubDate": "2012-05-09" + }, + { + "title": "什么是渗透测试? | IBM", + "link": "https://www.ibm.com/cn-zh/think/topics/penetration-testing", + "description": "渗透测试 是一种安全性测试,会发起模拟网络攻击以查找计算机系统中的漏洞。 渗透测试人员是拥有高超道德黑客技术的安全专业人员,道德黑客是指运用黑客工具和黑客技术来修复安全薄弱环节而不是造成伤害。许多企业会雇用渗透测试人员来对其应用程序、网络和其他资产发起模拟攻击。通过发起虚假攻击,渗透测试人员可以帮助安全团队发...", + "author": "百度快照", + "pubDate": "2026-02-11" + }, + { + "title": "产品-渗透测试", + "link": "https://www.jl.10086.cn/ecloud/product-introduction/safefusion.html", + "description": "渗透测试 是经客户授权模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,能够发现逻辑性更强,更深层次的弱点,让管理者能够直观的了解自己网络和系统的安全状态,分为标准版和专业版。敬请期待 敬请期待 产品优势 产品功能 应用场景 ...", + "author": "百度快照", + "pubDate": "2026-05-10" + }, + { + "title": "渗透测试服务简介_渗透测试服务购买指南_渗透测试服务操作指南...", + "link": "https://cloud.tencent.com/document/product/1489", + "description": "渗透测试 服务 渗透测试服务(Penetration Test Service, PTS),为用户提供针对于 Web 应用、移动 App、微信小程序的黑盒安全测试内容;可以覆盖安全漏洞全生命周期,包括漏洞的发现、利用、修复以及修复后的验证。使用腾讯云渗透测试服务,可以随时将安全测试这一动作加入到您的产品研发、应用上线、安全自检等计划中来。不仅...", + "author": "百度快照", + "pubDate": "2026-05-03" + }, + { + "title": "什么是渗透测试,为什么需要做渗透测试-百度开发者中心", + "link": "https://developer.baidu.com/article/detail.html?id=3370896", + "description": "虽然 渗透测试 需要一定的投入,但与潜在的数据泄露、法律诉讼、业务损失相比,其成本效益显著。 6.验证安全措施的有效性 渗透测试可以验证现有的安全措施是否有效,包括防火墙、入侵检测系统、数据加密和其他安全控制。这有助于确保安全投资得到合理利用,并针对实际威胁进行调整。", + "author": "百度快照", + "pubDate": "2024-11-24" + }, + { + "title": "每日一问丨什么是渗透测试-腾讯云开发者社区-腾讯云", + "link": "https://cloud.tencent.com/developer/article/2580536", + "description": "渗透测试 (Penetration Testing),又称“渗透性测试”或“道德黑客攻击”,是一种通过模拟恶意攻击者的技术手段,对目标系统、网络或应用程序进行安全性评估的方法。其核心目的是发现系统中存在的漏洞和弱点,并提供修复建议,从而提升整体安全防护能力。渗透测试不仅是网络安全领域的重要实践,也是企业合规性(如等保2.0、GDPR等...", + "author": "百度快照", + "pubDate": "2025-10-23" + }, + { + "title": "渗透测试是什么意思?一文带你轻松了解", + "link": "https://www.ruijie.com.cn/fw/wt/89621/", + "description": "渗透测试 是什么意思?是指通过模拟恶意黑客的攻击方法,来评估计算机网络系统安全的一种评估方法,是为了证明网络防御按照预期计划正常运行的一种机制。测试渗透从一个攻击者可能存在的位置来主动分析系统的弱点、技术缺陷或漏洞,并且从这个位置有条件主动防范安全漏洞。", + "author": "百度快照", + "pubDate": "2022-08-30" + }, + { + "title": "网络渗透测试的类型-百度开发者中心", + "link": "https://developer.baidu.com/article/details/2754977", + "description": "简介:网络 渗透测试 主要分为外部网络渗透测试、内部网络渗透测试和无线渗透测试。这些测试旨在发现网络系统中的漏洞和弱点,以提高网络安全。 9000万Tokens包免费领 涵盖Ernie 4.5T系列、X1T系列、DeepSeek系列等9款主流模型 立即领取 网络渗透测试是评估网络安全的一种重要手段,它通过模拟黑客攻击来检测网络系统中的漏洞和...", + "author": "百度快照", + "pubDate": "2024-01-08" + }, + { + "title": "13种常见物理渗透测试方法-西安工业大学-信息化管理处", + "link": "https://nsinfo.xatu.edu.cn/info/1007/1682.htm", + "description": "虽然许多网络安全工作的重点是保护系统和网络的安全,但重要的是不要忘记物理安全在任何网络安全计划中都起着至关重要的作用。这就是物理渗透测试发挥作用的地方。 物理渗透测试模拟现实世界的威胁场景,其中恶意行为者试图破坏企业的物理屏障以获取对基础设施、建筑物、系统和员工的访问权限。物理渗透测试的目标是暴露企业整体物理防御的弱点。", + "author": "百度快照", + "pubDate": "2024-02-27" + }, + { + "title": "渗透测试全面解析与实战思路", + "link": "https://cloud.baidu.com/article/3406693", + "description": "渗透测试 作为网络安全领域的重要一环,对于评估系统安全性、发现潜在漏洞具有重要意义。本文将详细探讨渗透测试的相关术语、必备工具、导航流程,并总结入侵网站的实战思路,为读者提供一份全面的渗透测试指南。", + "author": "百度快照", + "pubDate": "2024-11-29" + }, + { + "title": "渗透测试基础(全)(3)-阿里云开发者社区", + "link": "https://developer.aliyun.com/article/1525433", + "description": "无论您是在内部工作还是作为顾问/承包商,在执行 渗透测试 时,沟通都是至关重要的。你需要有一个联系点,这样你可以让他们知道你在做什么,以防他们需要通知某人潜在的中断,如果这是他们关心的事情。作为渗透测试人员,您可能会采取许多可能导致系统中断的措施,包括利用漏洞。其中一些漏洞可能会导致服务崩溃,而不允许您控制...", + "author": "百度快照", + "pubDate": "2024-05-31" + }, + { + "title": "渗透测试的8个步骤(超详细),小白必看!(非常详细)从零基础到精通,...", + "link": "https://blog.csdn.net/weixin_57514792/article/details/149115214", + "description": "渗透测试 :以安全为基本原则,通过攻击者以及防御者的角度去分析目标所存在的安全隐患以及脆弱性,以保护系统安全为最终目标。 入侵:通过各种方法,甚至破坏性的操作,来获取系统权限以及各种敏感信息。 一般渗透测试流程 编辑 1. 明确目标 l 确定范围:测试目标的范围、ip、域名、内外网、测试账户。", + "author": "百度快照", + "pubDate": "2025-07-04" + }, + { + "title": "全网超详细渗透测试完整介绍,零基础入门到精通,收藏这篇就够了-CS...", + "link": "https://blog.csdn.net/fly_enum/article/details/160934681", + "description": "渗透测试 就是模拟攻击者入侵系统,对系统进行一步步地渗透,发现系统的脆弱环节和隐藏风险。最后形成测试报告提供给系统所有者。系统所有者可根据该测试报告对系统进行加固,提升系统的安全性,防止真正的攻击者入侵。 渗透测试的前提一定是得经过系统所有者的授权!", + "author": "百度快照", + "pubDate": "2026-05-09" + }, + { + "title": "渗透测试从0基础到精通,20-35岁看完这一篇就够了(非常详细) - 知乎", + "link": "https://zhuanlan.zhihu.com/p/1916069515546034683", + "description": "一名优秀的 渗透测试 工程师也可以认为是一个厉害的黑客,也可以被称呼为白帽子。 一定要注意的是,在进行渗透测试前,需要获得目标客户的授权,如果未获得授权,千万不要对目标系统进行渗透测试,后果请查看《网络安全法》。同时要有良好的职业操守,不能干一些违法的事情。", + "author": "百度快照", + "pubDate": "2025-06-13" + }, + { + "title": "什么是渗透测试(Penetration Testing) - zhencool - 博客园", + "link": "https://www.cnblogs.com/zhencool/p/11195454.html", + "description": "渗透测试 (Penetration Testing),也称为Pen Testing,是测试计算机系统、网络或Web应用程序以发现攻击者可能利用的安全漏洞的实践。渗透测试可以通过软件应用自动化或手动执行。无论哪种方式,该过程都包括在测试之前收集关于目标的信息,识别可能的入口点,试图闯入(虚拟的或真实的)并报告结果。", + "author": "百度快照", + "pubDate": "2019-07-16" + }, + { + "title": "什么是渗透测试?| 什么是渗透测试? | Cloudflare", + "link": "https://www.cloudflare-cn.com/learning/security/glossary/what-is-penetration-testing", + "description": "开放盒 渗透测试 - 在开放盒测试中,黑客将提前获得有关目标公司安全信息的一些信息。 封闭渗透测试- 也称为“单盲”测,在这种测试中,除了目标公司的名称之外,黑客不会得到任何背景信息。 隐蔽式渗透测试- 也称为“双盲”渗透测试,在这种情况下,公司中几乎没人意识到正在进行渗透测试,包括将响应攻击的 IT 和安全专业...", + "author": "百度快照", + "pubDate": "2025-04-22" + }, + { + "title": "渗透(IT术语) - 百度百科", + "link": "https://baike.baidu.com/item/%E6%B8%97%E9%80%8F/9457427", + "description": "渗透测试 ,在信息安全领域中,指经授权模拟黑客攻击行为,以评估计算机系统、网络或应用程序安全性的方法。其核心是通过发现并利用潜在的安全漏洞,直观反映系统的安全现状与风险。根据测试者对系统内部信息的了解程度,主要分为黑盒、白盒等测试类型。一个典型的渗透测试过程包括前期交互、信息收集、威胁建模、漏洞分析、...", + "author": "百度快照", + "pubDate": "2026-02-12" + }, + { + "title": "渗透测试工具 - 百度百科", + "link": "https://baike.baidu.com/item/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E5%B7%A5%E5%85%B7/1649873", + "description": "渗透测试 工具是通过模拟黑客攻击方式评估计算机网络系统安全性能的专用软件,其工作原理聚焦于预攻击阶段的信息收集与脆弱性探查,不实施实际入侵行为。渗透测试流程包括明确目标、信息收集、漏洞探测、验证与权限提升等阶段,产出的结果以报告形式输出。该工具可分为网络扫描、通用漏洞检测和应用漏洞检测三类。网络扫描工具主要...", + "author": "百度快照", + "pubDate": "2025-09-18" + } + ], + "手机银行漏洞": [ + { + "title": "北京某银行储蓄员携巨款潜逃近20年从未离京终落网_手机新浪网", + "link": "https://news.sina.cn/gn/2022-06-21/detail-imizirau9700372.d.html", + "description": "发现 银行漏洞 ,他伺机实施蓄谋已久的计划 时间拨回到20多年前。1997年7月毕业后,20岁的李伟进入招商银行北京分行某支行工作,担任储蓄员。2001年,经朋友介绍,李伟与做护士的刘芳认识,并于次年结婚。 婚后,李伟虽也度过了一段甜蜜的生活,但与妻子之间渐渐产生了一些摩擦,他认为妻子总是歇斯底里地说他,令他无法忍受,于是产生了离婚的念头。", + "author": "百度快照", + "pubDate": "2022-06-21" + }, + { + "title": "安全专家发现ATM机NFC功能漏洞,仅用一台手机就可改变金额,甚至强...", + "link": "https://dy.163.com/article/GE5D5QC605118OGM.html", + "description": "一般来说, 银行 在考虑到ATM存在被抢风险的情况下,都会把ATM机建造的很坚固,但是依然有人选择“硬来”; 当然,也有人选择智取。近期,一位安全公司的研究人员发现了现在ATM机中NFC功能的 漏洞 ,利用这个漏洞,可以修改交易金额,甚至可以让ATM直接吐钱。 安全顾问入侵ATM机多, 修改金额只需一部 手机 安全公司IOActive的研究...", + "author": "百度快照", + "pubDate": "2021-07-05" + }, + { + "title": "手机被盗后,你以为挂失手机号、冻结银行卡就安全了? - 简书", + "link": "https://www.jianshu.com/p/bf3ac424e367", + "description": "案件中存在的主要 漏洞 : 1.四川电信电话挂失、解挂业务,未考虑到 手机 被盗后身份信息泄露的情况,目前电信部门已作出调整。 2.部分网站和app通过短信验证码登入后,即可看到身份证号、 银行 卡号全部数位,目前各省社保官网已作出调整,其他有类似风险的网站和app,逐个摸排并进行安全改进的速度是比较慢的。 3.部分网贷平台提供...", + "author": "百度快照", + "pubDate": "2021-03-03" + }, + { + "title": "2014年浙江大妈发现银行漏洞,一月内偷走5亿,警方:银行的责任|储户...", + "link": "https://www.163.com/dy/article/HSLTP6A90553LFQF.html", + "description": "她成功找到 银行 的 漏洞 ,在一个月之内挪走了多家银行近五亿元的存款,直到一年后才东窗事发。 事发后,涉事银行却推卸责任,引起众怒。 最终,警方经过调查,确定这次事件完全是银行的责任。 那么,这位大妈是如何转走他人存款的?为什么这些受害者直到一年后才发现自己存款不见了?这些储户的损失最终又由谁来买单? 一 消...", + "author": "百度快照", + "pubDate": "2023-02-03" + }, + { + "title": "电信诈骗频发,多家银行调整个人账户限额堵漏洞|洗钱|反诈|交易|...", + "link": "http://k.sina.com.cn/article_1684012053_645ffc1501901cua6.html", + "description": "在此之中,并非所有客户受到影响,徽商银行在其公告中对所调整的个人账户作出了界定范围:一年以上(含一年)未发生取现、转账等主动交易,账户余额在50元(含)以下的I类个人银行结算账户(包含借记卡、存折);一年以上(含一年)未登录过 手机银行 或个人网银,账户余额在10元(含)以下的Ⅰ类个人银行结算账户。", + "author": "百度快照", + "pubDate": "2023-08-22" + }, + { + "title": "银行行长被骗26次,共计3.5亿元,却不敢报警?_手机新浪网", + "link": "https://news.sina.com.cn/c/2022-07-14/doc-imizirav3354658.shtml", + "description": "受赵某河这句并不高明的谎言蛊惑,心忧女儿学业的某 银行 行长李某先后26次上当受骗,成了一名可怜的受害者,并一步步从一名领导干部蜕变成了骗取贷款、违法发放贷款的“蛀虫”。 近日,李某因犯骗取贷款罪、违法发放贷款罪,被法院判处有期徒刑七年。 在此之前的3月11日,山东省高级法院对赵某河诈骗案作出终审裁定,...", + "author": "百度快照", + "pubDate": "2022-07-14" + }, + { + "title": "啥信号?有银行“叫停”ATM二维码存款 “黑科技”不仅要酷炫更要...", + "link": "https://view.inews.qq.com/qd/20220816A09ZY400?refer=wx_hot", + "description": "从安全性来看,ATM二维码存取款业也需要多种交叉验证来保障用户安全,例如 手机银行 App登录密码、现场扫码、扫码后仍需要在ATM机上输入银行卡交易密码等等;出于安全考虑,部分银行也对无卡取款设置了一定的取款限额,如,二维码取款要求日累计取款金额不超5000元,预约取款的单笔限额为1000元等。", + "author": "百度快照", + "pubDate": "2022-08-16" + }, + { + "title": "...一觉睡醒存款被掏空|支付宝|银行卡|手机免密支付功能_网易订阅", + "link": "https://www.163.com/dy/article/KS69574V0553TDXU.html", + "description": "这是本次盗刷最核心 漏洞 。 银行 、微信、支付宝等正规软件,完全不需要这个权限。 一旦开启,诈骗分子就能远程模拟点击 手机 屏幕,点开软件、跳转页面、确认支付,和本人手动操作一模一样。 第二个:短信读取、通知拦截权限 木马可以实时查看所有银行验证码、余额变动提醒,同时自动删除、屏蔽异常短信。", + "author": "百度快照", + "pubDate": "2026-05-05" + }, + { + "title": "15楼财经|崇左幼专上千名学生莫名被开账户 农行致歉承认操作不...", + "link": "https://new.qq.com/omn/20211211/20211211A06TME00.html", + "description": "不难发现,在农行 手机银行 上开立Ⅱ、Ⅲ类账户,需要验证身份证、手机号,还要进行人脸识别并阅读同意相关协议,这些程序都符合央行的要求。 聚焦 农行崇左江州支行为何得以“瞒着”学生开户? 业内人士质疑道歉声明“避重就轻” 学生们之前怀疑学校泄露了个人信息,但学校已经公开声明予以否定。那么银行如何得知这些学生的个人...", + "author": "百度快照", + "pubDate": "2021-12-11" + }, + { + "title": "豆包手机漏洞,银行验证码被盗?官方回应:已修复,但有黑公关!|黑客_...", + "link": "https://dy.163.com/article/KMPRD57M0511DG68.html", + "description": "简单来说,想要 银行 验证码被外人盗取,前提是需要先用 手机 AI去读取恶意短信的内容才可以,其实这个与之前网上流传人们去点击恶意短信链接,遭到银行卡被盗刷案件相似,只不过从人的操作,变成了AI的操作,对于这个 漏洞 ,豆包手机助手官方也升级了相应防护措施。 而对于网上大批量对于豆包手机助手安全恐吓的内容,豆包手机助手认为...", + "author": "百度快照", + "pubDate": "2026-02-27" + }, + { + "title": "长沙银行系统漏洞成敛财工具?3人用外挂造4万非法账户获利16万|商...", + "link": "https://www.163.com/dy/article/H0SPDVU8055280CT.html", + "description": "近日,裁判文书网披露的一则裁定书显示,3人利用长沙 银行 系统的 漏洞 ,短时间内开设异常账户4万多个,非法获利16万余元,3人最终均获刑。 2019年2月间,经营软件公司的尚某等人将内含公民身份证号码、姓名、手机号码等信息内容及串码、一个固定银行卡号、Fiddler应用程序软件提供给司某、刘某,利用Fiddler应用程序软件能够拦截由长沙银", + "author": "百度快照", + "pubDate": "2022-02-23" + }, + { + "title": "案例研究 | 刘仁文、车浩、时延安、田宏杰等:利用银行系统漏洞...", + "link": "https://new.qq.com/rain/a/20240826A06P2W00", + "description": "2022年2月24日17时许,刘某甲通过操作其母亲李某中国 银行手机 APP发现,李某中国银行积利金账户内黄金克数由原本的26克增长为900克,并将上述情况告知其父刘某乙、其母李某。三人商议后将该900克黄金点击卖出,发现出售后账户内黄金克数仍显示为900克,后该三人于15分钟内连续24次点击出售账户内黄金得款共计人民币86...", + "author": "百度快照", + "pubDate": "2024-08-26" + }, + { + "title": "别让去银行存款成为“危险之旅”_手机新浪网", + "link": "https://news.sina.cn/2016-03-03/detail-ifxqafrm6791021.d.html", + "description": "面对“1万元进去1700元出来”的典型案例,监管部门也应及时介入,一是要进行调查,查清其中是否存在违规操作的问题;二是要加强相关知识的宣传,引导公众增强对类似行为的警惕性和免疫力;三是要排查 银行 管理方面存在的问题,及时堵塞 漏洞 ,不要让消费者去银行存款成为一场考验智商的“危险之旅”。", + "author": "百度快照", + "pubDate": "2016-03-03" + }, + { + "title": "乐山商业银行APP违规遭通报,为何中小银行数据治理漏洞频现?_用户...", + "link": "https://www.sohu.com/a/864346760_387251", + "description": "近日,国家计算机病毒应急处理中心监测发现14款违规移动应用,乐山商业银行APP因“未经明示同意收集个人信息”“未列出个人信息收集用途”“处理敏感个人信息未取得个人的单独同意”等五项问题被通报,在一众软件中格外显眼。2月25日,乐山市商业银行回应称,将加强 手机银行 APP隐私保护。此外,全国已有多家中小银行APP因隐私问题...", + "author": "百度快照", + "pubDate": "2017-03-01" + }, + { + "title": "手机被远程控制盗刷银行有责任吗安全吗", + "link": "https://ailegal.baidu.com/legalarticle/qadetail?id=311b17f8516a7d250205", + "description": "手机 被远程控制盗刷, 银行 是否承担责任需分情况讨论,具体如下: 一、银行可能承担责任的情形 技术 漏洞 或安全缺陷:若银行系统存在安全漏洞,如未及时更新加密技术、防火墙存在缺陷,或未对异常交易进行预警,导致客户资金被盗刷,银行需承担赔偿责任。法律依据:《中华人民共和国民法典》第一千一百九十八条规定,银行作为经营场所...", + "author": "百度快照", + "pubDate": "2026-05-12" + }, + { + "title": "交通银行手机银行到底有没有漏洞?我损失的钱该不该由交通银行赔付", + "link": "https://weibo.com/ttarticle/p/show?id=2309404698741067350401", + "description": "交通银行借记卡通过 手机银行 被盗刷,交通银行偷换概念,绝口不提没有尽到保管义务。 ​​ 说实话,现在回想起来还觉得事情挺梦幻的,卡在我手里,手机没丢过(旧手机也一直放在家里,)也没有收到任何登录、验证码等信息,钱没了……真的没有任何提示,交通银行短信除了孜孜不倦的卖理财,任何任何提示都没有。如果不...", + "author": "百度快照", + "pubDate": "2021-11-01" + }, + { + "title": "长沙银行系统漏洞致4万异常账户开设,或须承担民事责任|中小银行|...", + "link": "https://m.163.com/dy/article/H21OIFLS0550EWRZ.html", + "description": "日前,一则有关长沙 银行 系统 漏洞 被利用的消息引发关注。中国裁判文书网披露的一则湖南省长沙市中级人民法院刑事裁定书显示,3名犯罪分子利用长沙银行系统漏洞,对计算机信息系统中传输的数据进行删除、修改,短时间内开设异常账户4万多个,非法获利16万余元,三人均获刑。", + "author": "百度快照", + "pubDate": "2022-03-09" + }, + { + "title": "部分银行收紧无卡取款业务,记者探访多数银行仍可扫码或刷脸取款...", + "link": "https://new.qq.com/rain/a/20240707A0418P00", + "description": "记者梳理发现,在全国范围内取消ATM扫码取款的银行并不算多,更多的银行只是暂停了手机预约取款功能,扫码取款功能并未取消。例如,交通银行公告称:“从5月24日起,停止个人 手机银行 中无卡取款功能中的预约取款服务。客户仍可通过该行智能机具办理有卡取款、扫码取款或前往该行营业网点办理取款业务。”农业银行于5月9日起...", + "author": "百度快照", + "pubDate": "2024-07-07" + }, + { + "title": "315金融消费者权益保护|金融消费投诉频发 “止损、报警、维权”三...", + "link": "https://new.qq.com/omn/20210313/20210313A02T4B00.html", + "description": "通联支付与建设 银行 在该事件中可能存在管理和技术方面的过错,其中管理过错是指通联支付与银行是否按照双方指定的协议进行管理;技术过错是指平台是否因技术 漏洞 导致相关问题的出现,银行或通联支付是否尽到了维护客户资金安全的义务,是否对平台技术进行定期巡查,接到修先生此类投诉后是否进行及时处理等。", + "author": "百度快照", + "pubDate": "2021-03-13" + }, + { + "title": "银行的手机银行安全防护漏洞如何修复??-和讯网", + "link": "http://insurance.hexun.com/2025-05-10/218949278.html", + "description": "在数字化时代, 手机银行 已成为人们日常金融交易的重要工具,然而其安全防护问题也备受关注。当发现手机银行存在安全防护 漏洞 时,可从以下几个方面进行修复。 首先是技术层面的修复。银行应定期对手机银行系统进行全面的安全评估和漏洞扫描。利用先进的漏洞扫描工具,对系统代码、数据库等进行深度检测,及时发现潜在的安全漏洞。", + "author": "百度快照", + "pubDate": "2025-05-10" + } + ], + "银行漏洞": [ + { + "title": "300亿上市银行系统漏洞被利用,开设4万多个异常账户!非法获利16万...", + "link": "https://www.163.com/dy/article/H15DMK220539LWQ1.html", + "description": "日前,一则有关长沙 银行 系统 漏洞 被利用的消息引发关注。 中国裁判文书网披露的一则湖南省长沙市中级人民法院刑事裁定书显示,3名犯罪分子利用长沙银行系统漏洞,对计算机信息系统中传输的数据进行删除、修改,短时间内开设异常账户4万多个,非法获利16万余元,三人均获刑。 长沙银行系统存在哪些漏洞?“被开户”的户主会否遭受损失?长沙银行要负", + "author": "百度快照", + "pubDate": "2022-02-26" + }, + { + "title": "2014年浙江大妈发现银行漏洞,一月内偷走5亿,警方:银行的责任|储户...", + "link": "https://www.163.com/dy/article/HSLTP6A90553LFQF.html", + "description": "她成功找到 银行 的 漏洞 ,在一个月之内挪走了多家银行近五亿元的存款,直到一年后才东窗事发。 事发后,涉事银行却推卸责任,引起众怒。 最终,警方经过调查,确定这次事件完全是银行的责任。 那么,这位大妈是如何转走他人存款的?为什么这些受害者直到一年后才发现自己存款不见了?这些储户的损失最终又由谁来买单? 一 消...", + "author": "百度快照", + "pubDate": "2023-02-03" + }, + { + "title": "银行网络惊魂“大劫案”|银行|资产|腾讯安全_新浪新闻", + "link": "https://news.sina.com.cn/sx/2022-12-30/detail-imxymmtq9354405.shtml", + "description": "两边的工作人员打起了传切配合,像一支球队快速奔袭全场,同时不断填补防守 漏洞 。 72小时内, 银行 的互联网资产完成全面排查。腾讯安全团队帮助客户发现互联网暴露资产共15万左右,其中包括域名资产和IP资产11万左右、影子资产2000多、小程序和公众号3万多等等。 这么短时间梳理出如此多资产类型和数量,银行客户也表示惊叹。", + "author": "百度快照", + "pubDate": "2022-12-30" + }, + { + "title": "2013年,浙江大妈利用漏洞,偷走6家银行5亿元,她是怎么做到的?_腾讯...", + "link": "https://new.qq.com/rain/a/20220821A03XXT00", + "description": "“后来我也是偶然发现了 银行 的 漏洞 ,所以才生了歪心思。” 邱某口中所说的“漏洞”,其实就是银行转账业务的一个小纰漏。原本银行工作人员是没有这么大的权限进行大额转账交易,但是却可以通过同事授权来完成。而祝某也就是通过这一点,一次次地骗走了储户的存款。 由于大家都是同事,所以根本没有人会怀疑祝某是在...", + "author": "百度快照", + "pubDate": "2022-08-26" + }, + { + "title": "电信诈骗频发,多家银行调整个人账户限额堵漏洞|洗钱|反诈|交易|...", + "link": "http://k.sina.com.cn/article_1684012053_645ffc1501901cua6.html", + "description": "在此之中,并非所有客户受到影响,徽商 银行 在其公告中对所调整的个人账户作出了界定范围:一年以上(含一年)未发生取现、转账等主动交易,账户余额在50元(含)以下的I类个人银行结算账户(包含借记卡、存折);一年以上(含一年)未登录过手机银行或个人网银,账户余额在10元(含)以下的Ⅰ类个人银行结算账户。", + "author": "百度快照", + "pubDate": "2023-08-22" + }, + { + "title": "银行监管体系存漏洞女嫌犯趁机拉拢银行“内鬼”", + "link": "https://www.sohu.com/a/1019079_116897", + "description": "当一个违法操作被当成正常业务来办理的时候,大额资金就这样突破临柜监督、远程监控,而无从控制。这就是 银行 监管体系可笑的地方。 银行的一些 “坏习惯” 银行监管体系的脆弱,不仅仅发生在柜台业务办理那一刻。钱江晚报记者在调查中发现,杭州联合银行案情曝光是在2014年初,据浙江省银监局有关工作人员说,杭州联合银行事...", + "author": "百度快照", + "pubDate": "2007-02-06" + }, + { + "title": "案例研究 | 刘仁文、车浩、时延安、田宏杰等:利用银行系统漏洞...", + "link": "https://new.qq.com/rain/a/20240826A06P2W00", + "description": "当系统 漏洞 存在时,往往基于公民一种认识在于,由于 银行 系统存在过错,进而应当由银行承担相应后果,行为人的行为属于合法行为而不构成犯罪。因此应当明确,虽然行为人第一次取款行为属于合法行为,但是由于其后续主观意图的转变,对于资金的占有存在恶意利用系统的目的,导致了合法行为向非法行为的转变。即使存在合法形式也不能...", + "author": "百度快照", + "pubDate": "2024-08-26" + }, + { + "title": "2014年浙江大妈发现银行漏洞,1个月盗取5亿资金,最终结果如何?|储...", + "link": "https://dy.163.com/article/H7GK5GA705534K6C.html", + "description": "通过中间人,这笔钱会被直接存入 银行 ,方先生能够立刻拿到15%的利息。 这个数字让方先生很是心动,银行为了资金周转,通过中间人找大客户去存款的事情时有发生。 方先生以前也进行过类似的业务,他不仅拿到了比普通存款方式更高的利息,本金也没有受损。 通过这个朋友,方先生和中间人取得了联系,让方先生感到欣慰的是,对...", + "author": "百度快照", + "pubDate": "2022-05-17" + }, + { + "title": "北京某银行储蓄员携巨款潜逃近20年从未离京 靠卖房款过日子_手机...", + "link": "https://news.sina.cn/gn/2022-06-21/detail-imizirau9700403.d.html", + "description": "发现 银行漏洞 ,他伺机实施蓄谋已久的计划 时间拨回到20多年前。1997年7月毕业后,20岁的李伟进入招商银行北京分行某支行工作,担任储蓄员。2001年,经朋友介绍,李伟与做护士的刘芳认识,并于次年结婚。 婚后,李伟虽也度过了一段甜蜜的生活,但与妻子之间渐渐产生了一些摩擦,他认为妻子总是歇斯底里地说他,令他无法忍受...", + "author": "百度快照", + "pubDate": "2022-06-21" + }, + { + "title": "杭州“日光盘”烂尾背后:多家银行卷入预售金监管漏洞--房产--人民网", + "link": "http://house.people.com.cn/n/2015/0505/c164220-26948515.html", + "description": "原标题:杭州“日光盘”烂尾背后:多家 银行 卷入预售金监管 漏洞 2013年12月18日,杭州田逸之星公寓三号楼和四号楼的业主们收到一纸延时交付书,原定2013年12月30日前交付使用的房子被告知延后,延时交付书称,“我公司力争于2014年4月30日前交房,最迟于2014年6月30日前交房”。", + "author": "百度快照", + "pubDate": "2015-05-05" + }, + { + "title": "2018年,沈阳男子发现银行系统漏洞,半年内用小额存款套取3000万|银...", + "link": "https://www.163.com/dy/article/H0LBPPP80550TA0M.html", + "description": "梦想着自己能够在 银行 的系统中找到它们的 漏洞 ,修改自己在 银行 账户的存款余额,把银行变为自己的免费取款机,从此一劳永逸。 在膨胀的贪婪心的驱使下,这个二手车销售员变身为“银行系统测试员”,他在2013年到2018年这5年的时间里,不停地在银行系统上尝试。 就在2018年的5月份,他这个天马行空,看似不可能的想法,竟然被他实现了,一张余额只有5", + "author": "百度快照", + "pubDate": "2022-02-20" + }, + { + "title": "长沙银行系统漏洞成敛财工具?3人用外挂造4万非法账户获利16万_中...", + "link": "http://finance.ce.cn/bank12/scroll/202202/23/t20220223_37350803.shtml", + "description": "在老百姓的心目中, 银行 是最受信任的金融机构,中国老百姓大部分的金融资产都放在银行当中。但最近却发生一起因银行系统 漏洞 而引发的恶性违法事件,有一家上市银行因存在系统漏洞成了他人的敛财工具。 01 银行系统漏洞被利用 3人开设4万异常账户赚16万 近日,裁判文书网披露的一则裁定书显示,3人利用长沙银行系统的漏洞...", + "author": "百度快照", + "pubDate": "2022-02-23" + }, + { + "title": "疑案精解 | 利用银行系统漏洞获得财物的行为判断-钟兴刚律师团队...", + "link": "https://lawyers.66law.cn/s2a142327f7077_i1443873.aspx", + "description": "行为人利用 银行 系统 漏洞 造成银行损失的行为如何评价,是犯罪行为,还是民事不当得利,实践中存在分歧。行为人主观上是否具有非法占有目的、客观上是否具有转移占有行为成为此类案件定性的关键因素。实践中应以个案证据为基础,严格按照犯罪构成要件分析行为人的客观行为性质和主观目的,坚持主客观相一致的原则,对案件作出准确定性...", + "author": "百度快照", + "pubDate": "2024-06-29" + }, + { + "title": "别人开的二类账户却致自己工资卡被盗刷,北京一男子将银行告上法庭...", + "link": "https://www.jfdaily.com.cn/news/detail?id=404736", + "description": "富滇 银行 认为,在这个过程当中中国银行存在 漏洞 ,没有尽到审核义务,“如果有个短信验证之类的,让客户知道钱要出去了,就不会出现后面的消费了。” 对此,中国银行解释,这个机制是为了方便客户消费和资金流转的顺畅,已经通过报文核验后,系统接到支付指令,就会无条件地及时通过,“在一类账户向二类账户支付的过程中,不要求再...", + "author": "百度快照", + "pubDate": "2021-09-12" + }, + { + "title": "客户212万分20多笔被转走银行系统存漏洞担责七成_新闻频道_中国...", + "link": "http://news.youth.cn/sh/201708/t20170814_10508759.htm", + "description": "当天,其 银行 卡内212万元分成20多笔被转走。陈女士起诉开户行,认为银行系统存在安全 漏洞 。银行辩称,案件没有侦破,款项是否被骗未知,即使被骗也是因为诈骗分子的行为,以及陈女士的严重过失所致。天河区法院一审认为,陈女士预留了电话号码,银行未全面推行实施转账验证码,并告知不开通该功能的风险责任自负,也未对跨行多笔...", + "author": "百度快照", + "pubDate": "2017-08-14" + }, + { + "title": "金融犯罪频发 凸显银行监管的漏洞_手机新浪网", + "link": "http://finance.sina.cn/sa/2006-06-07/detail-ikknscsi3443890.d.html", + "description": "银川市公安局经侦支队于今年5月中旬成功破获一起截留20余万元 银行 预存款案。宁夏大学政法学院院长张秉民和西北第二民族大学法学教授王幽深等专家指出,近年来,宁夏一直大力打击金融犯罪,可如今一个职员却能连续3次截留银行预存款,并且在长达近一个月的时间内未被发现,暴露出银行的监管 漏洞 。", + "author": "百度快照", + "pubDate": "2006-06-07" + }, + { + "title": "澳小伙发现ATM无限吐钱! 租飞机办派对, 带陌生人挥霍!", + "link": "https://weibo.com/ttarticle/p/show?id=2309404996342547349998", + "description": "意外发现 银行漏洞 从一个普通的调酒师摇身一变成为百万富翁,每天都能过着纸醉金迷的奢华生活,这或许是电影里才有的情节。 只能说艺术源于生活,一位澳洲小哥的经历,比电影清洁更加精彩。 Dan Saunders出生在墨尔本,曾经是一名职业调酒师,在维州Wangaratta小镇的酒吧上班,几乎过着昼夜颠倒的生活,每天下班都可能是微醺甚...", + "author": "百度快照", + "pubDate": "2024-01-31" + }, + { + "title": "中信银行因泄露艺人账户明细发布致歉信 储户隐私如何保护?|商业银...", + "link": "https://news.hsw.cn/system/2020/0508/1182718.shtml", + "description": "律师说法:个案折射出 银行 管理 漏洞 必须严惩 陕西恒达律师事务所高级合伙人、知名公益律师赵良善认为:“中信银行未经持卡人授权、未经正当程序泄露持卡人银行账户交易明细,依据《商业银行法》第二十九条‘商业银行办理个人储蓄存款业务,应当遵循存款自愿、取款自由、存款有息、为存款人保密的原则。对个人储蓄存款,商业银行有...", + "author": "百度快照", + "pubDate": "2020-05-08" + }, + { + "title": "兰州银行信贷业务内控或存漏洞管理人员在外兼职拷问人员独立性...", + "link": "https://new.qq.com/rain/a/20211216A0CH9N00", + "description": "此外,兰州 银行 曾要求未以个人名义签订保证合同的相关方承担连带清偿责任,但其对视为夫妻共同债务的债权未取得夫妻双方的签字,也未能提供文件证明此债务为夫妻双方共同意思表示,最终上诉遭驳回。对此,兰州银行信贷业务内控是否存在 漏洞 ?一波未停一波又起,兰州银行管理人员或在外兼任董事、监事,人员独立性或遭拷问。", + "author": "百度快照", + "pubDate": "2021-12-16" + }, + { + "title": "2.5亿元银行存款被盗 知情人:年息24%揽存后销户 银行流程有漏洞...", + "link": "https://new.qq.com/omn/20220318/20220318A08IQI00.html", + "description": "近日,南宁工行2.5亿存款不翼而飞事件引发网友高度关注,储户丢失的存款为何追不回来?3月17日,上游新闻记者向案件相关知情人以及一位当事人代理律师了解情况发现,该案涉及到第三方经济犯罪,而受害人被24%的不正常年息所诱为起因,但 银行 流程上存在 漏洞 。", + "author": "百度快照", + "pubDate": "2022-03-18" + } + ], + "支付漏洞": [ + { + "title": "25%银行类网站存高危风险小银行和P2P平台成重灾区_中央网络安全和...", + "link": "https://www.cac.gov.cn/2015-01/26/c_1114126337.htm", + "description": "另据360补天 漏洞 响应平台提供的信息,此前,国内P2P平台小米贷存多个高危 漏洞 ,黑客可直接控制服务器;普资华企P2P理财网站存在XSS漏洞,使得数十万会员信息存在隐患;易网融通金融综合服务平台存在用户信息泄露风险;点点理财P2P平台存在万能密码,黑客可进入后台操作,泄露所有用户资料;长沙大定财富理财网站存在的漏洞可导致泄露多个数据库信息。目前,", + "author": "百度快照", + "pubDate": "2015-01-26" + }, + { + "title": "人民银行提示:网络支付小心信息泄露风险_中央网络安全和信息化...", + "link": "https://www.cac.gov.cn/2016-02/18/c_1118077447.htm", + "description": "非银行 支付 机构方面,应加强规范化管理。支付机构应引入多重安全验证方式,对于小额支付可支持消费者采用较简单的交易安全验证手段;对于大额支付应要求消费者采用安全保障高的交易验证手段,有效防止消费者因不慎遗失个人金融信息而导致的资金安全 漏洞 。鼓励支付机构向客户提供账户资金安全保险服务。消费者在接受支付机构支付服务...", + "author": "百度快照", + "pubDate": "2016-02-18" + }, + { + "title": "财付通被爆存安全性漏洞:资金频被盗刷赔付解决难_中央网络安全和...", + "link": "https://www.cac.gov.cn/2015-09/06/c_1116476475.htm", + "description": "在网络第三方 支付 平台方面,有行业专家指出,资金遭冻结并难以解决和资金遭盗刷仍旧是用户投诉热点。同时,记者采访发现,小额资金被盗刷的情况,在实际中更是难以得到有效解决。 某第三方网络支付平台过去的用户小朱(化名)说,在经历了一次被盗刷事件后,他就注销了在该平台的支付业务。 用户:刚打进过一笔钱,第二天早上...", + "author": "百度快照", + "pubDate": "2015-09-06" + }, + { + "title": "@所有人,这些网络安全“漏洞”,你堵好了吗?_中央网络安全和信息化...", + "link": "https://www.cac.gov.cn/2021-10/13/c_1635718065867728.htm", + "description": "如果收到了来自信任的朋友或者同事的邮件,你对邮件内容表示怀疑,可直接拨打电话向其核实。 漏洞 五: 扫描来路不明的网站或APP上的二维码 移动 支付 时代,扫描二维码已经成为我们生活中最稀松平常的事儿。可是,这些二维码看起来方便,但是一不小心,你可能就要付出钱财损失的代价。 以下是常见的几种二维码诈骗伎俩: 1、在商...", + "author": "百度快照", + "pubDate": "2021-10-13" + }, + { + "title": "聚焦“金融日”:网上支付有风险 陌生链接不要点-中央网络安全和...", + "link": "https://www.cac.gov.cn/2015-06/03/c_1115503708.htm", + "description": "聚焦“金融日”:网上 支付 有风险 陌生链接不要点 便捷的网银支付已渗透到我们生活的方方面面。昨天,在第二届国家网络安全宣传周的“金融日”上,中国工商银行数据中心(北京)安全部总经理敦宏程坦言,信息泄露、恶意软件、钓鱼网站等在不断的威胁到网银安全服务。", + "author": "百度快照", + "pubDate": "2015-06-03" } ] } \ No newline at end of file diff --git a/resources/JSON/doonsec.json b/resources/JSON/doonsec.json index 66d174d..1cd771b 100644 --- a/resources/JSON/doonsec.json +++ b/resources/JSON/doonsec.json @@ -1,1602 +1,1602 @@ [ { - "title": "新型 SuperBlack 勒索软件利用 Fortinet 身份验证绕过漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzU0MjE2Mjk3Ng==&mid=2247488660&idx=2&sn=63345a27dc61a97ef893111b5b4d181b", - "description": "赛欧思安全资讯(2025-03-14)", - "author": "赛欧思安全研究实验室", - "category": "赛欧思安全研究实验室", - "pubDate": "2025-03-14T10:31:40" + "title": "邮件钓鱼免杀完全指南(2026 实战版)· 三、绕过 SPF/DKIM/DMARC 邮件认证", + "link": "https://mp.weixin.qq.com/s/UGfGCaWPSYEe4W1gQzMy8A", + "description": "系列说明:本文是《邮件钓鱼免杀完全指南(2026 实战版)》系列的第三篇。", + "author": "IceByte-Sec", + "category": "IceByte-Sec", + "pubDate": "2026-05-17T21:47:23" }, { - "title": "Apache Tomcat远程代码执行(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg2NzkxOTQ0OA==&mid=2247484529&idx=1&sn=23e7cc25ead1d292cdab7e4b17274901", - "description": "Apache Tomcat远程代码执行,内含脚本(CVE-2025-24813)", - "author": "菜鸟学渗透", - "category": "菜鸟学渗透", - "pubDate": "2025-03-14T10:14:32" + "title": "Bp插件:AI驱动的智能Fuzz生成器", + "link": "https://mp.weixin.qq.com/s/5-fe8mwvj524OSYUpMAIIA", + "description": "Burp AI Fuzzer 是一款基于大语言模型驱动的 Burp Suite 插件,能自动解析 HTTP 请求上下文生成针对性 Fuzz 字典。支持多模板管理、一键标记参数和 Intruder 深度集成,适合 Web 安全测试人员在授权渗透测试中提升模糊测试效率。", + "author": "0x八月", + "category": "0x八月", + "pubDate": "2026-05-17T21:18:11" }, { - "title": "实战案例!记一次攻防演练突破", - "link": "https://mp.weixin.qq.com/s?__biz=MzU0MTc2NTExNg==&mid=2247491695&idx=1&sn=e5e22f6e10efb0bac0a140bfcb282ae3", + "title": "【安全圈】黑客利用 Burst Statistics WordPress 插件认证绕过漏洞发动攻击", + "link": "https://mp.weixin.qq.com/s/BUzZBnN07Iqe_zyiDwsvtQ", + "description": "AI 漏洞挖掘开始交付\\\\x26quot;工程化结果\\\\x26quot;\\\\x0d\\\\x0a从音频解码到工业 CAD,从车端 CAN 帧到企业 Java 中间件——这一次,AI 红队没有靠\\\\x26quot;灵感\\\\x26quot;。", + "author": "安全圈", + "category": "安全圈", + "pubDate": "2026-05-17T19:00:33" + }, + { + "title": "【安全圈】黑客利用 Burst Statistics WordPress 插件认证绕过漏洞发动攻击", + "link": "https://mp.weixin.qq.com/s/wxXwtTn6epofgw0Cl-D-gA", + "description": "AI 漏洞挖掘开始交付\\\\x26quot;工程化结果\\\\x26quot;\\\\x0d\\\\x0a从音频解码到工业 CAD,从车端 CAN 帧到企业 Java 中间件——这一次,AI 红队没有靠\\\\x26quot;灵感\\\\x26quot;。", + "author": "安全圈", + "category": "安全圈", + "pubDate": "2026-05-17T19:00:33" + }, + { + "title": "CVE-2015-1328 Overlayfs内核本地提权复现", + "link": "https://mp.weixin.qq.com/s/KSaJfV_qU6iokXy4v8-jLg", "description": null, - "author": "实战安全研究", - "category": "实战安全研究", - "pubDate": "2025-03-14T10:00:53" + "author": "晨星安全团队", + "category": "晨星安全团队", + "pubDate": "2026-05-17T16:52:07" }, { - "title": "实战案例!记一次攻防演练突破", - "link": "https://mp.weixin.qq.com/s?__biz=MzAxMjE3ODU3MQ==&mid=2650609133&idx=3&sn=50085f1992eff3e931ec947c9a698682", + "title": "自动化渗透测试利器NucleiFuzzer", + "link": "https://mp.weixin.qq.com/s/5NlCon9G6u3Y-S7QuRiInA", + "description": "NucleiFuzzer 是一款由安全研究者 0xKayala 开发的自动化渗透测试框架,当前版本为 v4.0", + "author": "小兵搞安全", + "category": "小兵搞安全", + "pubDate": "2026-05-17T16:33:36" + }, + { + "title": "一次一口吃掉大象:PHP中与JPEG相关的内存安全漏洞", + "link": "https://mp.weixin.qq.com/s/Hsdo8b1x8O9Tbk4fIuxOaA", + "description": "PHP内核很少被视作攻击面,但ext/standard扩展里大量处理文件的C代码其实暗藏风险。本文拆解了两个真实漏洞:getimagesize函数在读取JPEG APP段时泄露堆内存(CVE-2025-14177),以及iptcembed函", + "author": "幻泉之洲", + "category": "幻泉之洲", + "pubDate": "2026-05-17T15:09:00" + }, + { + "title": "插件推荐 | burp实用插件记录", + "link": "https://mp.weixin.qq.com/s/kypR6oEUJGTKzEaV7VmbKg", "description": null, - "author": "黑白之道", - "category": "黑白之道", - "pubDate": "2025-03-14T09:58:25" + "author": "安全艺术", + "category": "安全艺术", + "pubDate": "2026-05-17T15:00:00" }, { - "title": "ZZCMS index.php SQL注入漏洞(CVE-2025-0565)", - "link": "https://mp.weixin.qq.com/s?__biz=MzkzMTcwMTg1Mg==&mid=2247490752&idx=1&sn=da298ccc69cdf87ee27c66bb7ed9f292", - "description": "ZZCMS index.php 接口处存在SQL注入漏洞,攻击者除了可以利用 SQL 注入漏洞获取数据库中的信息(例如,管理员后台密码、站点的用户个人信息)之外,甚至在高权限的情况可向服务器中写入木马,进一步获取服务器系统权限。", - "author": "nday POC", - "category": "nday POC", - "pubDate": "2025-03-14T09:57:18" + "title": "CVE-2019-0227漏洞复现", + "link": "https://mp.weixin.qq.com/s/mPNPN2JnOtGjhw-n0DI9KA", + "description": "首次以红队身份参加攻防演练是种什么体验?本文复盘了演练最后 3 小时死磕 Axis 服务、从“看得见却打不进”的郁闷到本地环境深度死磕的极客经历。全景展现 Webshell 释放与 FreeMarker 不落盘两种利用手法,并从流量视角深度剖析 JNDI 注入的实战大坑。", + "author": "SkillLab", + "category": "SkillLab", + "pubDate": "2026-05-17T14:32:38" }, { - "title": "WebKit零日漏洞被利用开展“极其复杂”定向攻击,苹果紧急修复", - "link": "https://mp.weixin.qq.com/s?__biz=MzIwNzAwOTQxMg==&mid=2652251539&idx=1&sn=029db25bda034ac4be3a6e0161359e86", - "description": "Apple近日发布紧急安全更新,修复了WebKit跨平台网络浏览器引擎中一个零日漏洞(CVE-2025-24201)。该漏洞是一个越界写入问题,已被用于针对特定目标个人的\\\\x26quot;极其复杂\\\\x26quot;的网络攻击中。", - "author": "汇能云安全", - "category": "汇能云安全", - "pubDate": "2025-03-14T09:55:59" - }, - { - "title": "GitLab修复了CE和EE版本中的关键身份验证绕过漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg3OTc0NDcyNQ==&mid=2247493386&idx=1&sn=28cc92528c8b791397f67f5b395b048f", - "description": null, - "author": "黑猫安全", - "category": "黑猫安全", - "pubDate": "2025-03-14T09:33:59" - }, - { - "title": "专家警告称,利用SSRF漏洞的攻击尝试正出现协同激增", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg3OTc0NDcyNQ==&mid=2247493386&idx=2&sn=81f731575797392174d9c575bd038692", - "description": null, - "author": "黑猫安全", - "category": "黑猫安全", - "pubDate": "2025-03-14T09:33:59" - }, - { - "title": "与朝鲜有关的APT组织ScarCruft被发现使用新型Android间谍软件KoSpy", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg3OTc0NDcyNQ==&mid=2247493386&idx=5&sn=891325c1488d85c50ff41e8b3be0fece", - "description": null, - "author": "黑猫安全", - "category": "黑猫安全", - "pubDate": "2025-03-14T09:33:59" - }, - { - "title": "逆向思维实现家庭WinNAS安全外网访问:CDN去端口+HTTPS加密方案与那些被忽视的隐患", - "link": "https://mp.weixin.qq.com/s?__biz=MzU2MjU2MzI3MA==&mid=2247484599&idx=1&sn=2da2dfc32ad3bb6f64952640f512cc46", - "description": "文章主要介绍了在家庭网络环境变化后,如何重新设计远程访问家庭NAS的方案。由于家宽从千兆降为300Mbps且失去了动态公网IPv4,原有的远程访问方案不再适用。新的方案旨在解决动态公网IP不稳定、运营商封锁端口及HTTP明文传输的安全隐患。", - "author": "内存泄漏", - "category": "内存泄漏", - "pubDate": "2025-03-14T09:23:38" - }, - { - "title": "工具集:Fiora【漏洞PoC框架图形版的Nuclei】", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0MjY1ODE5Mg==&mid=2247485687&idx=1&sn=cf3a87af5a7ac1c00532e6685cf6d31e", - "description": "漏洞PoC框架Nuclei的图形版。快捷搜索PoC、一键运行Nuclei。即可作为独立程序运行,也可作为burp插件使用。一键运行等功能,提升nuclei的使用体验。", - "author": "风铃Sec", - "category": "风铃Sec", - "pubDate": "2025-03-14T08:42:56" - }, - { - "title": "18个API渗透测试技巧及工具(2025实战手册)", - "link": "https://mp.weixin.qq.com/s?__biz=MzIwMzIyMjYzNA==&mid=2247518221&idx=1&sn=3c5fc851a9496855a567d45e3f2f9616", - "description": null, - "author": "HACK之道", - "category": "HACK之道", - "pubDate": "2025-03-14T08:40:17" - }, - { - "title": "使用S/MIME端到端加密以保护电子邮件", - "link": "https://mp.weixin.qq.com/s?__biz=MzI3NzI4OTkyNw==&mid=2247489627&idx=1&sn=ceddd4b71b5aaf525c1b453d09d4bb1f", - "description": "使用S/MIME保护电子邮件。", - "author": "墨雪飘影", - "category": "墨雪飘影", - "pubDate": "2025-03-14T08:35:47" - }, - { - "title": "【漏洞挖掘案例】18w身份证泄露!某211高校信息泄露导致的RCE,影响全校用户!", - "link": "https://mp.weixin.qq.com/s?__biz=MzkxNzY5MTg1Ng==&mid=2247486114&idx=1&sn=098287b613d67220426c372221f0cb66", - "description": "18w身份证泄露!某211高校信息泄露导致的RCE,影响全校用户!", - "author": "富贵安全", - "category": "富贵安全", - "pubDate": "2025-03-14T08:31:12" - }, - { - "title": "vulnhub靶场之fristileaks靶机", - "link": "https://mp.weixin.qq.com/s?__biz=MzAxNTg1MDYxNA==&mid=2247490697&idx=1&sn=96527927991ea9576fab2b36876cab46", - "description": null, - "author": "泷羽sec-何生安全", - "category": "泷羽sec-何生安全", - "pubDate": "2025-03-14T08:30:51" - }, - { - "title": "记一次攻防演练突破", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyMDM4NDM5Ng==&mid=2247491222&idx=1&sn=bd2ee67026a598a81661b6e44aa40609", - "description": "在给定的靶标进行外网信息收集,有一处老旧站点,网站架构为iis+asp.net+mssql,搜索框处存在sql注入漏洞,尝试sqlmap检出3类注入", - "author": "安全洞察知识图谱", - "category": "安全洞察知识图谱", - "pubDate": "2025-03-14T08:30:47" - }, - { - "title": ".NET 一种尚未公开绕过 SQL 全局防注入拦截的方法", - "link": "https://mp.weixin.qq.com/s?__biz=MzUyOTc3NTQ5MA==&mid=2247499125&idx=2&sn=5a877b7d674007fda1fd0f00ac669f6c", - "description": null, - "author": "dotNet安全矩阵", - "category": "dotNet安全矩阵", - "pubDate": "2025-03-14T08:23:54" - }, - { - "title": "深度剖析:苹果WebKit零日漏洞(CVE-2025-24201)如何被用于复杂攻击", - "link": "https://mp.weixin.qq.com/s?__biz=MzA4NTY4MjAyMQ==&mid=2447900305&idx=1&sn=bc47cec112a10af66c5e153d6f9cc82f", - "description": "近日,苹果公司发布紧急安全更新,修复了WebKit浏览器引擎中的一个零日漏洞(CVE-2025-24201)。苹果罕见地指出,该漏洞已被用于针对特定个体的“极其复杂的攻击”,但出于安全考虑,并未公布攻击细节。", - "author": "技术修道场", - "category": "技术修道场", - "pubDate": "2025-03-14T08:04:14" - }, - { - "title": "漏洞预警 | Apache Tomcat远程代码执行漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzkwMTQ0NDA1NQ==&mid=2247492540&idx=1&sn=46ce2da0e24482730a74b36361f69238", - "description": "Apache Tomcat存在远程代码执行漏洞,在特定条件下,攻击者可上传文件以访问敏感内容,从而导致远程代码执行、信息泄露或数据篡改等安全问题。", - "author": "浅安安全", - "category": "浅安安全", - "pubDate": "2025-03-14T08:01:36" - }, - { - "title": "漏洞预警 | Apache Ofbiz模板引擎注入漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzkwMTQ0NDA1NQ==&mid=2247492540&idx=2&sn=46a423702ec6f44cab8ec8617ac3f1b8", - "description": "Apache OFBiz存在模板引擎注入漏洞,攻击者可能利用此漏洞执行恶意操作,甚至运行任意代码。", - "author": "浅安安全", - "category": "浅安安全", - "pubDate": "2025-03-14T08:01:36" - }, - { - "title": "提升日志系统范化效率的实践探索", - "link": "https://mp.weixin.qq.com/s?__biz=MzAwNTgyODU3NQ==&mid=2651131602&idx=1&sn=62d2a3e1d65bd2c140ee7b106a72e2d1", - "description": "日志规范化效率不仅关系到企业信息安全,也是保障业务连续性的关键。", - "author": "威努特安全网络", - "category": "威努特安全网络", - "pubDate": "2025-03-14T07:59:25" - }, - { - "title": "u200b【漏洞处置SOP】Apache Tomcat远程代码执行漏洞(CVE-2025-24813)处置建议", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0OTQzMDI4Mg==&mid=2247484674&idx=1&sn=2b29d399d90a3545634fc10774adb470", - "description": "安全漏洞防治中心团队成员已编制了升级到安全版本的标准作业程序(SOP),并已完成验证,成功地将 Apache Tomcat 9.0.98 升级到安全版本 9.0.102。", - "author": "方桥安全漏洞防治中心", - "category": "方桥安全漏洞防治中心", - "pubDate": "2025-03-14T07:58:46" - }, - { - "title": "某企业壳frida检测另辟蹊径的绕过", - "link": "https://mp.weixin.qq.com/s?__biz=MzkxNjMwNDUxNg==&mid=2247487417&idx=1&sn=e9ec4e1a36f3fc92907d0c1e9f555b5c", - "description": null, - "author": "进击的HACK", - "category": "进击的HACK", - "pubDate": "2025-03-14T07:55:18" - }, - { - "title": "『代码审计』某OA系统.NET代码审计", - "link": "https://mp.weixin.qq.com/s?__biz=MzkxNjMwNDUxNg==&mid=2247487417&idx=2&sn=6da0011e1d07a591ca9ea077aef60839", - "description": "记录某OA系统.NET审计过程", - "author": "进击的HACK", - "category": "进击的HACK", - "pubDate": "2025-03-14T07:55:18" - }, - { - "title": "Venomous Bear APT 攻击模拟", - "link": "https://mp.weixin.qq.com/s?__biz=MzkwOTE5MDY5NA==&mid=2247505675&idx=1&sn=c46ef6358de254daf0e405132717fbaa", - "description": "这是 (Venomous Bear) APT 组织针对美国、德国和阿富汗的攻击模拟,攻击活动至少从 2020 年开始活", - "author": "安全狗的自我修养", - "category": "安全狗的自我修养", - "pubDate": "2025-03-14T07:18:37" - }, - { - "title": "APIKit:扫描API文档泄露的burp插件", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg2MzkwNDU1Mw==&mid=2247485504&idx=1&sn=bda4eee8fcb148d277f3d54b8c4c697c", - "description": null, - "author": "信安路漫漫", - "category": "信安路漫漫", - "pubDate": "2025-03-14T07:00:26" - }, - { - "title": "Apache Tomcat 反序列化代码执行 | CVE-2025-24813", - "link": "https://mp.weixin.qq.com/s?__biz=MzA5OTA0MTU4Mg==&mid=2247486173&idx=1&sn=964d41cd89d30010f8fd73946a6714ff", - "description": "yyds", - "author": "南街老友", - "category": "南街老友", - "pubDate": "2025-03-14T01:22:06" - }, - { - "title": "JsRpc联动burp实现自动加解密(详细版)", - "link": "https://mp.weixin.qq.com/s?__biz=MzU2NDY2OTU4Nw==&mid=2247519539&idx=1&sn=00cf68809f4f4596cb9c12019a4cfa6e", - "description": null, + "title": "CVE-2025-48804|BitUnlocker 把 BitLocker 的脸打了", + "link": "https://mp.weixin.qq.com/s/keJR9JUMn5_BEmn8Kcn81Q", + "description": "一台全量打补丁的 Windows 11 笔记本,BitLocker 开着,TPM 芯片在工作,你觉得丢了顶多是", "author": "船山信安", "category": "船山信安", - "pubDate": "2025-03-14T00:01:02" + "pubDate": "2026-05-17T12:20:35" }, { - "title": "为渗透测试而生的ssh面板|漏洞探测", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg3ODE2MjkxMQ==&mid=2247490519&idx=1&sn=5eafc34f0f9558de0508085e2b8f74b7", - "description": "传统的ssh工具存在多种问题,此工具就是为了简化红队人员在渗透测试过程中的繁琐操作而设计。", - "author": "渗透安全HackTwo", - "category": "渗透安全HackTwo", - "pubDate": "2025-03-14T00:00:43" - }, - { - "title": "记一次双向认证绕过", - "link": "https://mp.weixin.qq.com/s?__biz=MzU3Mjk2NDU2Nw==&mid=2247492964&idx=1&sn=0dc0b6254eccafa1e1f829e86902f119", + "title": "Agent运行时安全详解:攻击视角下的提示词注入、工具滥用与执行面防御", + "link": "https://mp.weixin.qq.com/s/F-Z5dYmz8p1ZTlVmlF3tQA", "description": null, - "author": "湘安无事", - "category": "湘安无事", - "pubDate": "2025-03-13T23:36:16" + "author": "Security for AI", + "category": "Security for AI", + "pubDate": "2026-05-17T10:30:16" }, { - "title": "工具|Burp插件-短信轰炸 Bypass", - "link": "https://mp.weixin.qq.com/s?__biz=MzU3Mjk2NDU2Nw==&mid=2247492964&idx=3&sn=1ba92fb61769f54c9548066ea4cdf366", - "description": "昱子师傅的短信轰炸绕过的Burpsite插件", - "author": "湘安无事", - "category": "湘安无事", - "pubDate": "2025-03-13T23:36:16" + "title": "SQL注入的方法0x001", + "link": "https://mp.weixin.qq.com/s/szBoJ3IIWwBRJl8CjUNcWg", + "description": "免责声明:严格禁止对任何未授权系统/网络进行扫描、攻击或入侵。禁止制作/传播恶意程序,禁止参与任何网络犯罪。", + "author": "建哥聊安全", + "category": "建哥聊安全", + "pubDate": "2026-05-17T10:27:47" }, { - "title": "Wazuh4.7部署", - "link": "https://mp.weixin.qq.com/s?__biz=MzI2MDI0NTM2Nw==&mid=2247490175&idx=1&sn=564c04230d550494ea70ebca42ae3143", + "title": "当 AWS SDK 客户端跌落系统角色——一个被忽视的提权陷阱", + "link": "https://mp.weixin.qq.com/s/STw4pAcOug1ksV1pSBTDnw", + "description": "云安全不止是看 S3 桶有没有公开、VPC 隔没隔离。真正致命的问题往往藏在应用如何调用云服务的逻辑里面。这篇文章通过一个真实的“从 S3 导入数据”漏洞,拆解 AWS SDK 凭据初始化的坑:一旦错误处理把凭据设为 nil,客户端会顺着凭", + "author": "幻泉之洲", + "category": "幻泉之洲", + "pubDate": "2026-05-17T09:26:19" + }, + { + "title": "ssh-keysign-pwn:Linux 内核五月第四起本地提权漏洞", + "link": "https://mp.weixin.qq.com/s/5GlfjT4usi_mj5HUA6q2ng", + "description": "导语:你有一台Linux服务器,上面有一个普通用户账号。你没有root密码,也没有sudo权限。但你", + "author": "黑白之道", + "category": "黑白之道", + "pubDate": "2026-05-17T08:04:08" + }, + { + "title": "邮件钓鱼免杀完全指南(2026 实战版)· 二、OSINT 信息收集四步法", + "link": "https://mp.weixin.qq.com/s/P6xV5_yhvX9UDM4wBL1i7w", + "description": "系列说明:本文是《邮件钓鱼免杀完全指南(2026 实战版)》系列的第二篇。上篇建立了全链路攻击视野,本篇深入攻击链最前端——如何利用开源情报(OSINT)在不动声色间获取目标企业的完整邮箱清单和人员画像。", + "author": "IceByte-Sec", + "category": "IceByte-Sec", + "pubDate": "2026-05-16T22:51:07" + }, + { + "title": "冰蝎 v4.1 被曝 0‑click 高危漏洞,一连接就被反制,可窃取凭据...!", + "link": "https://mp.weixin.qq.com/s/6LP7Izufmkq20Es7gNFoPw", "description": null, - "author": "安全孺子牛", - "category": "安全孺子牛", - "pubDate": "2025-03-13T22:45:02" + "author": "Z2O安全攻防", + "category": "Z2O安全攻防", + "pubDate": "2026-05-16T21:24:17" }, { - "title": "Hacking a VW Golf EPS - Part 1", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0MzQzNzMxOA==&mid=2247487851&idx=1&sn=1df9a5b9efa9ee2c50a279f079ab6337", - "description": "修改2010年大众高尔夫MK6的电子动力转向(EPS)ECU固件的经历", - "author": "安全脉脉", - "category": "安全脉脉", - "pubDate": "2025-03-13T21:53:23" - }, - { - "title": "Rust后门样本加载与传播方式演变过程分析", - "link": "https://mp.weixin.qq.com/s?__biz=MzI3NjYzMDM1Mg==&mid=2247524579&idx=1&sn=4fd63ec101952bc5ae6933d368e97645", - "description": "近年来,随着Rust语言在系统编程领域的广泛应用,基于该语言开发的恶意软件样本也随之显著增长,其特有的技术特性正逐渐成为网络犯罪分子的新选择,主要表现为以下几点:", - "author": "火绒安全", - "category": "火绒安全", - "pubDate": "2025-03-13T20:26:05" - }, - { - "title": "VBS/SMEP 绕过,消灭 Windows 内核缓解措施", - "link": "https://mp.weixin.qq.com/s?__biz=MzAxODM5ODQzNQ==&mid=2247487712&idx=1&sn=a3834f72d3b1fa52802e7ff689930a23", + "title": "记录一次对校内系统的安全测试", + "link": "https://mp.weixin.qq.com/s/dF64jY2-z_z6jQKAlP1_5g", "description": null, - "author": "securitainment", - "category": "securitainment", - "pubDate": "2025-03-13T20:25:30" + "author": "智动心域", + "category": "智动心域", + "pubDate": "2026-05-16T20:41:31" }, { - "title": "Docker逃逸方式总结分享", - "link": "https://mp.weixin.qq.com/s?__biz=MzkzNTYwMTk4Mw==&mid=2247488561&idx=1&sn=32c248a4b7c280c9587ae5aa75471cd7", + "title": "【域攻防】noPac域内提权", + "link": "https://mp.weixin.qq.com/s/gBS86kfrhbzwlpyC9s8LsA", + "description": "「时光会把你雕刻成,你应有的样子」", + "author": "平凡在修行", + "category": "平凡在修行", + "pubDate": "2026-05-16T20:00:30" + }, + { + "title": "JDownloader 网站遭黑客攻击,Windows 和 Linux 用户面临恶意安装程序的威胁", + "link": "https://mp.weixin.qq.com/s/wPfdL_WOy2q524P4fkF-vg", + "description": "一款深受数百万用户信赖的热门开源下载管理器,在攻击者入侵其官方网站后,突然变成了恶意软件传播平台。", + "author": "暗镜", + "category": "暗镜", + "pubDate": "2026-05-16T19:09:46" + }, + { + "title": "弱口令到Root Shell 配置正确的重要性", + "link": "https://mp.weixin.qq.com/s/jQ9GGUXsCKJLS2zmIeJ_Uw", "description": null, - "author": "网安探索员", - "category": "网安探索员", - "pubDate": "2025-03-13T20:00:48" + "author": "YMs0ra的安全漫路", + "category": "YMs0ra的安全漫路", + "pubDate": "2026-05-16T18:51:52" }, { - "title": "渗透测试加解密 - mitmproxy-gui", - "link": "https://mp.weixin.qq.com/s?__biz=MzIzNTE0Mzc0OA==&mid=2247486157&idx=1&sn=9beddb5d2c9cf1076f1d3f170cd9d8ec", - "description": "一个基于 Mitmproxy 的 GUI 工具,支持多种加密算法的请求拦截和修改。", - "author": "GSDK安全团队", - "category": "GSDK安全团队", - "pubDate": "2025-03-13T19:30:50" - }, - { - "title": "Apache Tomcat远程代码执行漏洞(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0OTcyODM3NA==&mid=2247484043&idx=1&sn=10941231c7611c9a29d3c1da54ef8398", + "title": "黑客利用OrBit Rootkit窃取Linux系统SSH与Sudo凭证", + "link": "https://mp.weixin.qq.com/s/90KTh-M2nElYmocKULWtoA", "description": null, - "author": "安全技术达人", - "category": "安全技术达人", - "pubDate": "2025-03-13T19:09:02" + "author": "网安百色", + "category": "网安百色", + "pubDate": "2026-05-16T18:08:24" }, { - "title": "【安全圈】PHP XXE 注入漏洞让攻击者读取配置文件和私钥", - "link": "https://mp.weixin.qq.com/s?__biz=MzIzMzE4NDU1OQ==&mid=2652068467&idx=2&sn=8209e2048ee474d6b91f16029aa9c134", + "title": "VMware Fusion漏洞可致攻击者获取root权限", + "link": "https://mp.weixin.qq.com/s/Mej9s5_vLeu62bG2Fq4dQQ", "description": null, - "author": "安全圈", - "category": "安全圈", - "pubDate": "2025-03-13T19:00:26" + "author": "网安百色", + "category": "网安百色", + "pubDate": "2026-05-16T18:08:24" }, { - "title": "【安全圈】施乐打印机漏洞使攻击者能够从 LDAP 和 SMB 中获取身份验证数据", - "link": "https://mp.weixin.qq.com/s?__biz=MzIzMzE4NDU1OQ==&mid=2652068467&idx=3&sn=a464bcdd8889a7e0e65921296df9fdd8", - "description": null, - "author": "安全圈", - "category": "安全圈", - "pubDate": "2025-03-13T19:00:26" + "title": "OpenClaw 曝出四大漏洞,可导致数据窃取、权限提升与持久化攻击", + "link": "https://mp.weixin.qq.com/s/Wxqixof2NyhiaNhlVHEa5g", + "description": "OpenClaw四大漏洞可致数据窃取、权限提升与持久化攻击,速修复。", + "author": "FreeBuf", + "category": "FreeBuf", + "pubDate": "2026-05-16T18:02:34" }, { - "title": "【漏洞预警】Apache Camel绕过/注入漏洞(CVE-2025-29891)", - "link": "https://mp.weixin.qq.com/s?__biz=MzI3NzMzNzE5Ng==&mid=2247489766&idx=2&sn=6f177e50f2b4c15cd06162ddd51e5386", - "description": null, - "author": "飓风网络安全", - "category": "飓风网络安全", - "pubDate": "2025-03-13T18:50:37" - }, - { - "title": "Zoom客户端惊现高危漏洞,数百万用户数据或泄露!", - "link": "https://mp.weixin.qq.com/s?__biz=MjM5NTc2MDYxMw==&mid=2458590760&idx=2&sn=0a7aeb5d4d57669042d37bf081806d7e", - "description": "Zoom客户端被曝出多个高危漏洞,可能导致数据泄露和未授权访问,用户需尽快更新软件。", - "author": "看雪学苑", - "category": "看雪学苑", - "pubDate": "2025-03-13T17:59:47" - }, - { - "title": "关于防范针对DeepSeek本地化部署实施网络攻击的风险提示", - "link": "https://mp.weixin.qq.com/s?__biz=MjM5NDA3ODY4Ng==&mid=2247488887&idx=2&sn=fcef25a6329622c6175ccee957bdfd0f", - "description": null, - "author": "信息新安全", - "category": "信息新安全", - "pubDate": "2025-03-13T16:02:05" - }, - { - "title": "ruby-saml 身份认证绕过漏洞(CVE-2025-25291、CVE-2025-25292)安全风险通告", - "link": "https://mp.weixin.qq.com/s?__biz=MzU5NDgxODU1MQ==&mid=2247503162&idx=2&sn=8cdebf57c6043395f1047ecde66a85e1", - "description": "致力于第一时间为企业级用户提供权威漏洞情报和有效解决方案。", - "author": "奇安信 CERT", - "category": "奇安信 CERT", - "pubDate": "2025-03-13T15:25:22" - }, - { - "title": "JAVA代码审计之权限绕过", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg4MTkwMTI5Mw==&mid=2247489156&idx=1&sn=3fed7fc905f2de5bb29eb80b60117288", - "description": "用了getRequestURI来接收url,该方法本来就不安全,此处配合startsWith导致权限绕过。以下代码大概意思是:如果请求链接以(/admin开头)且(不为/admin/login开头)", - "author": "星悦安全", - "category": "星悦安全", - "pubDate": "2025-03-13T13:51:32" - }, - { - "title": "告别流量拦截!手把手教你配置哥斯拉动态特征", - "link": "https://mp.weixin.qq.com/s?__biz=MzU0NDc0NTY3OQ==&mid=2247488532&idx=1&sn=1d459ce58b89f242536887c1447d94f1", - "description": null, - "author": "老鑫安全", - "category": "老鑫安全", - "pubDate": "2025-03-13T13:40:31" - }, - { - "title": "【漏洞复现】(CVE-2025-24813)Apache Tomcat 远程代码执行漏洞复现", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0OTY2ODE1NA==&mid=2247485154&idx=1&sn=cf980e0bc9741288fd39be9c152c876d", - "description": null, - "author": "Z0安全", - "category": "Z0安全", - "pubDate": "2025-03-13T13:29:15" - }, - { - "title": "某APP加密解密", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg4MDg5ODIzNQ==&mid=2247483983&idx=1&sn=0b7abeb10a0c2b6fe158bf6a985fd3bb", - "description": null, - "author": "BH安全", - "category": "BH安全", - "pubDate": "2025-03-13T12:26:35" - }, - { - "title": "滥用 VBS Enclaves 创建规避恶意软件", - "link": "https://mp.weixin.qq.com/s?__biz=MzAxMjYyMzkwOA==&mid=2247528489&idx=1&sn=a0a158ad7c1585be7e5074d43954bcd7", - "description": null, - "author": "Ots安全", - "category": "Ots安全", - "pubDate": "2025-03-13T12:14:26" - }, - { - "title": "复现完毕 | Apache Tomcat远程代码执行,内含脚本(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0NzQxNzY2OQ==&mid=2247488897&idx=1&sn=128e4801770144c95ba451886654ac3d", - "description": "犀利猪安全,带你上高速~", - "author": "犀利猪安全", - "category": "犀利猪安全", - "pubDate": "2025-03-13T11:51:38" - }, - { - "title": "如何提高群晖NAS外网访问的连接安全性?", - "link": "https://mp.weixin.qq.com/s?__biz=MzU2MjU2MzI3MA==&mid=2247484594&idx=1&sn=3c5318776e25bf47d4260cd5f36cbd9c", - "description": null, - "author": "内存泄漏", - "category": "内存泄漏", - "pubDate": "2025-03-13T11:15:51" - }, - { - "title": "突破后缀限制实现任意文件上传", - "link": "https://mp.weixin.qq.com/s?__biz=MzU0MTc2NTExNg==&mid=2247491691&idx=1&sn=ca03b792096d0780c894b804510a2bf0", - "description": null, - "author": "实战安全研究", - "category": "实战安全研究", - "pubDate": "2025-03-13T10:42:16" - }, - { - "title": "黑客利用高级MFA绕过技术入侵用户账户", - "link": "https://mp.weixin.qq.com/s?__biz=MzUyMzczNzUyNQ==&mid=2247523809&idx=1&sn=6c2cb03ffaa32a18da11be5c57c191bd", - "description": "黑客利用高级MFA绕过技术入侵用户账户", - "author": "邑安全", - "category": "邑安全", - "pubDate": "2025-03-13T10:42:00" - }, - { - "title": "Ballista僵尸网络利用未修补的TP-Link漏洞,攻击超6000台设备", - "link": "https://mp.weixin.qq.com/s?__biz=MzUyMzczNzUyNQ==&mid=2247523809&idx=3&sn=e0c97001d98173e0ee1c1b2039939e43", - "description": "Ballista僵尸网络利用未修补的TP-Link漏洞,攻击超6000台设备", - "author": "邑安全", - "category": "邑安全", - "pubDate": "2025-03-13T10:42:00" - }, - { - "title": "还在用传统方法防护网站?实操雷池带您体验DDoS、漏洞、API攻击防护新高度!", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg2MTg2NzI5OA==&mid=2247484908&idx=1&sn=492b0d17cda9cb8eb4a8865b258f2e14", - "description": "评价:无敌", - "author": "黑熊安全", - "category": "黑熊安全", - "pubDate": "2025-03-13T09:00:56" - }, - { - "title": "日本警察厅披露MirrorFace APT 组织的攻击活动", - "link": "https://mp.weixin.qq.com/s?__biz=MzI2NzAwOTg4NQ==&mid=2649794492&idx=1&sn=3ad31b6fc2ac1785bf6874d4fcf02ec5", - "description": "黑客利用windows 沙盒攻击日本目标", - "author": "军哥网络安全读报", - "category": "军哥网络安全读报", - "pubDate": "2025-03-13T09:00:43" - }, - { - "title": "Mandiant 发现停产 Juniper 路由器上的自定义后门", - "link": "https://mp.weixin.qq.com/s?__biz=MzI2NzAwOTg4NQ==&mid=2649794492&idx=2&sn=cc66f241a2f866678a3a36452ef0b0fc", - "description": "后门被植入到过期或报废的硬件中。", - "author": "军哥网络安全读报", - "category": "军哥网络安全读报", - "pubDate": "2025-03-13T09:00:43" - }, - { - "title": "APT攻击全链溯源:基于多阶段载荷投递的Windows 11定向渗透技术深度解构", - "link": "https://mp.weixin.qq.com/s?__biz=MzAwMjQ2NTQ4Mg==&mid=2247497915&idx=1&sn=48a2ff69e58f913b0c1ecbcdeb2e2a22", - "description": null, + "title": "伪装成 Google Gemini CLI 的新型 Windows 恶意软件攻击活动分析", + "link": "https://mp.weixin.qq.com/s/WJF0n601BGOonfD1vTxcTg", + "description": "近期,针对 Windows 平台的恶意软件攻击活动出现新动向,攻击者通过仿冒 Google Gemini CL", "author": "Khan安全团队", "category": "Khan安全团队", - "pubDate": "2025-03-13T08:42:08" + "pubDate": "2026-05-16T16:52:53" }, { - "title": "vulnhub靶场之devguru靶机,两个cve的利用及复现", - "link": "https://mp.weixin.qq.com/s?__biz=MzAxNTg1MDYxNA==&mid=2247490642&idx=1&sn=629db589e9823acdf55e2789e7cb3ea6", + "title": "SRC 每日漏洞复现学习系列(第 2 篇)垂直越权漏洞+漏洞报告模板", + "link": "https://mp.weixin.qq.com/s/qfELG3imPQpmkD8Cy6waMw", + "description": "很多刚入门学网络安全、接触 SRC 漏洞挖掘的同学, 越权漏洞是仅次于 XSS,最好发现、最容易复现、收录率最", + "author": "网络安全学习室", + "category": "网络安全学习室", + "pubDate": "2026-05-16T10:19:46" + }, + { + "title": "赛欧思一周资讯分类汇总(2026-05-11 ~ 2026-05-16)", + "link": "https://mp.weixin.qq.com/s/L-vJLaRnt53liEwRwiDAVQ", + "description": "一周资讯分类汇总:2026年5月7日,暗网曝光阿根廷政府及新闻网站 Cronica.com 大规模数据泄露事件。涉及 .gob.ar 和 .edu.ar 域名下上百个政府与教育机构网站的超 8000 万条用户凭据,包括 DNI、密码、电话等敏感信息。", + "author": "赛欧思安全研究实验室", + "category": "赛欧思安全研究实验室", + "pubDate": "2026-05-16T09:30:37" + }, + { + "title": "18年潜伏Nginx RCE漏洞曝光 CVE-2026-42945", + "link": "https://mp.weixin.qq.com/s/7XsBXsQAp7lHba8ycOgprQ", + "description": "导语:2026年5月13日,安全公司Depthfirst借助其AI工具\\\\x26quot;Rift\\\\x26quot;发现了Nginx中", + "author": "黑白之道", + "category": "黑白之道", + "pubDate": "2026-05-16T09:24:02" + }, + { + "title": "Next.js曝出高危SSRF漏洞 CVE-2026-44578", + "link": "https://mp.weixin.qq.com/s/mw1m6iKZY1AL1rN31D1QXw", + "description": "导语:2026年5月11日,Vercel发布安全公告披露Next.js存在SSRF漏洞(CVE-2026-", + "author": "黑白之道", + "category": "黑白之道", + "pubDate": "2026-05-16T09:24:02" + }, + { + "title": "AI 驱动的红队免杀知识库 | Webshell 免杀、WAF/RASP/EDR 绕过、流量伪装等实战Tips", + "link": "https://mp.weixin.qq.com/s/40xun7CtUT31EISAr98TMw", "description": null, - "author": "泷羽sec-何生安全", - "category": "泷羽sec-何生安全", - "pubDate": "2025-03-13T08:31:03" + "author": "黑白之道", + "category": "黑白之道", + "pubDate": "2026-05-16T09:24:02" }, { - "title": "一次就学会网络钓鱼“骚”姿势", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyMDM4NDM5Ng==&mid=2247491193&idx=1&sn=4caff4cd05e9ddf42626608e1cc6635e", + "title": "关键Exchange Server 0day漏洞在野外攻击中被积极利用", + "link": "https://mp.weixin.qq.com/s/9pUyo4DPM4zPlpSml9Hx-w", + "description": "Exchange 0day正在被积极利用,目前尚无官方补丁。", + "author": "爱拍照的老李", + "category": "爱拍照的老李", + "pubDate": "2026-05-16T09:00:34" + }, + { + "title": "黑客利用 OrBit Rootkit 从 Linux 系统中窃取 SSH 和 sudo 凭据", + "link": "https://mp.weixin.qq.com/s/GdhhQwftXQQh9YjWWDX1cQ", + "description": "将自身嵌入到 Linux 系统的核心,接入四十多个基本系统功能,从而使其几乎完全不可见……", + "author": "爱拍照的老李", + "category": "爱拍照的老李", + "pubDate": "2026-05-16T09:00:34" + }, + { + "title": "俄黑客组织Turla 将 Kazuar 后门转变为模块化 P2P 木马网络以实现持久访问", + "link": "https://mp.weixin.qq.com/s/h671x3uIGVMoVIozCWrsoQ", + "description": "微软披露俄黑客组织的最新活动。", + "author": "爱拍照的老李", + "category": "爱拍照的老李", + "pubDate": "2026-05-16T09:00:34" + }, + { + "title": "Turla 将 Kazuar 后门转化为模块化 P2P 僵尸网络,实现持久访问", + "link": "https://mp.weixin.qq.com/s/YRDbjx_EU3fBNIA8LF4fxA", + "description": "Turla 将 Kazuar 后门转化为模块化 P2P 僵尸网络,实现持久访问", + "author": "安全圈的那点事儿", + "category": "安全圈的那点事儿", + "pubDate": "2026-05-16T08:08:57" + }, + { + "title": "linux 下获取文件绝对路径", + "link": "https://mp.weixin.qq.com/s/yuywjtjvSES1lxWnvyAmFw", + "description": "这个函数的作用是显示当前文件的完整路径。", + "author": "生有可恋", + "category": "生有可恋", + "pubDate": "2026-05-16T08:00:47" + }, + { + "title": "Hermes的应用(七):分析DirtyFrag(CVE-2026-43284)高危漏洞Poc", + "link": "https://mp.weixin.qq.com/s/bdy4PrPmqG6DTBfPcaCUAw", "description": null, - "author": "安全洞察知识图谱", - "category": "安全洞察知识图谱", - "pubDate": "2025-03-13T08:31:02" + "author": "白帽子", + "category": "白帽子", + "pubDate": "2026-05-16T06:05:21" }, { - "title": "某付宝登录js分析", - "link": "https://mp.weixin.qq.com/s?__biz=MzIzMTIzNTM0MA==&mid=2247497269&idx=1&sn=91b4db853c028312be50352cfbb7e8e1", - "description": "某付宝登录js分析", - "author": "迪哥讲事", - "category": "迪哥讲事", - "pubDate": "2025-03-13T08:30:54" + "title": "天塌了,全球互联网基础设施,nginx爆RCE,利用方式竟如此简单", + "link": "https://mp.weixin.qq.com/s/Coxl5fLG-dGr9Qimlkc6MQ", + "description": "天塌了,互联网基础设施,nginx爆RCE,利用方式竟如此简单", + "author": "爱坤sec", + "category": "爱坤sec", + "pubDate": "2026-05-16T02:31:03" }, { - "title": "深度揭秘 | “盲鹰”APT组织如何利用Windows漏洞和代码托管平台渗透哥伦比亚", - "link": "https://mp.weixin.qq.com/s?__biz=MzA4NTY4MjAyMQ==&mid=2447900296&idx=1&sn=06182175bd5370f0e140f737999ff90f", - "description": "Check Point 发布深度报告,揭露了“盲鹰”(Blind Eagle,又称 APT-C-36)黑客组织针对哥伦比亚的复杂网络攻击活动。自2024年11月以来,该组织持续发动攻击,并在12月19日左右达到高峰,受害者超过1600人。", - "author": "技术修道场", - "category": "技术修道场", - "pubDate": "2025-03-13T08:14:33" + "title": "【内网渗透】rootkit后门Reptile2.0权限维持", + "link": "https://mp.weixin.qq.com/s/9LjTCP9K3Y802Xh7BmmNfw", + "description": "Reptilexa0是一款针对 Linux 系统的高级xa0内核级 Rootkit(LKM - Loadable Kernel Module)xa0权限维持工具。", + "author": "皇后红队", + "category": "皇后红队", + "pubDate": "2026-05-16T01:53:18" }, { - "title": "GoSearch 【数字足迹及泄露密码追踪 OSINT工具】", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyNzIxMjM3Mg==&mid=2247489619&idx=1&sn=6289e1279ea3cb39e75d68ac5b0e2efa", - "description": null, - "author": "白帽学子", - "category": "白帽学子", - "pubDate": "2025-03-13T08:11:50" + "title": "分享两个应急响应中实用的进程任务管理器", + "link": "https://mp.weixin.qq.com/s/MP-GbaH9MCcsbG3Jt3uY9A", + "description": "在 Windows 应急响应现场,很多时候我们第一眼看的不是日志,也不是流量,而是进程。", + "author": "毅心安全", + "category": "毅心安全", + "pubDate": "2026-05-16T00:17:50" }, { - "title": "Wireshark TS | 关闭连接和超时重传", - "link": "https://mp.weixin.qq.com/s?__biz=MzA5NTUxODA0OA==&mid=2247493327&idx=1&sn=62a3a868dc2cbe3e4c023e5267043d02", - "description": "Wireshark Troubleshooting 系列 87", - "author": "Echo Reply", - "category": "Echo Reply", - "pubDate": "2025-03-13T08:08:40" + "title": "红队攻击 Web3 AI 代理攻击途径的指南攻击", + "link": "https://mp.weixin.qq.com/s/_BDvYVudigZa_fTDThIYJA", + "description": "本指南介绍了上下文操纵——一种针对 Web3 AI 代理的综合攻击分类法,根据最近的研究,它已被证明比传统的单", + "author": "Esn技术社区", + "category": "Esn技术社区", + "pubDate": "2026-05-15T23:46:36" }, { - "title": "深度XSS漏洞扫描器", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0ODM0NDIxNQ==&mid=2247493794&idx=1&sn=3f3e2f673bfe8fc35c07ee0c5d5fe7b1", - "description": null, - "author": "夜组安全", - "category": "夜组安全", - "pubDate": "2025-03-13T08:00:32" + "title": "终端隐形链:OSC 8超链接注入攻击", + "link": "https://mp.weixin.qq.com/s/v3ES8XbXVu4GKjwKXBlHNA", + "description": "终端模拟器是现代开发者和系统管理员的日常入口,但很少有人意识到,那串出现在命令行上的蓝色下划线文字,背后承载的远不止一个URL。", + "author": "Ghost Wolf Lab", + "category": "Ghost Wolf Lab", + "pubDate": "2026-05-15T20:29:12" }, { - "title": "CTF web 解题思路", - "link": "https://mp.weixin.qq.com/s?__biz=MjM5OTk4MDE2MA==&mid=2655270342&idx=3&sn=b9cfdef795c1640156040d78b75c23cc", - "description": null, - "author": "计算机与网络安全", - "category": "计算机与网络安全", - "pubDate": "2025-03-13T07:58:09" + "title": "威胁情报|node-ipc 遭供应链入侵投毒攻击分析", + "link": "https://mp.weixin.qq.com/s/8iUR6_plQg7zuFlgmuu_Ww", + "description": "本次事件是xa0npm 公共生态中一起典型的供应链沦陷案例。攻击者通过复用真实项目的合法发布路径,精准在xa0node-ipcxa0的xa0CommonJS 入口文件中注入了恶意投毒逻辑,实现了‘无交互、加载即触发’的强隐蔽、高危攻击效果。", + "author": "慢雾科技", + "category": "慢雾科技", + "pubDate": "2026-05-15T19:50:36" }, { - "title": "Windows应急响应及隐患排查", - "link": "https://mp.weixin.qq.com/s?__biz=MjM5OTk4MDE2MA==&mid=2655270342&idx=4&sn=c84ced83495ebf7e918eadeaa81caa38", - "description": null, - "author": "计算机与网络安全", - "category": "计算机与网络安全", - "pubDate": "2025-03-13T07:58:09" + "title": "微软警告:HPE Operations Agent 可能在无恶意软件攻击中被滥用", + "link": "https://mp.weixin.qq.com/s/n9TqWGWGQCfe0MNsIc7u2w", + "description": "微软披露了一起隐蔽的入侵活动,攻击者绕过了传统的恶意软件和漏洞利用,而是滥用受信任的企业工具悄无声息地渗透网络。", + "author": "安全圈的那点事儿", + "category": "安全圈的那点事儿", + "pubDate": "2026-05-15T19:15:00" }, { - "title": "漏洞预警 | GeoServer远程代码执行漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzkwMTQ0NDA1NQ==&mid=2247492522&idx=1&sn=3744e231bd2aaf323f5d4c0a37c1e6e0", - "description": "GeoServer的/geoserver/topp/wfs接口存在远程代码执行漏洞,未经身份验证的攻击者可以通过该漏洞远程执行任意代码,从而控制目标服务器。", - "author": "浅安安全", - "category": "浅安安全", - "pubDate": "2025-03-13T07:50:47" + "title": "Windows DNS客户端漏洞可导致远程代码执行攻击", + "link": "https://mp.weixin.qq.com/s/XreczO_mTaQmUlrBUFr9vw", + "description": "Windows DNS客户端高危漏洞可致远程代码执行,微软紧急修复。", + "author": "FreeBuf", + "category": "FreeBuf", + "pubDate": "2026-05-15T18:32:34" }, { - "title": "漏洞预警 | OfficeWeb365任意文件读取漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzkwMTQ0NDA1NQ==&mid=2247492522&idx=2&sn=07f7a0ffc857dc08e64a0f78def152d5", - "description": "OfficeWeb365的/wordfix/Index接口存在任意文件读取漏洞,未经身份验证的攻击者可以通过该漏洞读取服务器任意文件,从而获取大量敏感信息。", - "author": "浅安安全", - "category": "浅安安全", - "pubDate": "2025-03-13T07:50:47" - }, - { - "title": "CVE-2025-24813 Apache Tomcat 远程命令执行漏洞分析与总结", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0NTU5Mjg0Ng==&mid=2247491632&idx=1&sn=4f849b8b77db48f26ab7dc6eee90092a", - "description": "该漏洞影响启动 DefaultServlet PUT 文件写入功能的 Tomcat 系统,可导致恶意文件写入并可能导致 RCE 。", - "author": "自在安全", - "category": "自在安全", - "pubDate": "2025-03-13T07:20:58" - }, - { - "title": "内网横向之RDP缓存利用", - "link": "https://mp.weixin.qq.com/s?__biz=MzU2NDY2OTU4Nw==&mid=2247519500&idx=1&sn=a335bb55e26f706060d25df237568e22", - "description": null, - "author": "船山信安", - "category": "船山信安", - "pubDate": "2025-03-13T00:02:52" - }, - { - "title": "Ruijie Networks RCE漏洞检测工具 -- RuijieRCE(3月10日更新)", - "link": "https://mp.weixin.qq.com/s?__biz=MzI4MDQ5MjY1Mg==&mid=2247516288&idx=1&sn=27bd5116a43e345822f71cfe899c5e25", - "description": null, - "author": "Web安全工具库", - "category": "Web安全工具库", - "pubDate": "2025-03-13T00:01:03" - }, - { - "title": "JAVA代码审计之权限绕过", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg2NDg2MDIxNQ==&mid=2247485799&idx=1&sn=e679756e16bb95813778877d54b690da", - "description": null, - "author": "Jie安全", - "category": "Jie安全", - "pubDate": "2025-03-13T00:00:55" - }, - { - "title": "安卓逆向 -- 动态调试以及常规手段", - "link": "https://mp.weixin.qq.com/s?__biz=MzA4MzgzNTU5MA==&mid=2652038239&idx=1&sn=bd9d42b4633c6f16863f074533d957d0", - "description": null, - "author": "逆向有你", - "category": "逆向有你", - "pubDate": "2025-03-13T00:00:37" - }, - { - "title": "私有化部署的DeepSeek的漏洞利用、防范", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg2NDYwMDA1NA==&mid=2247544670&idx=2&sn=39645f644be0aa48e713c897542be525", - "description": null, - "author": "Hacking黑白红", - "category": "Hacking黑白红", - "pubDate": "2025-03-12T23:50:39" - }, - { - "title": "流量分析 - USB流量分析基础篇 (带一把梭工具)", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0NTg3ODYxNg==&mid=2247485406&idx=1&sn=8448aefa7ba00d699876446625c5d73b", - "description": "进入小美的电脑,抓小美的USB数据包,找到小美冷落我的证据。", - "author": "信安一把索", - "category": "信安一把索", - "pubDate": "2025-03-12T20:36:39" - }, - { - "title": "紧急:Microsoft 修补了 57 个安全漏洞,包括 6 个被积极利用的零日漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzkzNjIzMjM5Ng==&mid=2247490274&idx=1&sn=e2cd82077177a60dc46ad91a15a682e7", - "description": null, - "author": "信息安全大事件", - "category": "信息安全大事件", - "pubDate": "2025-03-12T19:59:31" - }, - { - "title": "工具更新:Myosotis-免杀框架-1.1.0", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg3MjU5MDc5MA==&mid=2247483778&idx=1&sn=0760dbde1f8ade9d914a675fb3ff4ae7", - "description": "最新链式加密功能更新,上亿种加密链助力免杀!", - "author": "小白安全", - "category": "小白安全", - "pubDate": "2025-03-12T19:16:17" - }, - { - "title": "记一次漏洞挖掘过程中的SQL注入浅浅绕过记录", - "link": "https://mp.weixin.qq.com/s?__biz=MzIwMzIyMjYzNA==&mid=2247518209&idx=1&sn=c0d85b62621c3068befe75266f7b5abb", - "description": null, - "author": "HACK之道", - "category": "HACK之道", - "pubDate": "2025-03-12T19:00:06" - }, - { - "title": "【漏洞预警】Fortinet多个产品前台远程代码执行漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzI3NzMzNzE5Ng==&mid=2247489756&idx=1&sn=3e2882a2cbb0aa0a5791a908e7bb00c2", - "description": null, - "author": "飓风网络安全", - "category": "飓风网络安全", - "pubDate": "2025-03-12T18:57:30" - }, - { - "title": "【漏洞预警】万户网络ezOFFICE /selectAmountField.jsp存在SQL注入漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzI3NzMzNzE5Ng==&mid=2247489756&idx=2&sn=4d27538590b82c13f97bc1732e9eda60", - "description": null, - "author": "飓风网络安全", - "category": "飓风网络安全", - "pubDate": "2025-03-12T18:57:30" - }, - { - "title": "【漏洞预警】MinIO身份验证缺陷漏洞 (CVE-2025-27414)", - "link": "https://mp.weixin.qq.com/s?__biz=MzI3NzMzNzE5Ng==&mid=2247489756&idx=3&sn=39c0b8a132b199a8d8dda341f09c51c2", - "description": null, - "author": "飓风网络安全", - "category": "飓风网络安全", - "pubDate": "2025-03-12T18:57:30" - }, - { - "title": "【风险通告】微软3月安全更新补丁和多个高危漏洞风险提示", - "link": "https://mp.weixin.qq.com/s?__biz=MzUzOTE2OTM5Mg==&mid=2247490334&idx=1&sn=9361b4f5f44f08b5ed0ef6b3a30823c8", - "description": null, - "author": "安恒信息CERT", - "category": "安恒信息CERT", - "pubDate": "2025-03-12T18:34:09" - }, - { - "title": "工具更新:Myosotis-免杀框架-1.1.0", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg5ODYwODY3OA==&mid=2247484621&idx=1&sn=56a66a03da59bad930d5f46b510f16da", - "description": "最新链式加密功能更新,上亿种加密链助力免杀!", - "author": "攻有道", - "category": "攻有道", - "pubDate": "2025-03-12T18:32:13" - }, - { - "title": "【漏洞通告】Fortinet多产品前台远程代码执行漏洞(CVE-2024-45324)", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg2NjgzNjA5NQ==&mid=2247524066&idx=2&sn=93a40ee8c5d3b9832561ea2de0fe1861", - "description": "2025年3月12日,深瞳漏洞实验室监测到一则Fortinet多产品存在代码执行漏洞的信息,漏洞编号:CVE-2024-45324,漏洞威胁等级:高危。", + "title": "【漏洞通告】Palo Alto Networks PAN-OS身份绕过认证漏洞(CVE-2026-0265)", + "link": "https://mp.weixin.qq.com/s/Ov5oKKQ1b8UCqYd39v_w8w", + "description": "2026年5月15日,深瞳漏洞实验室监测到一则Palo Alto Networks PAN-OS组件存在绕过认证漏洞的信息,漏洞编号:CVE-2026-0265,漏洞威胁等级:高危。", "author": "深信服千里目安全技术中心", "category": "深信服千里目安全技术中心", - "pubDate": "2025-03-12T18:05:44" + "pubDate": "2026-05-15T18:25:30" }, { - "title": "CVE-2025-24813——tomcat文件上传到反序列化", - "link": "https://mp.weixin.qq.com/s?__biz=MzUzNDMyNjI3Mg==&mid=2247487304&idx=1&sn=8d768aaff7b20e1d5776ad2f448b5752", - "description": "CVE-2025-24813是一个需要双特殊配置的漏洞,其中一个还是臭名昭著的tomcat PUT,这使得实战不可能碰得上。但漏洞原理和流程又比较简单,适合新手复现学习。", - "author": "珂技知识分享", - "category": "珂技知识分享", - "pubDate": "2025-03-12T18:01:05" + "title": "【漏洞通告】Nginx ngx_http_rewrite_module 缓冲区溢出漏洞(CVE-2026-42945)", + "link": "https://mp.weixin.qq.com/s/a0VH9NHrucR7MDvgLPVp8Q", + "description": "2026年5月14日,深瞳漏洞实验室监测到一则Nginx组件存在缓冲区溢出漏洞的信息,漏洞编号:CVE-2026-42945,漏洞威胁等级:高危。", + "author": "深信服千里目安全技术中心", + "category": "深信服千里目安全技术中心", + "pubDate": "2026-05-15T18:25:30" }, { - "title": "无壳app的libmsaoaidsec.so frida反调试绕过姿势", - "link": "https://mp.weixin.qq.com/s?__biz=MjM5NTc2MDYxMw==&mid=2458590751&idx=1&sn=3a5f5b3c1d41a36914abf745b355f9dc", - "description": "看雪论坛作者ID:Biletonxa0xa0比尔顿", - "author": "看雪学苑", - "category": "看雪学苑", - "pubDate": "2025-03-12T17:59:28" + "title": "【漏洞通告】Linux Kernel Fragnesia 权限提升漏洞(CVE-2026-46300)", + "link": "https://mp.weixin.qq.com/s/r2FHhy43tRYoZlBt9OYgcw", + "description": "Linux内核(Linux Kernel)是一个开源的操作系统内核,它是Linux操作系统的核心组件,负责管理计算机的硬件资源,并提供了许多系统服务,如进程管理、内存管理、文件系统管理和设备驱动程序等。", + "author": "深信服千里目安全技术中心", + "category": "深信服千里目安全技术中心", + "pubDate": "2026-05-15T18:25:30" }, { - "title": "【已复现】Apache Tomcat远程代码执行漏洞(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg5MDk3MTgxOQ==&mid=2247499862&idx=1&sn=9d6b6a2f171c66a30923e8716b374b56", - "description": "此文章原创作者为源鲁安全实验室,转载请注明出处!此文章中所涉及的技术、思路和工具仅供网络安全学习为目的,不得以盈利为目的或非法利用,否则后果自行承担!", - "author": "源鲁安全实验室", - "category": "源鲁安全实验室", - "pubDate": "2025-03-12T17:40:48" + "title": "【漏洞预警】Linux Kernel 越权任意文件读取漏洞,PoC 已公开", + "link": "https://mp.weixin.qq.com/s/mutmN1nje_x5bZAmQm8I9g", + "description": "攻击者借助 pidfd_getfd() 在进程退出竞争窗口窃取已打开的文件描述符,可读取 /etc/shadow 与 SSH 私钥等敏感文件。", + "author": "云鼎实验室", + "category": "云鼎实验室", + "pubDate": "2026-05-15T18:00:38" }, { - "title": "浅谈DNS-rebinding", - "link": "https://mp.weixin.qq.com/s?__biz=MzkxNTIwNTkyNg==&mid=2247554173&idx=1&sn=c91c23d22989ec2803d02b231d0b87b3", - "description": null, - "author": "蚁景网络安全", - "category": "蚁景网络安全", - "pubDate": "2025-03-12T17:40:16" + "title": "【高危漏洞预警】Windows 存储空间控制器提权漏洞(CVE-2026-35415)", + "link": "https://mp.weixin.qq.com/s/dxSq7GoaSDEWy5-6intj3Q", + "description": "【漏洞描述】组件介绍Microsoft 存储空间控制器是 Windows 操作系统中用于管理存储空间(Stor", + "author": "信通云服", + "category": "信通云服", + "pubDate": "2026-05-15T17:53:42" }, { - "title": "实战案例!记一次攻防演练突破", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg4NTUwMzM1Ng==&mid=2247513142&idx=1&sn=319a3880e8aab1f8b14a815401a04968", - "description": "近期一次攻防演练,在给定的靶标进行外网信息收集,有一处老旧站点,网站架构为iis+asp.net+mssql", - "author": "潇湘信安", - "category": "潇湘信安", - "pubDate": "2025-03-12T17:20:28" + "title": "伪装成 Google Gemini CLI 的新型 Windows 恶意软件攻击活动分析", + "link": "https://mp.weixin.qq.com/s/ZruHEc_FUxwuKrPl-sb4aw", + "description": "近期,针对 Windows 平台的恶意软件攻击活动出现新动向,攻击者通过仿冒 Google Gemini CL", + "author": "Khan安全团队", + "category": "Khan安全团队", + "pubDate": "2026-05-15T16:58:25" }, { - "title": "vulnhub-DC-9 SQL注入、“ssh端口敲门”、hydra爆破", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk3NTIyOTA0OQ==&mid=2247484231&idx=1&sn=8ec2384b325ddac9d11b60595729a520", - "description": "vulnhub-DC-9 SQL注入、“ssh端口敲门”、hydra爆破", - "author": "泷羽Sec-朝阳", - "category": "泷羽Sec-朝阳", - "pubDate": "2025-03-12T17:09:57" + "title": "免杀分析 | PowerShell命令执行、检测与绕过", + "link": "https://mp.weixin.qq.com/s/7Tto5H7OxmpTQGkyyVfOuQ", + "description": "在现代 Active Directory 环境中,PowerShell 的每一行代码都置于 AMSI、脚本块日志和全系统转录的严密监视之下。本文基于 CRTP 课程实战经验,深度拆解了 PowerShell 下载执行摇篮(Cradles)的多维实现。", + "author": "LTAC", + "category": "LTAC", + "pubDate": "2026-05-15T16:54:23" }, { - "title": "利用微软工具击败windows自带的防御系统", - "link": "https://mp.weixin.qq.com/s?__biz=MzAwMzYxNzc1OA==&mid=2247502047&idx=1&sn=c1a04bfdf83d879003fd53f059ee2690", - "description": null, - "author": "酒仙桥六号部队", - "category": "酒仙桥六号部队", - "pubDate": "2025-03-12T17:06:54" + "title": "当编程代理成为攻击跳板:恶意技能如何绕过模型防御", + "link": "https://mp.weixin.qq.com/s/jBMLcmk59OVmZ-5OSfpsQQ", + "description": "Claude Code 等编程代理的技能系统正在成为新的攻击面。更麻烦的是,动态上下文(Dynamic Context)机制允许 shell 命令在模型审查前执行,这让提示注入防御形同虚设。本文深入剖析 Clawsights 恶意技能攻击路", + "author": "幻泉之洲", + "category": "幻泉之洲", + "pubDate": "2026-05-15T16:47:00" }, { - "title": "SSTI之细说jinja2的常用构造及利用思路", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyNTY3Nzc3Mg==&mid=2247489438&idx=1&sn=b71b26d4768a3c305ecbbd24852e95b5", - "description": "整理了一些SSTI常用的payload、利用思路以及题目,结合题目分析以及自己的理解,给大家提供一些参考。", - "author": "蚁景网安", - "category": "蚁景网安", - "pubDate": "2025-03-12T16:30:53" + "title": "提权实录:通过命名管道劫持可写服务", + "link": "https://mp.weixin.qq.com/s/BWBnWC_fvISyebvj1YLrWQ", + "description": "命名管道ACL宽松配合可写服务文件,低权限用户通过管道触发SYSTEM执行taskkill,趁机替换恶意程序并借服务重启加载,获取SYSTEM权限。", + "author": "T00ls安全", + "category": "T00ls安全", + "pubDate": "2026-05-15T16:04:09" }, { - "title": "XMLDecoder反序列化漏洞(CVE-2017-3506)", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyNTUyOTk0NA==&mid=2247488614&idx=1&sn=e6928ac9088b72437b1f91c8cd977c57", - "description": null, - "author": "智检安全", - "category": "智检安全", - "pubDate": "2025-03-12T16:05:17" - }, - { - "title": "汤姆猫最新CVE复现及分析", - "link": "https://mp.weixin.qq.com/s?__biz=MjM5Mzk0MDE2Ng==&mid=2649608975&idx=1&sn=459fa83e455ee16847dcb7f8c47bd855", - "description": "近日,北京天地和兴科技有限公司安全服务部监测到Apache发布安全公告,修复了Apache Tomcat远程", - "author": "天地和兴", - "category": "天地和兴", - "pubDate": "2025-03-12T16:02:34" - }, - { - "title": "MassJacker恶意软件剪贴板劫持作案,77.8万加密货币钱包被盗", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0MDYwMjE3OQ==&mid=2247486289&idx=1&sn=e4eddf7e990460939c5a6984c1db656f", - "description": "MassJacker恶意软件通过剪贴板劫持手段,利用至少778,531个加密货币钱包地址,从被攻破的计算机中窃取数字资产。", - "author": "安全威胁纵横", - "category": "安全威胁纵横", - "pubDate": "2025-03-12T15:52:47" - }, - { - "title": "漏洞预警 | Apache Tomcat 存在远程代码执行漏洞(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyNzcxNTczNA==&mid=2247487041&idx=1&sn=fb038aa4f1e439a4799309bf67f1c0e1", - "description": null, - "author": "Beacon Tower Lab", - "category": "Beacon Tower Lab", - "pubDate": "2025-03-12T15:45:10" - }, - { - "title": "记一次某大厂csrf漏洞通过蠕虫从低危到高危", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0MTIzNTgzMQ==&mid=2247519648&idx=1&sn=f91b30f18cf9b639b79e6bdbacae77ac", - "description": null, - "author": "亿人安全", - "category": "亿人安全", - "pubDate": "2025-03-12T15:28:08" - }, - { - "title": "网康科技 NS-ASG 应用安全网关 add_postlogin.php SQL注入漏洞(CVE-2024-3455)", - "link": "https://mp.weixin.qq.com/s?__biz=MzkzMTcwMTg1Mg==&mid=2247490723&idx=1&sn=24ca5d1e334b58987f9a46029045b6fd", - "description": "网康科技 NS-ASG 应用安全网关 add_postlogin.php接口处存在SQL注入漏洞,未经身份验证的恶意攻击者利用 SQL 注入漏洞获取数据库中的信息之外,攻击者甚至可以在高权限下向服务器写入命令,进一步获取服务器系统权限。", - "author": "nday POC", - "category": "nday POC", - "pubDate": "2025-03-12T15:16:27" - }, - { - "title": "漏洞风险提示 | Apache Tomcat 远程代码执行漏洞 (CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=MzAwNzk0NTkxNw==&mid=2247487102&idx=1&sn=14c3b1af5e899383072f554e754d61f7", - "description": null, - "author": "边界无限", - "category": "边界无限", - "pubDate": "2025-03-12T14:29:27" - }, - { - "title": "警惕 Apache Camel 漏洞 攻击者借此能注入任意标头", - "link": "https://mp.weixin.qq.com/s?__biz=MzI0MDY1MDU4MQ==&mid=2247581481&idx=2&sn=2a2b8413424b32da5743ddb9a2b5d0aa", - "description": "Apache Camel 中近期披露的一个安全漏洞(编号为 CVE - 2025 - 27636),已引发整个网络安全社区的高度警惕。", - "author": "嘶吼专业版", - "category": "嘶吼专业版", - "pubDate": "2025-03-12T14:01:10" - }, - { - "title": "2025年3月微软补丁日多个高危漏洞安全风险通告", - "link": "https://mp.weixin.qq.com/s?__biz=MzU4NjY4MDAyNQ==&mid=2247497264&idx=1&sn=7778319f9181dd93bd746af37146a7a7", - "description": "近日,嘉诚安全监测到Microsoft官方发布了3月份的安全更新公告,共修复了57个漏洞,鉴于漏洞危害较大,嘉诚安全提醒广大Microsoft用户尽快下载补丁更新,避免引发漏洞相关的网络安全事件。", - "author": "嘉诚安全", - "category": "嘉诚安全", - "pubDate": "2025-03-12T13:19:33" - }, - { - "title": "【漏洞通告】Apache Tomcat 远程代码执行漏洞安全风险通告", - "link": "https://mp.weixin.qq.com/s?__biz=MzU4NjY4MDAyNQ==&mid=2247497264&idx=2&sn=7a7d4506478b14ab6fca95c13c7df2b1", - "description": "近日,嘉诚安全监测到Apache发布安全公告,修复了一个Apache Tomcat 远程代码执行漏洞,鉴于漏洞危害较大,嘉诚安全提醒相关用户尽快更新至安全版本,避免引发漏洞相关的网络安全事件。", - "author": "嘉诚安全", - "category": "嘉诚安全", - "pubDate": "2025-03-12T13:19:33" - }, - { - "title": "Sitecore 曝零日漏洞,可执行任意代码攻击", - "link": "https://mp.weixin.qq.com/s?__biz=MzI1OTA1MzQzNA==&mid=2651247736&idx=1&sn=94a43ff967e452e1c4e0b95cf2f1b778", - "description": null, - "author": "e安在线", - "category": "e安在线", - "pubDate": "2025-03-12T13:05:03" - }, - { - "title": "Telegram bot token利用", - "link": "https://mp.weixin.qq.com/s?__biz=MzU5Mjk3MDA5Ng==&mid=2247486507&idx=1&sn=8dc5d9e5c41e9b4a395af6f5f0a50e69", - "description": null, - "author": "军机故阁", - "category": "军机故阁", - "pubDate": "2025-03-12T12:53:53" - }, - { - "title": "如何隐藏服务器IP,隐藏IP有什么好处", - "link": "https://mp.weixin.qq.com/s?__biz=MzkxMTMyOTg4NQ==&mid=2247484207&idx=1&sn=4a41f1699bab793e070aa0f2717ef556", - "description": null, - "author": "护卫神说安全", - "category": "护卫神说安全", - "pubDate": "2025-03-12T12:41:42" - }, - { - "title": "Electron桌面应用开发笔记", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyODY3NjkyNQ==&mid=2247484938&idx=1&sn=172768f1a0d7c3e018aa3dfd1434071f", - "description": null, - "author": "Ting的安全笔记", - "category": "Ting的安全笔记", - "pubDate": "2025-03-12T12:07:10" - }, - { - "title": "HW蓝队面试题(初、中级)", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyODY3NjkyNQ==&mid=2247484938&idx=3&sn=c06feb79ef3624f0c40d975ebc7a2791", - "description": null, - "author": "Ting的安全笔记", - "category": "Ting的安全笔记", - "pubDate": "2025-03-12T12:07:10" - }, - { - "title": "Webshell管理工具流量特征抓包分析", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyODY3NjkyNQ==&mid=2247484938&idx=4&sn=0bdb056fed6d4a3eb38e37da2a315d40", - "description": null, - "author": "Ting的安全笔记", - "category": "Ting的安全笔记", - "pubDate": "2025-03-12T12:07:10" - }, - { - "title": "【漏洞通告】微软2025年3月安全更新通告", - "link": "https://mp.weixin.qq.com/s?__biz=MzI1NDQxMDE0NQ==&mid=2247485101&idx=1&sn=6986bcb4c4d1539b8ae87f9f58ad349e", - "description": null, - "author": "青藤实验室", - "category": "青藤实验室", - "pubDate": "2025-03-12T12:03:52" - }, - { - "title": "利用条件竞争绕过 HackerOne 2FA", - "link": "https://mp.weixin.qq.com/s?__biz=MzI4NTcxMjQ1MA==&mid=2247615654&idx=1&sn=f7f0230e2057f5ffad4d32d97de39f86", - "description": null, - "author": "白帽子左一", - "category": "白帽子左一", - "pubDate": "2025-03-12T12:00:28" - }, - { - "title": "【JAVA安全】JNDI漏洞分析", - "link": "https://mp.weixin.qq.com/s?__biz=MzkzMzYzNzIzNQ==&mid=2247485514&idx=1&sn=fe716b09168132088c149c3d30b0411e", - "description": "近年来,JNDI(Java Naming and Directory Interface)相关的安全漏洞频繁成为企业级Java应用的重大威胁。", - "author": "安全驾驶舱", - "category": "安全驾驶舱", - "pubDate": "2025-03-12T11:10:35" - }, - { - "title": "微软2025年3月补丁星期二:修复57个漏洞及6个被积极利用的零日漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzUyMzczNzUyNQ==&mid=2247523785&idx=1&sn=d9204ac4eb97a1fa3b62630468f0b2ba", - "description": "微软2025年3月补丁星期二:修复57个漏洞及6个被积极利用的零日漏洞", - "author": "邑安全", - "category": "邑安全", - "pubDate": "2025-03-12T11:06:59" - }, - { - "title": "Apache Pinot 漏洞允许攻击者绕过身份验证", - "link": "https://mp.weixin.qq.com/s?__biz=MzUyMzczNzUyNQ==&mid=2247523785&idx=2&sn=6982914432650e6d5c6a7de32091284e", - "description": "Apache Pinot 漏洞允许攻击者绕过身份验证", - "author": "邑安全", - "category": "邑安全", - "pubDate": "2025-03-12T11:06:59" - }, - { - "title": "Lazarus 黑客将 6 个 npm 包武器化以窃取登录信息", - "link": "https://mp.weixin.qq.com/s?__biz=MzUyMzczNzUyNQ==&mid=2247523785&idx=4&sn=caa17939c781f596359ee0b7d3844b91", - "description": "Lazarus 黑客将 6 个 npm 包武器化以窃取登录信息", - "author": "邑安全", - "category": "邑安全", - "pubDate": "2025-03-12T11:06:59" - }, - { - "title": "Src实战-垂直越权任意添加用户", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyNzM2MjM0OQ==&mid=2247496014&idx=1&sn=80e7bb9b8a12d79c988875586daa01f5", - "description": "Src实战分享", - "author": "隐雾安全", - "category": "隐雾安全", - "pubDate": "2025-03-12T10:30:26" - }, - { - "title": "『代码审计』某OA系统.NET代码审计", - "link": "https://mp.weixin.qq.com/s?__biz=MzAxMjE3ODU3MQ==&mid=2650609014&idx=3&sn=20b9dac76b6fdbd6ac25c782c75920c0", - "description": "记录某OA系统.NET审计过程", - "author": "黑白之道", - "category": "黑白之道", - "pubDate": "2025-03-12T10:05:41" - }, - { - "title": "一个用于检测HOST 头攻击漏洞的Burp Suite扩展插件", - "link": "https://mp.weixin.qq.com/s?__biz=MzAxMjE3ODU3MQ==&mid=2650609014&idx=4&sn=e37e7f249ac6a77610f8b9d9542182be", - "description": null, - "author": "黑白之道", - "category": "黑白之道", - "pubDate": "2025-03-12T10:05:41" - }, - { - "title": "Tomcat DefaultServlet rce(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg5MjY2NTU4Mw==&mid=2247486550&idx=1&sn=b748fd6094e2100f4adbb6051d0ffdfa", - "description": null, - "author": "e0m安全屋", - "category": "e0m安全屋", - "pubDate": "2025-03-12T10:04:40" - }, - { - "title": "『代码审计』某OA系统.NET代码审计", - "link": "https://mp.weixin.qq.com/s?__biz=MzU0MTc2NTExNg==&mid=2247491665&idx=1&sn=e22475df89d220dc33611cbf56b9ea41", - "description": "记录某OA系统.NET审计过程", - "author": "实战安全研究", - "category": "实战安全研究", - "pubDate": "2025-03-12T10:03:43" - }, - { - "title": "Laravel 框架惊现高危漏洞,攻击者可肆意植入恶意脚本", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg3NTY0MjIwNg==&mid=2247485791&idx=1&sn=a733ed0ce50fa585954ff776ec3d140f", - "description": "Laravel 框架中出现了一个极为严重的安全漏洞(编号为 CVE-2024-13918)。攻击者能够借此在运行该流行 PHP 框架特定版本的网站上,随意执行 JavaScript 代码。", - "author": "星尘安全", - "category": "星尘安全", - "pubDate": "2025-03-12T10:00:33" - }, - { - "title": "没有DNS下安装vCenter和日后如何修改", - "link": "https://mp.weixin.qq.com/s?__biz=MzUyOTkzMjk1Ng==&mid=2247486270&idx=1&sn=7ac4dd1c5fc0ce5797fe7adbb4a0894d", - "description": "VCSA无DNS安装,日后如何修正", - "author": "vExpert", - "category": "vExpert", - "pubDate": "2025-03-12T09:38:57" - }, - { - "title": "CVE-2025-21333 Windows 基于堆的缓冲区溢出分析", - "link": "https://mp.weixin.qq.com/s?__biz=MzAxMjYyMzkwOA==&mid=2247528488&idx=1&sn=e87d0ef04d915b93627c108f89cc6f38", - "description": null, - "author": "Ots安全", - "category": "Ots安全", - "pubDate": "2025-03-12T09:36:03" - }, - { - "title": "TPCTF2025 writeup by Mini-Venom", - "link": "https://mp.weixin.qq.com/s?__biz=MzIzMTc1MjExOQ==&mid=2247512289&idx=1&sn=3335feefc68146cf1e3763bc0a609005", - "description": null, - "author": "ChaMd5安全团队", - "category": "ChaMd5安全团队", - "pubDate": "2025-03-12T09:31:27" - }, - { - "title": "Apache Tomcat 中的 CVE-2025-24813 漏洞导致服务器遭受 RCE 和数据泄露", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg2NTk4MTE1MQ==&mid=2247486930&idx=1&sn=2b51fc318e0909b7da707385b0b1a6d4", - "description": null, - "author": "TtTeam", - "category": "TtTeam", - "pubDate": "2025-03-12T09:30:37" - }, - { - "title": "微软3月补丁日多个产品安全漏洞风险通告:6个在野利用、6个紧急漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzU5NDgxODU1MQ==&mid=2247503142&idx=1&sn=f4f47cabc55a311159daa2ca4cca64e4", + "title": "【已复现】Linux Kernel ptrace 本地权限提升漏洞(QVD-2026-26977)安全风险通告", + "link": "https://mp.weixin.qq.com/s/SIs8VZVo_vnjeVuBB7NGsA", "description": "致力于第一时间为企业级用户提供权威漏洞情报和有效解决方案。", "author": "奇安信 CERT", "category": "奇安信 CERT", - "pubDate": "2025-03-12T09:23:18" + "pubDate": "2026-05-15T15:50:31" }, { - "title": "飞牛NAS上部署DeepSeek的详细步骤", - "link": "https://mp.weixin.qq.com/s?__biz=MzU2MjU2MzI3MA==&mid=2247484536&idx=4&sn=236ae06a06c4cdb5360f149757d9f016", + "title": "扩展Burp Suite:玩转Montoya API(第十部分)——Burp AI", + "link": "https://mp.weixin.qq.com/s/yxOz7w8LWBxkLvom9xJKHA", + "description": "本文介绍如何利用Burp Suite Montoya API中的AI功能来开发扩展,通过一个名为\\\\x26quot;AI Reporter\\\\x26quot;的扩展示例,演示了如何用AI分析HTTP请求/响应并自动生成安全问题报告。文章详细讲解了AI功能的启用、系统提示词的编", + "author": "幻泉之洲", + "category": "幻泉之洲", + "pubDate": "2026-05-15T15:46:00" + }, + { + "title": "实战逻辑漏洞(短信横向)利用", + "link": "https://mp.weixin.qq.com/s/jI4hCcuQWPqcm8IDslVQ0g", + "description": "免责声明请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的", + "author": "Quest安全团队", + "category": "Quest安全团队", + "pubDate": "2026-05-15T15:44:21" + }, + { + "title": "已存在18年的 Nginx 漏洞可导致 RCE 攻击", + "link": "https://mp.weixin.qq.com/s/gIFuEQSBYVxhxkrf0PUk1g", + "description": "速修复", + "author": "代码卫士", + "category": "代码卫士", + "pubDate": "2026-05-15T14:35:13" + }, + { + "title": "补丁刚装好,攻击者就进来了:泛微OA未认证RCE漏洞从发现到批量扫描全记录", + "link": "https://mp.weixin.qq.com/s/OudH7CI-wacuf-geG2CgmA", + "description": "2026年3月12日,泛微官方发布了E-cology 10安全补丁。五天后,Vega威胁情报团队捕获到第一批针对该漏洞的定向攻击。", + "author": "昆仑AI安全实验室", + "category": "昆仑AI安全实验室", + "pubDate": "2026-05-15T14:34:17" + }, + { + "title": "Linux 内核漏洞 Fragnesia 可被利用实现本地 root 提权攻击", + "link": "https://mp.weixin.qq.com/s/me40O_2lRabfwNWmT1_HgA", + "description": "研究人员披露了一处全新 Linux 内核提权漏洞,漏洞命名为 Fragnesia,漏洞编号 CVE-2026-", + "author": "黑猫安全", + "category": "黑猫安全", + "pubDate": "2026-05-15T14:24:31" + }, + { + "title": "NGINX 漏洞 Rift:这款全球部署最广泛的 Web 服务器,一处潜伏 18 年 的漏洞刚刚被曝光", + "link": "https://mp.weixin.qq.com/s/cLvCw_5YgZlQFbcDJSd6og", + "description": "如果你正在运行 NGINX 服务,从部署概率来看,绝大多数企业与站点都在使用,本周爆出的这条安全新闻值得高度重", + "author": "黑猫安全", + "category": "黑猫安全", + "pubDate": "2026-05-15T14:24:31" + }, + { + "title": "JWT 密钥强度为零:Note Mark 满分漏洞与令牌伪造攻击", + "link": "https://mp.weixin.qq.com/s/z1KWGTQ61Zc4IEOq1bPBUg", + "description": "JWT 密钥强度为零:Note Mark 满分漏洞与令牌伪造攻击", + "author": "CVE-SEC", + "category": "CVE-SEC", + "pubDate": "2026-05-15T14:00:00" + }, + { + "title": "URL 编码的双重身份:SiYuan Tooltip XSS 与 Electron RCE 深度解析", + "link": "https://mp.weixin.qq.com/s/CQPAqdtJWyh7RKuRF7XgTg", + "description": "URL 编码的双重身份:SiYuan Tooltip XSS 与 Electron RCE 深度解析", + "author": "CVE-SEC", + "category": "CVE-SEC", + "pubDate": "2026-05-15T13:30:00" + }, + { + "title": "Fragnesia:Dirty Frag补丁引发了新的Linux内核LPE漏洞(CVE-2026-46300)", + "link": "https://mp.weixin.qq.com/s/XATQ38PUyqouMWTDHKg3DQ", + "description": "研究人员在 Linux 内核中发现了另一个本地权限提升 (LPE) 漏洞,并予以披露:CVE-2026-46300,又名“Fragnesia”。", + "author": "安全圈的那点事儿", + "category": "安全圈的那点事儿", + "pubDate": "2026-05-15T12:18:00" + }, + { + "title": "从客户端加密配置到伪造签名:一次支付金额篡改漏洞的挖掘实录", + "link": "https://mp.weixin.qq.com/s/tGCBO7xlYvu7bUqGhND8Hw", + "description": "这篇文章记录的,就是一次从客户端加密配置入手,逐步恢复本地配置、还原签名算法、伪造合法请求,最后验证到真实业务订单付款阶段可被改价的完整过程。", + "author": "开心网安", + "category": "开心网安", + "pubDate": "2026-05-15T10:45:20" + }, + { + "title": "每周高级威胁情报解读(2026.05.08~05.14)", + "link": "https://mp.weixin.qq.com/s/Orp3GYn3lNQNWnYEFXFk9Q", + "description": "EasterBunny:归因于APT29的高级间谍工具;Kimsuky组织依托GitHub+Dropbox分发恶意载荷;Lazarus Group 利用 Git 钩子隐藏恶意软件;Paper Werewolf使用新工具包针对俄罗斯工业、金融和运输组织;Gamaredon的感染链:伪造电子邮件、GammaDrop和GammaLoad", + "author": "奇安信威胁情报中心", + "category": "奇安信威胁情报中心", + "pubDate": "2026-05-15T10:30:32" + }, + { + "title": "客户要求 | Elasticsearch未授权访问的危害证明", + "link": "https://mp.weixin.qq.com/s/FCSQ6NDKsSiQPJqpL1xftA", + "description": "之前挖某运营商项目碰到的有意思的漏洞,客户要求证明危害,所以有了下文内容。", + "author": "安全艺术", + "category": "安全艺术", + "pubDate": "2026-05-15T09:47:57" + }, + { + "title": "6. 二进制文件格式与解析", + "link": "https://mp.weixin.qq.com/s/XlwRxJlYP5kUnnmWSIxSBg", + "description": "在安全分析领域,深入理解二进制文件格式是开展一切静态分析工作的基础。恶意软件(malware)经常通过篡改文件结构来隐藏自身行为——加壳压缩以逃避特征码检测、修改导入表以混淆依赖关系、伪造数字签名以骗取系统信任。", + "author": "SPEEDCoding", + "category": "SPEEDCoding", + "pubDate": "2026-05-15T09:01:11" + }, + { + "title": "代码审计篇——文件操作", + "link": "https://mp.weixin.qq.com/s/6-vZTQjtGYZU5vXP8NV9BQ", + "description": "一、文件操作漏洞文件操作类漏洞,在代码审计中属于:高危害:任意文件读取可导致敏感信息泄露(配置文件、数据库连接", + "author": "一己之见安全团队", + "category": "一己之见安全团队", + "pubDate": "2026-05-15T08:18:36" + }, + { + "title": "AI 驱动的红队免杀知识库 | Webshell 免杀、WAF/RASP/EDR 绕过、流量伪装等实战Tips", + "link": "https://mp.weixin.qq.com/s/KX6rGdogPP90AHfEDW6c8w", + "description": "AI Redteam Notes这是一个 AI 辅助生成 的红队对抗技术笔记仓库。", + "author": "李白你好", + "category": "李白你好", + "pubDate": "2026-05-15T08:02:43" + }, + { + "title": "发现蜜罐、提取 JWT、导出 Vue 路由——我的浏览器变成了渗透神器", + "link": "https://mp.weixin.qq.com/s/-glEdwJwjzVRMHc1u3R3sw", "description": null, - "author": "内存泄漏", - "category": "内存泄漏", - "pubDate": "2025-03-12T09:21:31" + "author": "只会看监控的实习生", + "category": "只会看监控的实习生", + "pubDate": "2026-05-15T08:00:46" }, { - "title": "微软周二补丁日发布,修复 57 个漏洞,其中6个被野外利用", - "link": "https://mp.weixin.qq.com/s?__biz=MzI2NzAwOTg4NQ==&mid=2649794476&idx=3&sn=4f916971b11499698a033c3e5778285e", - "description": "微软月度安全更新", - "author": "军哥网络安全读报", - "category": "军哥网络安全读报", - "pubDate": "2025-03-12T09:00:32" + "title": "docker 默认网段与现实网段冲突", + "link": "https://mp.weixin.qq.com/s/CViujnbB_UQlEpMavX928g", + "description": "默认 docker 会使用 172.17.0.0 网段", + "author": "生有可恋", + "category": "生有可恋", + "pubDate": "2026-05-15T07:01:01" }, { - "title": "工具集:DarKnuclei【针对红蓝对抗的快速打点工具】", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0MjY1ODE5Mg==&mid=2247485671&idx=1&sn=d06ccd31a6bce1e9c839f072d5d972bd", + "title": "NPM仓库 node-ipc 再次被投毒,周下载量超67万", + "link": "https://mp.weixin.qq.com/s/OX-EA6rypIb8CcaMLLQDFw", + "description": "2026 年 5 月 14 日下午 10 点,墨菲安全实验室检测到 NPM 包node‑ipc再次被投毒……", + "author": "墨菲安全实验室", + "category": "墨菲安全实验室", + "pubDate": "2026-05-15T00:36:35" + }, + { + "title": "当异常绕过handleException:最新VM2沙箱绕过 CVE-2026-45411 原理分析", + "link": "https://mp.weixin.qq.com/s/mCYZZlLjzmGg57_B2MgU0g", "description": null, - "author": "风铃Sec", - "category": "风铃Sec", - "pubDate": "2025-03-12T08:32:40" + "author": "YMs0ra的安全漫路", + "category": "YMs0ra的安全漫路", + "pubDate": "2026-05-14T22:31:37" }, { - "title": "记一次攻防演练突破", - "link": "https://mp.weixin.qq.com/s?__biz=MzU2NzY5MzI5Ng==&mid=2247505465&idx=1&sn=d4dc748aacaa931f969f5707728c0812", + "title": "CVE-2026-8181-Burst Statistics-身份验证绕过漏洞分析报告", + "link": "https://mp.weixin.qq.com/s/vgdZuggfifXPjY3XQNdHYQ", + "description": "该漏洞是Burst Statistics插件中一个严重的身份验证绕过漏洞,影响版本3.4.0至3.4.1.1。漏洞根因位于`includes/Frontend/class-mainwp-proxy.php`文件中的`is_mainwp_authenticated()`函数。", + "author": "Sec打更人", + "category": "Sec打更人", + "pubDate": "2026-05-14T22:20:52" + }, + { + "title": "CVE-2026-42945-NGINX-ngx_http_rewrite_module-堆缓冲区溢出分析报告", + "link": "https://mp.weixin.qq.com/s/jO2KhtHCL8JRE4WIBYaI_Q", + "description": "该漏洞是存在于NGINX `ngx_http_rewrite_module`模块中的一个高危堆缓冲区溢出漏洞,CVE编号为CVE-2026-42945,代号\\\\x26#39;NGINX Rift\\\\x26#39;。", + "author": "Sec打更人", + "category": "Sec打更人", + "pubDate": "2026-05-14T22:11:05" + }, + { + "title": "【免杀】使用ollvm混淆程序", + "link": "https://mp.weixin.qq.com/s/Pz_Y14DRzZc_MCUpi_eT4g", + "description": "如何有源代码、快速的、不使用壳的情况下混淆程序,最好的就是在编译的时候添加。这里以最简单的猜大小的例子举例。", + "author": "不止Sec", + "category": "不止Sec", + "pubDate": "2026-05-14T20:19:47" + }, + { + "title": "【银行逆向百例】17Android逆向之libDexHelper梆梆加固frida检测绕过", + "link": "https://mp.weixin.qq.com/s/LxbfK28ZoSZg5hbJ5qGfHA", "description": null, - "author": "菜鸟学信安", - "category": "菜鸟学信安", - "pubDate": "2025-03-12T08:31:15" + "author": "挖个洞先", + "category": "挖个洞先", + "pubDate": "2026-05-14T20:12:22" }, { - "title": "vulnhub靶场之SkyTower【天空塔】靶机", - "link": "https://mp.weixin.qq.com/s?__biz=MzAxNTg1MDYxNA==&mid=2247490579&idx=1&sn=e700fd0761ceaf011b4c27263348c26b", + "title": "NGINX 漏洞预警:18 年老洞可 RCE,PoC 已公开", + "link": "https://mp.weixin.qq.com/s/s4fizQHJgSEMm2p-g0UEwg", + "description": "NGINX 18年漏洞已公开", + "author": "猎户攻防实验室", + "category": "猎户攻防实验室", + "pubDate": "2026-05-14T19:37:36" + }, + { + "title": "BypassPro 自动化bypass Auth和Waf", + "link": "https://mp.weixin.qq.com/s/V5NJMWePGlf31dTUFrdr8A", + "description": "对 Auth/Waf 自动化 bypass 的 burpsuite 插件", + "author": "进击的HACK", + "category": "进击的HACK", + "pubDate": "2026-05-14T19:17:24" + }, + { + "title": "【安全圈】安卓新增入侵日志功能,助力深度分析复杂间谍软件攻击", + "link": "https://mp.weixin.qq.com/s/yXIJyDjEMxqggNx1t5vt2w", + "description": "AI 漏洞挖掘开始交付\\\\x26quot;工程化结果\\\\x26quot;\\\\x0d\\\\x0a从音频解码到工业 CAD,从车端 CAN 帧到企业 Java 中间件——这一次,AI 红队没有靠\\\\x26quot;灵感\\\\x26quot;。", + "author": "安全圈", + "category": "安全圈", + "pubDate": "2026-05-14T19:00:58" + }, + { + "title": "【安全圈】研究人员公布概念验证,利用 Windows BitLocker 零日漏洞可访问受保护驱动器", + "link": "https://mp.weixin.qq.com/s/OnXI-rDV3sgZPW2qgLvLIw", + "description": "AI 漏洞挖掘开始交付\\\\x26quot;工程化结果\\\\x26quot;\\\\x0d\\\\x0a从音频解码到工业 CAD,从车端 CAN 帧到企业 Java 中间件——这一次,AI 红队没有靠\\\\x26quot;灵感\\\\x26quot;。", + "author": "安全圈", + "category": "安全圈", + "pubDate": "2026-05-14T19:00:58" + }, + { + "title": "【已复现】Linux内核Fragnesia权限提升漏洞(CVE-2026-46300)", + "link": "https://mp.weixin.qq.com/s/Z5bL9bRj-C1ltheUCPtLwQ", + "description": "近日,绿盟科技CERT监测到网上披露了Linux内核Fragnesia权限提升漏洞(CVE-2026-46300)。CVSS评分7.8,目前漏洞细节与PoC已公开,请相关用户尽快采取措施进行防护。", + "author": "绿盟科技CERT", + "category": "绿盟科技CERT", + "pubDate": "2026-05-14T18:33:28" + }, + { + "title": "18年积弊:NGINX脚本引擎堆缓冲区溢出可致远程代码执行", + "link": "https://mp.weixin.qq.com/s/Z-hV8A4XQ0G5OoN1ptEsNw", + "description": "2026年初,安全研究组织depthfirst通过其自动化代码审计系统对NGINX源代码进行深度扫描,识别出五个安全缺陷,其中四个已获得NGINX官方确认并分配CVE编号。这一发现揭示了NGINX核心组件中存在的严重内存损坏问题,攻击者可利用这些漏洞实现远程代码执行", + "author": "奇安信威胁情报中心", + "category": "奇安信威胁情报中心", + "pubDate": "2026-05-14T18:27:10" + }, + { + "title": "Windows 11遭新型BitUnlocker降级攻击,5分钟内可解密加密磁盘", + "link": "https://mp.weixin.qq.com/s/IdPUuR5PyeqluHd0EfaOAw", + "description": "BitUnlocker攻击5分钟破解Win11加密,微软补丁仍存致命漏洞。", + "author": "FreeBuf", + "category": "FreeBuf", + "pubDate": "2026-05-14T18:04:01" + }, + { + "title": "Android零点击漏洞PoC公开,攻击者可远程获取Shell权限", + "link": "https://mp.weixin.qq.com/s/rF7Ho-CHeRmBcBygTCIilA", + "description": "可远程获取Shell的Android零点击漏洞PoC利用代码公开。", + "author": "FreeBuf", + "category": "FreeBuf", + "pubDate": "2026-05-14T18:04:01" + }, + { + "title": "对称加密与非对称加密算法原理详解", + "link": "https://mp.weixin.qq.com/s/eubdY7pqCe0_KysexvCRZA", "description": null, - "author": "泷羽sec-何生安全", - "category": "泷羽sec-何生安全", - "pubDate": "2025-03-12T08:30:16" + "author": "谈思实验室", + "category": "谈思实验室", + "pubDate": "2026-05-14T17:50:06" }, { - "title": "钓鱼和 MFA 绕过技术", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg2NTk4MTE1MQ==&mid=2247486925&idx=1&sn=52d11cd6ac9a12bcaa511e8cce6c61b0", + "title": "【高危漏洞预警】NGINX ngx_http_rewrite_module堆缓冲区溢出漏洞(CVE-2026-42945)", + "link": "https://mp.weixin.qq.com/s/aa3dru8viVfzXNaTzVlZyA", "description": null, - "author": "TtTeam", - "category": "TtTeam", - "pubDate": "2025-03-12T08:12:59" + "author": "飓风网络安全", + "category": "飓风网络安全", + "pubDate": "2026-05-14T17:39:34" }, { - "title": "开源免费抓包工具,支持Windows、Mac、Android、IOS、Linux 全平台系统", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyNzIxMjM3Mg==&mid=2247489618&idx=1&sn=c40926b3259114eb3ec99ebc78bc8bb6", + "title": "黑客瞄准韩国大型电子制造商", + "link": "https://mp.weixin.qq.com/s/_GD0N8jdY_OLfw7YN-IWEw", + "description": "与伊朗有关联的黑客组织 MuddyWater发起了一场大规模的网络间谍活动,目标至少涉及多个行业和国家的 9 家知名机构。", + "author": "安全威胁纵横", + "category": "安全威胁纵横", + "pubDate": "2026-05-14T17:08:51" + }, + { + "title": "Burp Suite扩展开发:Montoya方法第九部分——自定义扫描检查", + "link": "https://mp.weixin.qq.com/s/mnue8r-8KGIQ6aEXIBARFA", + "description": "Burp Suite新增了\\\\x26quot;自定义扫描检查\\\\x26quot;功能,允许用类似Java的语言编写扫描规则,比BChecks更强大。本文用三个实际例子演示如何将之前用扩展实现的检查移植成自定义扫描脚本,包括基于时间的反序列化检测、被动检测和基于Collabor", + "author": "幻泉之洲", + "category": "幻泉之洲", + "pubDate": "2026-05-14T16:58:00" + }, + { + "title": "实战-对自己学校内网的渗透测试", + "link": "https://mp.weixin.qq.com/s/N6R-bB1jXtoVIyuUUVNJxA", + "description": "一直以来都想拿自己学校的内网练练手,跟负责网安的老师说了一声后,回去直接开搞。这里作了比较详细的记录,希望大家能多多指点。", + "author": "陌笙不太懂安全", + "category": "陌笙不太懂安全", + "pubDate": "2026-05-14T16:54:39" + }, + { + "title": "NGINX Rift:利用18年前的漏洞实现NGINX远程代码执行(CVE-2026-42945)", + "link": "https://mp.weixin.qq.com/s/XNh9mBd7nbPpyZdrwtaMdA", "description": null, - "author": "白帽学子", - "category": "白帽学子", - "pubDate": "2025-03-12T08:11:28" + "author": "404号浪漫", + "category": "404号浪漫", + "pubDate": "2026-05-14T16:46:49" }, { - "title": "SideWinder APT 深度解析:攻击动机、归因迷雾与防御策略再思考", - "link": "https://mp.weixin.qq.com/s?__biz=MzA4NTY4MjAyMQ==&mid=2447900287&idx=1&sn=e6a126f5895e43dd74bc88c25ca7dace", - "description": "卡巴斯基实验室最新报告揭示,SideWinder APT 组织正以更隐蔽、更具破坏性的方式,对亚洲、中东和非洲的关键基础设施展开新一轮攻击。攻击目标涵盖海运、核能、IT、外交等多个领域,其技术手段之高超,令人警惕。", - "author": "技术修道场", - "category": "技术修道场", - "pubDate": "2025-03-12T08:01:11" - }, - { - "title": "漏洞预警 | I Doc View远程代码执行漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzkwMTQ0NDA1NQ==&mid=2247492511&idx=1&sn=d90056b0e4950327c59177129714d04d", - "description": "I Doc View在线文档预览系统的/system/cmd.json接口存在远程代码执行漏洞,未经身份验证的攻击者可以通过该漏洞远程执行任意代码,从而控制目标服务器。", - "author": "浅安安全", - "category": "浅安安全", - "pubDate": "2025-03-12T08:00:22" - }, - { - "title": "漏洞预警 | NetMizer日志管理系统SQL注入漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzkwMTQ0NDA1NQ==&mid=2247492511&idx=2&sn=1adfaea6216aa5d0392354d7666d1bc0", - "description": "NetMizer日志管理系统的/data/login/dologin.php接口存在SQL注入漏洞,未经身份验证的攻击者可以通过该漏洞获取数据库敏感信息。", - "author": "浅安安全", - "category": "浅安安全", - "pubDate": "2025-03-12T08:00:22" - }, - { - "title": "漏洞预警 | 百易云资产管理运营系统SQL注入漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzkwMTQ0NDA1NQ==&mid=2247492511&idx=3&sn=4afea6b201d98a1d469c47a50a0ab63c", - "description": "百易云资产管理运营系统的/wuser/admin.house.collect.php接口存在SQL注入漏洞,未经身份验证的攻击者可以通过该漏洞获取数据库敏感信息。", - "author": "浅安安全", - "category": "浅安安全", - "pubDate": "2025-03-12T08:00:22" - }, - { - "title": "(已复现)远程代码执行漏洞;攻击X平台与DeepSeek的为同一僵尸网络", - "link": "https://mp.weixin.qq.com/s?__biz=MjM5OTk4MDE2MA==&mid=2655270238&idx=1&sn=7ed018021c4ec3fdf271c87db80f84bc", + "title": "WxProbe —— 公众号敏感信息收集工具", + "link": "https://mp.weixin.qq.com/s/3vnxJTS6QEjHYvA0fjRIrQ", "description": null, - "author": "计算机与网络安全", - "category": "计算机与网络安全", - "pubDate": "2025-03-12T07:57:39" + "author": "泷羽Sec-陌离", + "category": "泷羽Sec-陌离", + "pubDate": "2026-05-14T15:04:19" }, { - "title": "Voodoo Bear APT44 攻击模拟", - "link": "https://mp.weixin.qq.com/s?__biz=MzkwOTE5MDY5NA==&mid=2247505652&idx=1&sn=64b22bfcac17d28f8994690f81cc3019", - "description": "这是 (Voodoo Bear) APT44 组织针对东欧实体发起的攻击模拟,攻击活动早在 2022 年中期就已活跃,攻击链从后门开始,后门是一个 DLL,针对 32 位和 64 位 Windows 环", + "title": "【靶场开源】NGINX 远程代码执行高危漏洞(CVE-2026-42945)", + "link": "https://mp.weixin.qq.com/s/eQj7H3iv-fq9gIfvQmXRmA", + "description": "💡 好靶场团队宗旨:我们立志于为所有的网络安全同伴制作出好的靶场,让所有初学者都可以用最低的成本入门网络安全", + "author": "好靶场", + "category": "好靶场", + "pubDate": "2026-05-14T14:34:06" + }, + { + "title": "【内网工具】sharefinder--主动网络共享枚举", + "link": "https://mp.weixin.qq.com/s/O68ximwpPKhUK63m0UFevw", + "description": "本文所涉及的技术、思路和工具仅用于安全测试和防御研究,切勿将其用于非法入侵或攻击他人系统等目的,一切后果由", + "author": "安全天书", + "category": "安全天书", + "pubDate": "2026-05-14T13:44:42" + }, + { + "title": "CVE-2026-44381:MISP 威胁情报平台 ORDER BY 子句 SQL 注入", + "link": "https://mp.weixin.qq.com/s/h7YAlhZGWIZfJHWC4m0dyg", + "description": "CVE-2026-44381:MISP 威胁情报平台 ORDER BY 子句 SQL 注入", + "author": "CVE-SEC", + "category": "CVE-SEC", + "pubDate": "2026-05-14T13:30:00" + }, + { + "title": "Exim 高危漏洞 CVE-2026-45185", + "link": "https://mp.weixin.qq.com/s/McJxlZgyHBXqcoGbLVNu-A", + "description": "在 AI 加持下,漏洞已经呈现爆发趋势了,根本就看不过来。", + "author": "独眼情报", + "category": "独眼情报", + "pubDate": "2026-05-14T13:27:20" + }, + { + "title": "CVE-2026-44442:ERPNext 授权检查缺失漏洞", + "link": "https://mp.weixin.qq.com/s/IdcRYetzS9u6gScivEry2g", + "description": "CVE-2026-44442:ERPNext 授权检查缺失漏洞", + "author": "CVE-SEC", + "category": "CVE-SEC", + "pubDate": "2026-05-14T13:00:00" + }, + { + "title": "DarkSword:构建基于浏览器的 iOS 平台 C2 研究", + "link": "https://mp.weixin.qq.com/s/gYPFXVKIn5mbkuUmlcmpEQ", + "description": null, "author": "安全狗的自我修养", "category": "安全狗的自我修养", - "pubDate": "2025-03-12T07:28:54" + "pubDate": "2026-05-14T12:13:41" }, { - "title": "记一次刨根问底的HTTP包WAF绕过", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg4MTU4NTc2Nw==&mid=2247496089&idx=1&sn=0e5caafcb791547c9eeb70d937fd24b9", + "title": "访问控制失效:单个参数如何导致未经授权的云帐户创建和持续访问", + "link": "https://mp.weixin.qq.com/s/Lsb-hmtTphI0NpvzIRVH5w", "description": null, - "author": "七芒星实验室", - "category": "七芒星实验室", - "pubDate": "2025-03-12T07:00:22" + "author": "安全狗的自我修养", + "category": "安全狗的自我修养", + "pubDate": "2026-05-14T12:13:41" }, { - "title": "泛微OA-Ecology9.0开启非标功能操作说明", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyMzY0MTk2OA==&mid=2247485614&idx=1&sn=b01a6f9dca018e898d49ff6ad21b71b4", - "description": "泛微Ecology系统提供了标准功能和非标准功能两种选项。通常情况下,标准安装包中已包含系统的基础功能,即标准产品。而非标准功能则属于增值服务,需要通过泛微内部的流程申请才能获取,这些功能通常用于满足特定客户的需求或提供额外的定制化服务。", - "author": "OA大助手", - "category": "OA大助手", - "pubDate": "2025-03-12T00:07:49" - }, - { - "title": "XXE漏洞利用完全指南", - "link": "https://mp.weixin.qq.com/s?__biz=MjM5Mzc4MzUzMQ==&mid=2650260717&idx=1&sn=d6fa0c120d6f91a96082e3b771c82315", - "description": null, - "author": "骨哥说事", - "category": "骨哥说事", - "pubDate": "2025-03-12T00:01:20" - }, - { - "title": "从JS文件中发现隐藏端点及自动化检测的实现【星球专享】", - "link": "https://mp.weixin.qq.com/s?__biz=MjM5Mzc4MzUzMQ==&mid=2650260717&idx=2&sn=f780f48953d8194749db2c6277e3c484", - "description": null, - "author": "骨哥说事", - "category": "骨哥说事", - "pubDate": "2025-03-12T00:01:20" - }, - { - "title": "安卓逆向 -- 安卓开发与逆向基础", - "link": "https://mp.weixin.qq.com/s?__biz=MzA4MzgzNTU5MA==&mid=2652038189&idx=1&sn=2c850f87849281dd051f7e99825a145d", - "description": null, - "author": "逆向有你", - "category": "逆向有你", - "pubDate": "2025-03-12T00:01:07" - }, - { - "title": "工具推荐 | 使用Go编写的瑞数WAF绕过工具", - "link": "https://mp.weixin.qq.com/s?__biz=MzkwNjczOTQwOA==&mid=2247494176&idx=1&sn=7f65c0f85ad748213edb0d159e426267", - "description": null, - "author": "星落安全团队", - "category": "星落安全团队", - "pubDate": "2025-03-12T00:00:38" - }, - { - "title": "一文学习JWT造成的各种安全漏洞利用手法", - "link": "https://mp.weixin.qq.com/s?__biz=MzU2NDY2OTU4Nw==&mid=2247519482&idx=1&sn=c4414508f283d61a4bf8ebe56981e379", - "description": null, + "title": "Dirty Frag的双漏洞组合", + "link": "https://mp.weixin.qq.com/s/9z4hqgJx3y6LwelzXnsaXg", + "description": "韩国安全研究员Hyunwoo Kim公布了名为Dirty Frag的双漏洞组合,编号CVE-2026-43284和CVE-2026-43500。CVSS评分7.8,属于高危级别。", "author": "船山信安", "category": "船山信安", - "pubDate": "2025-03-12T00:00:38" + "pubDate": "2026-05-14T12:10:52" }, { - "title": "《改个返回包接管全站?》", - "link": "https://mp.weixin.qq.com/s?__biz=MzkzODM0OTkwMA==&mid=2247487172&idx=1&sn=b302a144fa2166df85d2c43a0fc22f3a", + "title": "Exim BDAT 严重漏洞可导致内存损坏和代码执行攻击", + "link": "https://mp.weixin.qq.com/s/GDn4pBXhg-PvsLxKMYcEVg", + "description": "速修复", + "author": "代码卫士", + "category": "代码卫士", + "pubDate": "2026-05-14T12:04:18" + }, + { + "title": "NGINX爆新漏洞,特定配置下可实现远程代码执行", + "link": "https://mp.weixin.qq.com/s/8Q_GrV54Gt1fdBuNbLaWjg", + "description": "立即查看详情 →", + "author": "微步在线研究响应中心", + "category": "微步在线研究响应中心", + "pubDate": "2026-05-14T11:50:49" + }, + { + "title": "CVE-2026-8196-JeecgBoot-mLogin接口授权绕过漏洞报告", + "link": "https://mp.weixin.qq.com/s/04Nk2TcwRw3zv7djwnrW8A", + "description": "CVE-2026-8196-JeecgBoot-mLogin接口授权绕过漏洞报告", + "author": "Sec打更人", + "category": "Sec打更人", + "pubDate": "2026-05-14T11:26:01" + }, + { + "title": "泛微ecology 历史漏洞浅析(二)", + "link": "https://mp.weixin.qq.com/s/DzBEQWostGd0rGg5vluKSA", + "description": "泛微ecology 历史漏洞浅析(二)", + "author": "红细胞安全实验室", + "category": "红细胞安全实验室", + "pubDate": "2026-05-14T11:19:23" + }, + { + "title": "CVE复现 | CVE-2025-58360漏洞复现", + "link": "https://mp.weixin.qq.com/s/BtkmHs3kCnSgnkVeAxq5ng", + "description": "CVE复现 | CVE-2025-58360漏洞复现", + "author": "凌日网络与信息安全团队LapR1skT", + "category": "凌日网络与信息安全团队LapR1skT", + "pubDate": "2026-05-14T11:00:28" + }, + { + "title": "【漏洞通告】泛微 E-cology10 invoke命令执行漏洞", + "link": "https://mp.weixin.qq.com/s/oTvDu7ct1hXG9ccPDZbgAQ", "description": null, - "author": "赛搏思安全实验室", - "category": "赛搏思安全实验室", - "pubDate": "2025-03-11T23:30:20" + "author": "安迈信科应急响应中心", + "category": "安迈信科应急响应中心", + "pubDate": "2026-05-14T10:52:56" }, { - "title": "记一次红队打点mt_rand突破", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg3OTUxNTU2NQ==&mid=2247490081&idx=1&sn=344102842f59ca0d39d02729b19c4850", + "title": "nginx Rift(CVE-2026-42945)攻击者可触发 worker 崩溃,特定条件下可远程代码执行", + "link": "https://mp.weixin.qq.com/s/a1QEQ9CYZ9vt1tnTdWikOw", + "description": "长话短说2026 年 5 月 13 日(UTC),F5 发布 nginx 安全公告,披露 ngx_http_r", + "author": "独眼情报", + "category": "独眼情报", + "pubDate": "2026-05-14T10:45:41" + }, + { + "title": "【已复现】漏洞通告 | Linux 内核 Fragnesia 权限提升漏洞(CVE-2026-46300)", + "link": "https://mp.weixin.qq.com/s/G--7OVlmwJfe4d506K06sQ", + "description": "Fragnesia漏洞利用了Linux XFRM ESP-in-TCP实现中的一个逻辑缺陷,该缺陷涉及在skb合并过程中对共享页面片段的处理不当。漏洞利用了这样一种情况:在套接字转换到espintcp ULP模式之前,文件支持的页面会被拼接到TCP接收队列中。一旦启用ESP处理,内核就会对", + "author": "中成信息", + "category": "中成信息", + "pubDate": "2026-05-14T10:39:39" + }, + { + "title": "【已复现】Linux Kernel Fragnesia 本地权限提升漏洞(CVE-2026-46300)安全风险通告", + "link": "https://mp.weixin.qq.com/s/cs8GKRAk6IGzxEpmMs-Y5Q", + "description": "致力于第一时间为企业级用户提供权威漏洞情报和有效解决方案。", + "author": "奇安信 CERT", + "category": "奇安信 CERT", + "pubDate": "2026-05-14T10:15:04" + }, + { + "title": "Dirty Frag:无需漏洞触发条件的 Linux 本地提权,你的防御控制真的在工作吗?", + "link": "https://mp.weixin.qq.com/s/XWNHIKRs_uykWPtT3ekfyA", + "description": "Dirty Frag来袭,无需条件、绕过防护、瞬间 Root,10 年 Linux 版本,1 行代码秒提权,快来验证你的防线是在实时报警,还是在带毒裸奔!", + "author": "塞讯安全验证", + "category": "塞讯安全验证", + "pubDate": "2026-05-14T10:02:28" + }, + { + "title": "在人工智能深度伪造冒充攻击活动后,对 Python 后门威胁进行了分析", + "link": "https://mp.weixin.qq.com/s/Lw_axGxenit_wpfcBdohEA", + "description": "主要发现最初的入侵是通过带有 ZIP 压缩恶意 LNK 附件的鱼叉式网络钓鱼邮件实现的。", + "author": "安全圈的那点事儿", + "category": "安全圈的那点事儿", + "pubDate": "2026-05-14T09:42:11" + }, + { + "title": "逻辑漏洞渗透", + "link": "https://mp.weixin.qq.com/s/OoW7oG-z7h8JeYvTddbCSQ", + "description": "业务逻辑缺陷漏洞(Business Logic Vulnerability) 是指由于应用程序的业务逻辑处理存在缺陷(如流程跳跃、状态篡改、权限校验缺失等),导致攻击者能够绕过正常业务流程,实现非预期的操作后果(如越权访问、任意密码重置、低价交易等)...", + "author": "成渝Sec", + "category": "成渝Sec", + "pubDate": "2026-05-14T07:03:06" + }, + { + "title": "飞牛安装 windows 虚拟机", + "link": "https://mp.weixin.qq.com/s/waDB-1arUUtwtYZUHp_XZQ", + "description": "用惯了企业版的虚拟化,再用开源的虚拟机方案各种不适应。", + "author": "生有可恋", + "category": "生有可恋", + "pubDate": "2026-05-14T05:45:21" + }, + { + "title": "【严重】FlipperCode 插件曝出 CVE-2026-6433:未经身份验证即可通过 eval() 接管系统", + "link": "https://mp.weixin.qq.com/s/J4NqVdgzZYNId2I2-pUXuQ", + "description": "【严重】FlipperCode 插件曝出 CVE-2026-6433:未经身份验证即可通过 eval() 接管系统", + "author": "爱坤sec", + "category": "爱坤sec", + "pubDate": "2026-05-14T02:31:08" + }, + { + "title": "【高危AI漏洞预警】CVE-2026-42203|LiteLLMxa0AIxa0Gatewayxa0服务端模板注入远程代码执行(RCE)", + "link": "https://mp.weixin.qq.com/s/Q4eugNKoZ7ZdDdmx1PuFZA", "description": null, - "author": "sec0nd安全", - "category": "sec0nd安全", - "pubDate": "2025-03-11T23:07:58" + "author": "飓风网络安全", + "category": "飓风网络安全", + "pubDate": "2026-05-13T23:29:11" }, { - "title": "无需手动操作!deepseek自动通关DVWA靶场", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg3OTUxNTU2NQ==&mid=2247490081&idx=5&sn=967aa4cd1090a6bb8cc65a8513262609", - "description": "无需任何手动操作!deepseek全自动通关DVWA靶场", - "author": "sec0nd安全", - "category": "sec0nd安全", - "pubDate": "2025-03-11T23:07:58" - }, - { - "title": "深入探索 AD CS:探索一些常见错误消息", - "link": "https://mp.weixin.qq.com/s?__biz=MzAxODM5ODQzNQ==&mid=2247487675&idx=1&sn=2bef14f30073d262816f48cb63bd6a37", + "title": "【项目实战】|从 /graphql 到未授权:另一种Swagger测试思路", + "link": "https://mp.weixin.qq.com/s/kCV7-wwdhhpRnBwdgDbS1w", "description": null, - "author": "securitainment", - "category": "securitainment", - "pubDate": "2025-03-11T22:24:23" + "author": "Z2O安全攻防", + "category": "Z2O安全攻防", + "pubDate": "2026-05-13T21:49:06" }, { - "title": "【漏洞预警】Apache Tomcat 远程代码执行漏洞(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyNzQzNDI5OQ==&mid=2247486637&idx=1&sn=9582df0651833643a927edc2a197edd2", - "description": "近日,安全聚实验室监测到 Apache Tomcat 存在远程代码执行漏洞 ,编号为:CVE-2025-24813,CVSS:8.7", - "author": "安全聚", - "category": "安全聚", - "pubDate": "2025-03-11T22:12:35" - }, - { - "title": "Apache Tomcat远程代码执行漏洞(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=MzUzMDUxNTE1Mw==&mid=2247511221&idx=1&sn=b04ebc86e93bf83a9d60382e28d6ea0b", - "description": "虽然利用条件较多,但漏洞影响还是非常广泛的,建议使用相关版本的用户尽快升级安全更新。", - "author": "山石网科安全技术研究院", - "category": "山石网科安全技术研究院", - "pubDate": "2025-03-11T21:30:41" - }, - { - "title": "ProxyCat-V1.9.4 更加强大的代理池", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyNzIxMjM3Mg==&mid=2247489617&idx=1&sn=c49ce6272d8a2f5668e2ffee1c1110cf", + "title": "Windows权限提升高级利用技术之任意文件读到SYSTEM权限代码执行", + "link": "https://mp.weixin.qq.com/s/vn_ve-_IwNGcC3Zmy5ps8g", "description": null, - "author": "白帽学子", - "category": "白帽学子", - "pubDate": "2025-03-11T20:27:40" + "author": "卡卡罗特取西经", + "category": "卡卡罗特取西经", + "pubDate": "2026-05-13T21:20:13" }, { - "title": "网康科技 NS-ASG 应用安全网关 add_ikev2.php SQL注入漏洞(CVE-2024-3458)", - "link": "https://mp.weixin.qq.com/s?__biz=MzkzMTcwMTg1Mg==&mid=2247490705&idx=1&sn=f5a167bb5a411f732d7f86b842591ff4", - "description": "网康科技 NS-ASG 应用安全网关 add_ikev2.php接口处存在SQL注入漏洞,未经身份验证的恶意攻击者利用 SQL 注入漏洞获取数据库中的信息之外,攻击者甚至可以在高权限下向服务器写入命令,进一步获取服务器系统权限。", - "author": "nday POC", - "category": "nday POC", - "pubDate": "2025-03-11T20:09:50" + "title": "Node-RED EXEC 节点未授权命令执行漏洞复现", + "link": "https://mp.weixin.qq.com/s/Dv295GjxO59yH3-dnbNVGA", + "description": "最近攻防演练中遇到了一个存在未授权访问的 Node-RED 管理界面,记录一下利用过程。", + "author": "SecurityPaper", + "category": "SecurityPaper", + "pubDate": "2026-05-13T21:11:58" }, { - "title": "Vulnhub 靶机 VulnOSv2 opendocman cms 32075 sql注入账号密码 ssh连接", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk3NTIyOTA0OQ==&mid=2247484181&idx=1&sn=08fb907e09c2c2d784949310a6d0887b", - "description": "Vulnhub 靶机 VulnOSv2 opendocman cms 32075 sql注入账号密码 ssh连接", - "author": "泷羽Sec-朝阳", - "category": "泷羽Sec-朝阳", - "pubDate": "2025-03-11T20:02:11" + "title": "linux提权漏洞喜加一", + "link": "https://mp.weixin.qq.com/s/IaBbKIaNWLzJ6xda39Gwqw", + "description": "最近公开的 Fragnesia 项目,可以看作又一个围绕 Linux page cache 的本地提权利用样本", + "author": "独眼情报", + "category": "独眼情报", + "pubDate": "2026-05-13T20:13:42" }, { - "title": "实测新型攻击可盗任意密码", - "link": "https://mp.weixin.qq.com/s?__biz=MzkxOTUyOTc0NQ==&mid=2247493232&idx=1&sn=1ae4006751050148cda0df08054fddbd", + "title": "SandboxJS 逃逸漏洞严重,可能导致主机被接管", + "link": "https://mp.weixin.qq.com/s/evx6EPYWV480lhWB9oR83g", + "description": "SandboxJS 逃逸漏洞严重,可能导致主机被接管", + "author": "安全圈的那点事儿", + "category": "安全圈的那点事儿", + "pubDate": "2026-05-13T19:25:00" + }, + { + "title": "Microsoft Teams 漏洞可导致黑客实施欺骗攻击", + "link": "https://mp.weixin.qq.com/s/pzRVNuZP6l7TxzPZV0Ta4g", + "description": "微软Teams漏洞可伪造本地设备,高危欺骗攻击威胁企业安全。", + "author": "FreeBuf", + "category": "FreeBuf", + "pubDate": "2026-05-13T19:03:25" + }, + { + "title": "【安全圈】Windows 11遭新型BitUnlocker降级攻击:5分钟内可解密加密磁盘", + "link": "https://mp.weixin.qq.com/s/jLv7O743kX1FCGw0QgK77w", + "description": "AI 漏洞挖掘开始交付\\\\x26quot;工程化结果\\\\x26quot;\\\\x0d\\\\x0a从音频解码到工业 CAD,从车端 CAN 帧到企业 Java 中间件——这一次,AI 红队没有靠\\\\x26quot;灵感\\\\x26quot;。", + "author": "安全圈", + "category": "安全圈", + "pubDate": "2026-05-13T19:01:39" + }, + { + "title": "【安全圈】Exim 新 BDAT 漏洞致 GnuTLS 构建面临代码执行风险", + "link": "https://mp.weixin.qq.com/s/jz2esBqKqwTAu6frORFX9A", + "description": "AI 漏洞挖掘开始交付\\\\x26quot;工程化结果\\\\x26quot;\\\\x0d\\\\x0a从音频解码到工业 CAD,从车端 CAN 帧到企业 Java 中间件——这一次,AI 红队没有靠\\\\x26quot;灵感\\\\x26quot;。", + "author": "安全圈", + "category": "安全圈", + "pubDate": "2026-05-13T19:01:39" + }, + { + "title": "【AI-Red攻防学习篇】 攻击单个 Agent:提示词注入、记忆投毒与目标劫持", + "link": "https://mp.weixin.qq.com/s/a4NBM5iEviR3AmfGBZX4ng", + "description": "[引言] 在 AI 红队的视野中,Agent(智能体) 与传统的 Chatbot(聊天机器人) 有着本质的区别", + "author": "APT-101", + "category": "APT-101", + "pubDate": "2026-05-13T19:01:23" + }, + { + "title": "孚盟云CRM BusinessPriceReport.aspx SQL注入漏洞", + "link": "https://mp.weixin.qq.com/s/7AOjDNkDRfxquCJfKyh2Tw", + "description": "漏洞简介上海孚盟软件有限公司是一家专业的外贸SaaS服务和行业解决方案提供商。", + "author": "0day收割机", + "category": "0day收割机", + "pubDate": "2026-05-13T17:11:38" + }, + { + "title": "ProScanKill:Windows进程溯源与处置工具", + "link": "https://mp.weixin.qq.com/s/OaWGrQkTDBFO-reeJYCv5A", + "description": "ProScanKill 是一款面向网络安全运维、应急响应、终端自查的 Windows 专属开源进程深度查杀工具", + "author": "Neon-X Sec", + "category": "Neon-X Sec", + "pubDate": "2026-05-13T16:43:27" + }, + { + "title": "神秘黑客组织利用Linux服务器运维组件漏洞大量安插后门", + "link": "https://mp.weixin.qq.com/s/G9oSiIyDSGLYm91Su2EvSg", "description": null, "author": "二进制空间安全", "category": "二进制空间安全", - "pubDate": "2025-03-11T19:43:56" + "pubDate": "2026-05-13T16:25:41" }, { - "title": "Apache Tomcat 多项安全漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzI0NzE4ODk1Mw==&mid=2652094945&idx=1&sn=cab9786aaa955563472a712e9552f111", + "title": "整合分析 | Fortinet 双子星高危漏洞:未认证即可远程代码执行", + "link": "https://mp.weixin.qq.com/s/NQubWOmtdjp6fbj3mAInhQ", + "description": null, + "author": "奇安信 CERT", + "category": "奇安信 CERT", + "pubDate": "2026-05-13T16:10:05" + }, + { + "title": "OpenClaw高风险历史漏洞专项分析报告(含POC/EXP)", + "link": "https://mp.weixin.qq.com/s/PB6k-1EdM48BRdnHITe-dQ", + "description": "本文档汇总OpenClaw自发布以来所有超危、高危漏洞", + "author": "网空安全手札", + "category": "网空安全手札", + "pubDate": "2026-05-13T15:55:06" + }, + { + "title": "【漏洞复现】Apache HTTP Server mod_http2 双重释放漏洞(CVE-2026-23918)", + "link": "https://mp.weixin.qq.com/s/E1wcifKl3CcQ0HDpLFt4ew", + "description": "CVE-2026-23918", + "author": "信通云服", + "category": "信通云服", + "pubDate": "2026-05-13T15:44:43" + }, + { + "title": "扩展Burp Suite的乐趣与收益——Montoya方式——第8部分:BChecks——快速扩展Active和Passive Scanner", + "link": "https://mp.weixin.qq.com/s/otUlBTdyN38OiRXyRGifBA", + "description": "BChecks是Burp Suite去年推出的一种轻量级扫描规则扩展方式,用类似YAML的语言编写,无需开发完整扩展。本文通过SQL注入、盲注、SSRF等真实案例,带你快速上手BChecks,同时指出它的局限性:无法获取响应时间、不能操作字", + "author": "幻泉之洲", + "category": "幻泉之洲", + "pubDate": "2026-05-13T13:04:00" + }, + { + "title": "十亿量级IoT设备面临威胁:arduino-esp32 VLA栈溢出漏洞(CVE-2026-42854)技术分析", + "link": "https://mp.weixin.qq.com/s/lZhiWbxa2avLPWeb9VMTjA", + "description": "十亿量级IoT设备面临威胁:arduino-esp32 VLA栈溢出漏洞(CVE-2026-42854)技术分析", + "author": "CVE-SEC", + "category": "CVE-SEC", + "pubDate": "2026-05-13T10:30:00" + }, + { + "title": "SRC中的缓存欺骗与缓存投毒理论与实战", + "link": "https://mp.weixin.qq.com/s/fZ1Kr7QfRk3cfh975ABxJw", + "description": "SRC中的缓存欺骗与投毒", + "author": "古月安全", + "category": "古月安全", + "pubDate": "2026-05-13T10:04:32" + }, + { + "title": "针对安卓零点击漏洞的PoC漏洞利用程序已发布,该漏洞可实现远程Shell访问", + "link": "https://mp.weixin.qq.com/s/2WMoV1V7Zp3VYtvTVL_WlQ", + "description": "威胁简报恶意软件漏洞攻击谷歌 2026 年 5 月发布的 Android 安全公告揭示了 Android 核心", + "author": "Ots安全", + "category": "Ots安全", + "pubDate": "2026-05-13T09:58:23" + }, + { + "title": "黑客把恶意代码藏进 Git Hooks,开发者面试题也可能是投毒入口", + "link": "https://mp.weixin.qq.com/s/SLA5eHRGmNLFIObRPYc2aQ", + "description": "5月13日,星期三,您好!中科汇能与您分享信息安全快讯", + "author": "汇能云安全", + "category": "汇能云安全", + "pubDate": "2026-05-13T09:49:49" + }, + { + "title": "不会Burp Suite?可以试试它", + "link": "https://mp.weixin.qq.com/s/haPJwf8rVYbH2P85mF1b9Q", + "description": "免责声明:严格禁止对任何未授权系统/网络进行扫描、攻击或入侵。禁止制作/传播恶意程序,禁止参与任何网络犯罪。", + "author": "建哥聊安全", + "category": "建哥聊安全", + "pubDate": "2026-05-13T09:14:33" + }, + { + "title": "攻防实战 | Geoserver实战记录", + "link": "https://mp.weixin.qq.com/s/oTSr_FnOJGFUw8s-piKMDA", + "description": "攻防中关于Geoserver的一些打法记录,师傅们还想看哪些类型或组件的漏洞可以在文末进行留言哈,我后续会持续", + "author": "安全艺术", + "category": "安全艺术", + "pubDate": "2026-05-13T08:59:22" + }, + { + "title": "西门子 ROS# 存在严重漏洞,可实现任意文件访问和主机接管", + "link": "https://mp.weixin.qq.com/s/glIcbK_uxbaDckf3DSFltw", + "description": "2026年5月12日,西门子产品安全应急响应小组 (ProductCERT) 发布了一份重要的安全公告,指出", + "author": "sec随谈", + "category": "sec随谈", + "pubDate": "2026-05-13T08:57:49" + }, + { + "title": "84个 npm 包遭供应链投毒攻击解析", + "link": "https://mp.weixin.qq.com/s/ZyTTCmtKUQgBo9AjKak7_w", + "description": "npm 仓库凭空多出 84 个恶意版本,涵盖 42 个 @tanstack/* 包——而且全部是通过 TanStack 自己的 CI/CD 管道合法签名的。", + "author": "黑白之道", + "category": "黑白之道", + "pubDate": "2026-05-13T08:19:12" + }, + { + "title": "信息收集思路大总结(太干了)", + "link": "https://mp.weixin.qq.com/s/gG8WgR8NYahfRg_xIjpLBg", + "description": null, + "author": "黑白之道", + "category": "黑白之道", + "pubDate": "2026-05-13T08:19:12" + }, + { + "title": "NetTools 新增IP 归属地查询,帮助你快速获取任意 IP 地址的详细信息", + "link": "https://mp.weixin.qq.com/s/-KeyNYLF9dOoxUPyfZOOPw", + "description": null, + "author": "网络技术联盟站", + "category": "网络技术联盟站", + "pubDate": "2026-05-13T08:13:01" + }, + { + "title": "漏洞预警 | cPanel&WHM身份认证绕过漏洞", + "link": "https://mp.weixin.qq.com/s/MY9lKTgrp9GgA7I51AZwMA", + "description": "cPanel\\\\x26amp;WHM存在身份认证绕过漏洞,攻击者通过Basic认证头在密码字段注入CRLF字符,将恶意键值对写入原始会话文件。随后触发token_denied流程,使系统重新解析该文件并将注入的hasroot=1、user=root等记录提升至JSON缓存,最终获得管理员权限。", + "author": "浅安安全", + "category": "浅安安全", + "pubDate": "2026-05-13T07:50:37" + }, + { + "title": "漏洞预警 | 孚盟云SQL注入漏洞", + "link": "https://mp.weixin.qq.com/s/1Nep-sTJLyYJCXO3rL6zEw", + "description": "孚盟云存在SQL注入漏洞,未经验证的攻击者可通过该漏洞获取数据库敏感信息。", + "author": "浅安安全", + "category": "浅安安全", + "pubDate": "2026-05-13T07:50:37" + }, + { + "title": "cPanel 和 WHM 的新漏洞可导致代码执行和拒绝服务攻击", + "link": "https://mp.weixin.qq.com/s/C6flk23xhsVfCu_zEVs-Ng", + "description": null, + "author": "暗镜", + "category": "暗镜", + "pubDate": "2026-05-13T06:01:06" + }, + { + "title": "pidinfo 根据进程 ID 获取进程信息", + "link": "https://mp.weixin.qq.com/s/UpGsT1qa9MGjjdLVdKhUOA", + "description": "通过 PID 获取进程信息:命令行、工作目录、打开的网络会话", + "author": "生有可恋", + "category": "生有可恋", + "pubDate": "2026-05-13T05:17:20" + }, + { + "title": "Teamview安装版密码提取免杀(最新版v15.76.6.0)", + "link": "https://mp.weixin.qq.com/s/T9hiu2yGCSHphqPhEHzB6Q", + "description": "Teamview安装版密码提取免杀(最新版v15.76.6.0)", + "author": "爱坤sec", + "category": "爱坤sec", + "pubDate": "2026-05-13T02:30:36" + }, + { + "title": "小心JPEG图像文件正在成为新型恶意载体", + "link": "https://mp.weixin.qq.com/s/yGBs5h5YNGcpHGzU3aw8Hg", + "description": "安全研究人员近日披露,网络攻击者正在利用“武器化 JPEG(Weaponized JPEG)文件”作为恶意载体", + "author": "河南等级保护测评", + "category": "河南等级保护测评", + "pubDate": "2026-05-13T00:00:36" + }, + { + "title": "如何在linux上检测恶意软件", + "link": "https://mp.weixin.qq.com/s/Fz8CWplz7DNncIHDPvIi_w", + "description": "也可以在linux上传卡巴斯基病毒清除工具\\\\x0a\\\\x0a下载链接:https://www.kaspersky.com.cn/downloads/free-virus-removal-tool\\\\x0a\\\\x0alinux 直接运行,就会使用图形化扫描,如果有图形化可以直接运行\\\\x0a\\\\x0a下述命令只扫描不杀毒\\\\x0a\\\\x0a全盘扫描\\\\x0a\\\\x0a./kvrt.run -- -accepteula -silent -dontencrypt -allvolumes\\\\x0a\\\\x0a\\\\", + "author": "ListSec", + "category": "ListSec", + "pubDate": "2026-05-12T22:20:53" + }, + { + "title": "威胁行为者Mr_Rot13积极利用CVE-2026-41940漏洞实施后门部署", + "link": "https://mp.weixin.qq.com/s/2iUEEejnBxRdQWrwTisEPA", + "description": "0x01 核心速览【事件】【事件】奇安信XLab披露了一个被内部命名为“Mr_Rot13”的黑客组织,正积极利", + "author": "404号浪漫", + "category": "404号浪漫", + "pubDate": "2026-05-12T22:16:06" + }, + { + "title": "Grav CMS 组合拳漏洞| CVE-2026-42613&CVE-2026-42607复现&研究", + "link": "https://mp.weixin.qq.com/s/fScOkKDIDsdUSyOlYyNkpQ", + "description": "点击蓝字,关注我们0x0 背景介绍•受影响系统:Grav CMS•受影响版本:v1.7.52(核心发行包)•", + "author": "404号浪漫", + "category": "404号浪漫", + "pubDate": "2026-05-12T22:14:00" + }, + { + "title": "空密码后台 → SQLite 落地 Webshell → 内核 CVE-2026-31431 root", + "link": "https://mp.weixin.qq.com/s/c6VZNFWIDw0h_xuK0G45Yw", + "description": "RRRRRR", + "author": "YMs0ra的安全漫路", + "category": "YMs0ra的安全漫路", + "pubDate": "2026-05-12T21:53:05" + }, + { + "title": "黑客利用伪造DeepSeek TUI GitHub仓库传播恶意软件", + "link": "https://mp.weixin.qq.com/s/jCu1hHqoAA7k8jvZwPsp3w", + "description": "黑客伪造DeepSeek TUI仓库传播恶意软件,禁用安全防护并窃取数据。", + "author": "FreeBuf", + "category": "FreeBuf", + "pubDate": "2026-05-12T20:50:58" + }, + { + "title": "蚁剑最新高危漏洞分析:为什么一个“终端输出”最后变成了客户端 RCE?", + "link": "https://mp.weixin.qq.com/s/6lAzHpefcbFDM3s6a2R0gA", + "description": "不要相信远程服务器返回的内容", + "author": "六边形攻防安全", + "category": "六边形攻防安全", + "pubDate": "2026-05-12T20:33:50" + }, + { + "title": "链锁裂变|TeamPCP 供应链攻击劫持 guardrails-ai,七模块凭据收割全景分析", + "link": "https://mp.weixin.qq.com/s/P4LnwNy2wVbLDEk12-3XIw", + "description": "2026年5月12日,腾讯安全发现知名LLM框架guardrails-ai遭供应链攻击。黑客植入恶意代码,旨在窃取多云凭据及敏感文件,并进行持久化控制。", + "author": "腾讯安全威胁情报中心", + "category": "腾讯安全威胁情报中心", + "pubDate": "2026-05-12T20:18:36" + }, + { + "title": "【免杀神器】morphkatz", + "link": "https://mp.weixin.qq.com/s/ebJ9qpyYRDfZggmW_RVwTQ", + "description": "本文所涉及的技术、思路和工具仅用于安全测试和防御研究,切勿将其用于非法入侵或攻击他人系统等目的,一切后果由", + "author": "安全天书", + "category": "安全天书", + "pubDate": "2026-05-12T19:59:29" + }, + { + "title": "针对 Windows 11 的新型 BitUnlocker 降级攻击可在 5 分钟内访问加密磁盘", + "link": "https://mp.weixin.qq.com/s/oNRHKr8lkKy8AGrf3bACmg", + "description": "一款名为 BitUnlocker 的新工具揭示了一种针对微软 BitLocker 加密的实用降级攻击,攻击者可以利用修补和证书吊销之间的关键漏洞,在 5 分钟内,通过物理访问的方式解密已打补丁的 Windows 11 计算机上的受保护卷。", + "author": "安全圈的那点事儿", + "category": "安全圈的那点事儿", + "pubDate": "2026-05-12T19:22:00" + }, + { + "title": "PHP SOAP 扩展存在严重漏洞,可导致远程代码执行攻击", + "link": "https://mp.weixin.qq.com/s/wB1Nto61yY1wymP3O27sYg", + "description": "PHP 核心字符串处理和 ext-soap 组件中发现了一系列严重的漏洞,使众多 Web 服务器面临被完全控制的直接风险。", + "author": "安全圈的那点事儿", + "category": "安全圈的那点事儿", + "pubDate": "2026-05-12T19:13:00" + }, + { + "title": "BitUnlocker降级攻击数分钟内即可绕过Windows 11磁盘加密", + "link": "https://mp.weixin.qq.com/s/AGjYLjAN6S8F6rw0t3Ex2g", "description": null, "author": "网安百色", "category": "网安百色", - "pubDate": "2025-03-11T19:28:57" + "pubDate": "2026-05-12T18:22:23" }, { - "title": "Microsoft WinDbg RCE 存在允许攻击者远程执行任意代码漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzI0NzE4ODk1Mw==&mid=2652094945&idx=2&sn=b8927f61ae21ac02b310e4b2e01c22f6", - "description": null, + "title": "PHP SOAP扩展漏洞或致远程代码执行", + "link": "https://mp.weixin.qq.com/s/mFK47EiAfZTEblT2Mfmw9g", + "description": "近期披露的PHP漏洞,尤其是其广泛使用的SOAP扩展中的缺陷,已引发网络安全界的严重警报。", "author": "网安百色", "category": "网安百色", - "pubDate": "2025-03-11T19:28:57" + "pubDate": "2026-05-12T18:22:23" }, { - "title": "【安全圈】Apache Tomcat 中的 CVE-2025-24813 漏洞导致服务器遭受 RCE 和数据泄露:立即更新", - "link": "https://mp.weixin.qq.com/s?__biz=MzIzMzE4NDU1OQ==&mid=2652068433&idx=3&sn=70253a351fb115e049a9d256c1390052", - "description": null, - "author": "安全圈", - "category": "安全圈", - "pubDate": "2025-03-11T19:00:53" + "title": "字典跑不出Actuator?从JS前缀到绕过Cookie下载HeapDump", + "link": "https://mp.weixin.qq.com/s/CDCpzDqcfrK1qCIQwaNJog", + "description": "〇、起因前段时间对某目标进行测试,前期信息收集阶段没什么特别的发现,索性先把小程序端过了一遍。", + "author": "进击的HACK", + "category": "进击的HACK", + "pubDate": "2026-05-12T18:16:13" }, { - "title": "【已复现】Apache Tomcat存在远程代码执行漏洞(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=MzUzOTE2OTM5Mg==&mid=2247490328&idx=1&sn=ba3aac1c3b2f2418ffe8b3312ef3874a", - "description": null, - "author": "安恒信息CERT", - "category": "安恒信息CERT", - "pubDate": "2025-03-11T18:40:19" - }, - { - "title": "已复现!Apache Tomcat 远程代码执行漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5NjA0NjI5MQ==&mid=2650183306&idx=1&sn=d5005af8f2feedc3827c1c50b3c7a948", - "description": "请查看漏洞详情!", - "author": "微步在线", - "category": "微步在线", - "pubDate": "2025-03-11T18:31:13" - }, - { - "title": "【已复现】Apache Tomcat Partial PUT远程代码执行漏洞(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=MzIwMDk1MjMyMg==&mid=2247492735&idx=1&sn=6dea5357862c227b6882f2948233a06a", - "description": "检测业务是否受到此漏洞影响,请联系长亭应急服务团队!", - "author": "长亭安全应急响应中心", - "category": "长亭安全应急响应中心", - "pubDate": "2025-03-11T18:27:07" - }, - { - "title": "一种基于unicorn的寄存器间接跳转混淆去除方式", - "link": "https://mp.weixin.qq.com/s?__biz=MjM5NTc2MDYxMw==&mid=2458590669&idx=1&sn=347a710061251090dc435a48bdd6fb9f", - "description": "看雪论坛作者ID:l4n", + "title": "基于LLVM的通用自包含化(Shellcode)编译器开发思路", + "link": "https://mp.weixin.qq.com/s/7w1262ie20u8T2pi-P8_9g", + "description": "看雪论坛作者ID:TeddyBe4r", "author": "看雪学苑", "category": "看雪学苑", - "pubDate": "2025-03-11T18:00:00" + "pubDate": "2026-05-12T17:59:51" }, { - "title": "Responder与evil-winRM配合远程登录windows", - "link": "https://mp.weixin.qq.com/s?__biz=MzkxNTIwNTkyNg==&mid=2247554161&idx=1&sn=e547c1aec4b529dd6c6ec3d69a27eda8", + "title": "安卓惊现零点击核弹漏洞!远程Shell权限被轻易窃取,PoC已公开", + "link": "https://mp.weixin.qq.com/s/JHM9OoEF3h-HDS2wNRk3Ew", + "description": "安卓adbd零点击漏洞PoC发布,可远程获取设备权限", + "author": "看雪学苑", + "category": "看雪学苑", + "pubDate": "2026-05-12T17:59:51" + }, + { + "title": "【高危漏洞预警】PHP SOAP扩展内存错误引用漏洞(CVE-2026-6722)", + "link": "https://mp.weixin.qq.com/s/GyAx7mJ6GeT1DhL4YbvZtA", + "description": "漏洞描述:PHP是一种广泛使用的开源通用脚本语言特别适合Wеb开发,可嵌入HTML中执行服务器端逻辑。", + "author": "飓风网络安全", + "category": "飓风网络安全", + "pubDate": "2026-05-12T17:48:56" + }, + { + "title": "Kali Linux 安装全攻略:U盘启动/双系统/虚拟机(附常见报错解决)", + "link": "https://mp.weixin.qq.com/s/czZtewlGYFuy2ex3aGGomw", + "description": "本篇汇总了3种主流安装方式(虚拟机、U盘启动、双系统)的详细步骤,同时整理了新手安装时最常遇到的10种报错,附带“报错现象+原因+解决方案”,一站式解决你的安装难题,建议收藏备用!", + "author": "编程技术栈", + "category": "编程技术栈", + "pubDate": "2026-05-12T17:19:40" + }, + { + "title": "Apache Tomcat Tribes EncryptInterceptor 加密绕过反序列化漏洞分析(CVE-2026-34486)", + "link": "https://mp.weixin.qq.com/s/q6W0t4fsx_SStzcXlXCCKg", + "description": "CVE-2026-34486 漏洞分析", + "author": "ap0s", + "category": "ap0s", + "pubDate": "2026-05-12T17:16:34" + }, + { + "title": "在Burp插件中玩转Collaborator:检测Java反序列化的实战教程(第七部分)", + "link": "https://mp.weixin.qq.com/s/WNFxCG2pi5goXGwIpH_dzQ", + "description": "本文将教你如何在Burp Suite的Montoya API插件中调用Collaborator,实现基于DNS反连的Java反序列化漏洞检测。从手动验证到代码实现,一步步带你搞定。\\\\x0a大家好!上一期我们写了一个自定义扫描插件,给Burp Sc", + "author": "幻泉之洲", + "category": "幻泉之洲", + "pubDate": "2026-05-12T15:28:00" + }, + { + "title": "通过不安全反序列化导致的远程代码执行:Wazuh XDR/SIEM(CVE-2026–25769)", + "link": "https://mp.weixin.qq.com/s/E186F3A-_hDMaO6OvRLPQQ", + "description": "官网:http://securitytech.cc对影响 Wazuh 集群部署的已认证远程代码执行漏洞进行技术", + "author": "安全狗的自我修养", + "category": "安全狗的自我修养", + "pubDate": "2026-05-12T15:19:01" + }, + { + "title": "注释写着\\\"需要认证\\\",代码说\\\"不\\\"——CVE-2026-42864 未授权 SSRF 导致 AWS 凭据窃取", + "link": "https://mp.weixin.qq.com/s/9TcFGZP7cqgvp4lfKJ_CcA", + "description": "注释写着\\\\x26quot;需要认证\\\\x26quot;,代码说\\\\x26quot;不\\\\x26quot;——CVE-2026-42864 未授权 SSRF 导致 AWS 凭据窃取", + "author": "CVE-SEC", + "category": "CVE-SEC", + "pubDate": "2026-05-12T14:00:00" + }, + { + "title": "Apache Tomcat Tribes EncryptInterceptor 故障开放绕过,未经身份验证的远程代码执行 PoC", + "link": "https://mp.weixin.qq.com/s/VfGLmrCmB8F0L77d5k4jIQ", + "description": "威胁简报恶意软件漏洞攻击CVE-2026-34486Apache Tomcat Tribes 集群中的 Enc", + "author": "Ots安全", + "category": "Ots安全", + "pubDate": "2026-05-12T13:08:04" + }, + { + "title": "PowerShell 脚本库,可 100% 绕过杀毒软件", + "link": "https://mp.weixin.qq.com/s/CKQ1BUoNXJci4BPl7ScWhA", + "description": "威胁简报恶意软件漏洞攻击此仓库包含专为渗透测试设计的PowerShell 脚本,包括反向 shell。", + "author": "Ots安全", + "category": "Ots安全", + "pubDate": "2026-05-12T13:08:04" + }, + { + "title": "越权漏洞挖掘新思路", + "link": "https://mp.weixin.qq.com/s/Taru2nAeqEjnQoFtbhFcfA", "description": null, - "author": "蚁景网络安全", - "category": "蚁景网络安全", - "pubDate": "2025-03-11T17:40:56" + "author": "web安全小白", + "category": "web安全小白", + "pubDate": "2026-05-12T12:19:01" }, { - "title": "udp没有连接就会生成socket吗?", - "link": "https://mp.weixin.qq.com/s?__biz=MzIxNTM3NDE2Nw==&mid=2247490362&idx=1&sn=80cd462c71ea1c8072e245d89326f0b2", + "title": "对Auth/Waf 自动化bypass的burpsuite插件", + "link": "https://mp.weixin.qq.com/s/31t-MuE3ONY5G7GVSDCfJw", "description": null, - "author": "车小胖谈网络", - "category": "车小胖谈网络", - "pubDate": "2025-03-11T17:32:42" + "author": "攻防录", + "category": "攻防录", + "pubDate": "2026-05-12T11:19:06" }, { - "title": "【已复现】Apache Tomcat远程代码执行漏洞(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0MjE3ODkxNg==&mid=2247489041&idx=1&sn=4e296b6bc36202ea679b904adb098521", - "description": "近日,绿盟科技CERT监测到Apache发布安全公告,修复了Apachexa0Tomcat远程代码执行漏洞(CVE-2025-24813),目前已成功复现,请相关用户尽快采取措施进行防护。", - "author": "绿盟科技CERT", - "category": "绿盟科技CERT", - "pubDate": "2025-03-11T17:12:10" + "title": "还不会搭建 API 中转站?New API 搭建属于你自己的 AI Token 中转站", + "link": "https://mp.weixin.qq.com/s/GV1ajrIhcQ-t2vqrn-LSdw", + "description": "还不会搭建 API 中转站?New API 搭建属于你自己的 AI Token 中转站", + "author": "W不懂安全", + "category": "W不懂安全", + "pubDate": "2026-05-12T10:52:51" }, { - "title": "CVE-2023-21839-WebLogic Server远程代码执行", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyNTUyOTk0NA==&mid=2247488582&idx=1&sn=5b93bf6831cb5d3ba36c1b86bf08da5c", + "title": "CTF 国赛技术点系列(第 9 期)——Linux 权限与本地提权基础(国赛渗透必考)", + "link": "https://mp.weixin.qq.com/s/NupY-VvT4gWjV8JMZyCaIw", + "description": "一、技术点定位Linux 权限与本地提权,是国赛靶机渗透、Web 后台联动、运维类题型必考核心。", + "author": "网络安全学习室", + "category": "网络安全学习室", + "pubDate": "2026-05-12T10:11:51" + }, + { + "title": "普华PMS OfficeService.aspx 任意文件读取漏洞", + "link": "https://mp.weixin.qq.com/s/CcP_QXQqww280C_lkJfQHQ", + "description": "普华PMS OfficeService.aspx 接囗处存在任意文件读取漏洞,未经身份验证的远程攻击者通过漏洞可以获取到服务器敏感信息,导致系统处于极不安全的状态。", + "author": "Nday Poc", + "category": "Nday Poc", + "pubDate": "2026-05-12T10:05:41" + }, + { + "title": "信息收集思路大总结(太干了)", + "link": "https://mp.weixin.qq.com/s/dvWRDTl_7wmKQs-veX43Vg", + "description": "太干了,兄弟。", + "author": "乌雲安全", + "category": "乌雲安全", + "pubDate": "2026-05-12T09:44:49" + }, + { + "title": "【SRC实战】|越权漏洞“默认你不会改参数”", + "link": "https://mp.weixin.qq.com/s/PkmZzctiOXq6PO2GKikklQ", + "description": "两个真实的越权案例", + "author": "隐雾安全", + "category": "隐雾安全", + "pubDate": "2026-05-12T09:30:22" + }, + { + "title": "AI遭劫持:Claude Chrome扩展程序存在严重漏洞,恶意脚本可控制您的AI", + "link": "https://mp.weixin.qq.com/s/D-PMrvpJ0NXO7wRXf5gkow", + "description": "人工智能助手正在迅速融入我们的日常工作流程,但是当一个值得信赖的人工智能开始接受恶意旁观者的指令时会发生什么呢", + "author": "sec随谈", + "category": "sec随谈", + "pubDate": "2026-05-12T09:19:17" + }, + { + "title": "黑客在虚假 Claude 恶意软件活动中使用类似 PlugX 的 DLL 侧加载链", + "link": "https://mp.weixin.qq.com/s/MWQqRO0MT-HtPOdjKtfCSw", + "description": "伪造Claude AI助手的新型攻击。", + "author": "爱拍照的老李", + "category": "爱拍照的老李", + "pubDate": "2026-05-12T09:01:16" + }, + { + "title": "新的“Dirty Frag”Linux漏洞可能在攻击中被利用", + "link": "https://mp.weixin.qq.com/s/xGOq3_-dHbu2c1OZ9Iao2g", + "description": "又一个新的linux提权漏洞细节公开。", + "author": "爱拍照的老李", + "category": "爱拍照的老李", + "pubDate": "2026-05-12T09:01:16" + }, + { + "title": "记一次护网通过外网弱口令一路到内网", + "link": "https://mp.weixin.qq.com/s/HNwkrb9j-uGirSeQ6am2aA", "description": null, - "author": "智检安全", - "category": "智检安全", - "pubDate": "2025-03-11T16:38:38" + "author": "黑白之道", + "category": "黑白之道", + "pubDate": "2026-05-12T08:28:35" }, { - "title": "【漏洞速递】Apache Tomcat 远程代码执行漏洞(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=MzIwNDYwMDcyNQ==&mid=2247488922&idx=1&sn=ceb2114122a4a891f31b9ba96ae721f7", + "title": "FastGPT NoSQL注入致管理员登录绕过:CVE-2026-40351深度剖析", + "link": "https://mp.weixin.qq.com/s/FSgkK2IehfyHyso0O9buSA", + "description": "导语:FastGPT AI Agent平台被披露存在严重NoSQL注入漏洞(CVE-2026-40351)", + "author": "黑白之道", + "category": "黑白之道", + "pubDate": "2026-05-12T08:28:35" + }, + { + "title": "漏洞预警 | Android ADB认证绕过漏洞", + "link": "https://mp.weixin.qq.com/s/KKgcaiYm3J2aScouaYKRtA", + "description": "Android ADB存在认证绕过漏洞,攻击者可通过提供非RSA TLS客户端证书成为授权ADB host并获取shell用户权限,从而远程访问系统调试接口,执行读取敏感信息、执行命令、修改配置等操作。", + "author": "浅安安全", + "category": "浅安安全", + "pubDate": "2026-05-12T08:04:19" + }, + { + "title": "拿Shell只需后台权限?深度剖析 Ivanti EPMM 最新 RCE 漏洞 (CVE-2026-6973)", + "link": "https://mp.weixin.qq.com/s/f9IH0K1mGrR_2s6hAF1TMQ", + "description": "大家好,最近网安圈子又不太平了,不知道大家的监控报警有没有响?", + "author": "安全圈动向", + "category": "安全圈动向", + "pubDate": "2026-05-12T08:02:32" + }, + { + "title": "【紧急】Supsystic Contact Form 插件 CVE-2026-4257 漏洞:未经身份验证即可 RCE!", + "link": "https://mp.weixin.qq.com/s/AbwpUiNtK0Nv5wriDzw57A", + "description": "【紧急】Supsystic Contact Form 插件 CVE-2026-4257 漏洞:未经身份验证即可 RCE!", + "author": "爱坤sec", + "category": "爱坤sec", + "pubDate": "2026-05-12T02:30:53" + }, + { + "title": "针对wasm反CFF的尝试", + "link": "https://mp.weixin.qq.com/s/AIbbvF1chsdk4hYqOf1J2A", + "description": "本文简单探索针对wasm反CFF的技术方案,提供测试用例及PoC。", + "author": "青衣十三楼飞花堂", + "category": "青衣十三楼飞花堂", + "pubDate": "2026-05-12T00:01:09" + }, + { + "title": "DAEMON Tools 供应链攻击导致官方安装程序被恶意软件入侵", + "link": "https://mp.weixin.qq.com/s/roVvvw6O6sEOCO5RMEoQNQ", "description": null, - "author": "安全狐", - "category": "安全狐", - "pubDate": "2025-03-11T16:31:43" + "author": "犀牛安全", + "category": "犀牛安全", + "pubDate": "2026-05-12T00:00:37" }, { - "title": "记一次漏洞挖掘过程中的SQL注入浅浅绕过记录", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0MTIzNTgzMQ==&mid=2247519642&idx=1&sn=f89c90b0b15a4b3fd97a21cf183bbdf1", - "description": null, - "author": "亿人安全", - "category": "亿人安全", - "pubDate": "2025-03-11T15:55:07" - }, - { - "title": "H3CWeb网管登录系统aaa_portal_auth_wchat_submit存在远程命令执行漏洞", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyOTg3ODc5OA==&mid=2247484641&idx=1&sn=b445fd53476f27e964b941662af15de6", - "description": null, - "author": "骇客安全", - "category": "骇客安全", - "pubDate": "2025-03-11T14:34:50" - }, - { - "title": "打靶日记 VulnHub靶机 Tr0ll 2", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk1Nzc0MzY3NA==&mid=2247484367&idx=1&sn=187446822f79aaba9d42d6bb8708c233", - "description": null, - "author": "泷羽Sec-临观", - "category": "泷羽Sec-临观", - "pubDate": "2025-03-11T14:30:57" - }, - { - "title": "翻译|创建基于WebSocket的PowerShell反向 Shell", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5NTUzNzY3Ng==&mid=2247489033&idx=1&sn=0a27d8b8be9bce885f5ef1b9d7042306", - "description": null, - "author": "SecHub网络安全社区", - "category": "SecHub网络安全社区", - "pubDate": "2025-03-11T13:22:34" - }, - { - "title": "JS逆向 | cookie加密处理", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyOTUxMzk2NQ==&mid=2247486106&idx=1&sn=66a14d0a427a446704148b92d3ffd67c", - "description": null, - "author": "安全君呀", - "category": "安全君呀", - "pubDate": "2025-03-11T13:20:27" - }, - { - "title": "详解PHP弱类型与常见安全问题", - "link": "https://mp.weixin.qq.com/s?__biz=MjM5MjEyMTcyMQ==&mid=2651037544&idx=1&sn=b0c40d4df00b5ee0b83e899ddb1ff58a", - "description": "弱类型的语言对变量的数据类型没有限制,你可以在任何地时候将变量赋值给任意的其他类型的变量,同时变量也可以转换成任意地其他类型的数据。这时候在类型转化、不同类型比较、不合理地传参,会造成意外执行结果和绕过防御。", - "author": "SAINTSEC", - "category": "SAINTSEC", - "pubDate": "2025-03-11T13:13:37" - }, - { - "title": "威胁行为者利用 PHP-CGI RCE 漏洞攻击 Windows 计算机", - "link": "https://mp.weixin.qq.com/s?__biz=MzUyMzczNzUyNQ==&mid=2247523764&idx=1&sn=6359558313ce2edbcb59efbbbe3c2fb8", - "description": "威胁行为者利用 PHP-CGI RCE 漏洞攻击 Windows 计算机", - "author": "邑安全", - "category": "邑安全", - "pubDate": "2025-03-11T11:59:40" - }, - { - "title": "CISA 将 3 个 Ivanti Endpoint Manager 漏洞添加到已知已利用漏洞目录中", - "link": "https://mp.weixin.qq.com/s?__biz=MzUyMzczNzUyNQ==&mid=2247523764&idx=3&sn=5b3b0277523ad161c1cf404f0691a165", - "description": "CISA 将 3 个 Ivanti Endpoint Manager 漏洞添加到已知已利用漏洞目录中", - "author": "邑安全", - "category": "邑安全", - "pubDate": "2025-03-11T11:59:40" - }, - { - "title": "虚拟机逃逸!VMware高危漏洞正被积极利用,国内公网暴露面最大", - "link": "https://mp.weixin.qq.com/s?__biz=MzI1OTA1MzQzNA==&mid=2651247728&idx=1&sn=36ad3c8edbbe2b6751fe59e93c9851d6", - "description": null, - "author": "e安在线", - "category": "e安在线", - "pubDate": "2025-03-11T11:31:34" - }, - { - "title": "【漏洞预警】Apache Tomcat 远程代码执行漏洞(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0OTY2ODE1NA==&mid=2247485130&idx=1&sn=a09954552c2468b317bca829c23dbd81", - "description": null, - "author": "Z0安全", - "category": "Z0安全", - "pubDate": "2025-03-11T11:16:29" - }, - { - "title": "关于防范针对DeepSeek本地化部署实施网络攻击的风险提示", - "link": "https://mp.weixin.qq.com/s?__biz=MzIxNjI2NjUzNw==&mid=2247493028&idx=1&sn=2c332f4077aa2a9bedeae8c680e1b78a", - "description": null, - "author": "金瀚信安", - "category": "金瀚信安", - "pubDate": "2025-03-11T11:09:32" - }, - { - "title": "ScopeSentry-网络空间测绘 子域|端口|漏洞扫描工具", - "link": "https://mp.weixin.qq.com/s?__biz=MzU1NjczNjA0Nw==&mid=2247486648&idx=1&sn=6e4b4f683b40d7f8cf5a189dd1c0ca73", - "description": "Scope Sentry是一款具有资产测绘、子域名枚举、信息泄露检测、漏洞扫描、目录扫描、子域名接管、爬虫、页面监控功能的工具,通过构建多个节点,自由选择节点运行扫描任务。当出现新漏洞时可以快速排查关注资产是否存在相关组件。", - "author": "三沐数安", - "category": "三沐数安", - "pubDate": "2025-03-11T11:04:12" - }, - { - "title": "【漏洞预警】Apache Tomcat 远程代码执行漏洞(CVE-2025-24813)", - "link": "https://mp.weixin.qq.com/s?__biz=MzI3NzMzNzE5Ng==&mid=2247489740&idx=1&sn=db37e0a11d920f2bdae04f69ac22bb2d", + "title": "PHP unserialize() 潜伏21年致命Use-After-Free漏洞", + "link": "https://mp.weixin.qq.com/s/YufKn9BT3T5iHElqTptkdA", "description": null, "author": "飓风网络安全", "category": "飓风网络安全", - "pubDate": "2025-03-11T11:02:29" + "pubDate": "2026-05-11T23:54:45" }, { - "title": "【漏洞预警】Apache OFBiz服务端模板注入漏洞(CVE-2025-26865)", - "link": "https://mp.weixin.qq.com/s?__biz=MzI3NzMzNzE5Ng==&mid=2247489740&idx=2&sn=0bac6a9c71f04dc537658d19ed7a2478", - "description": null, - "author": "飓风网络安全", - "category": "飓风网络安全", - "pubDate": "2025-03-11T11:02:29" + "title": "Blinko plugins路径遍历漏洞存在任意文件读取漏洞 附POC", + "link": "https://mp.weixin.qq.com/s/G3nX_Sk5SNhT-JM_uCrEJQ", + "description": "免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间", + "author": "南风漏洞复现文库", + "category": "南风漏洞复现文库", + "pubDate": "2026-05-11T23:26:26" }, { - "title": "警惕:伪装成DeepSeek的木马,犯罪分子利用DeepSeek 的受欢迎程度投毒", - "link": "https://mp.weixin.qq.com/s?__biz=MzAxMjYyMzkwOA==&mid=2247528473&idx=1&sn=6cde878240948b58662e1b85c4c1306c", - "description": null, - "author": "Ots安全", - "category": "Ots安全", - "pubDate": "2025-03-11T10:51:50" + "title": "解剖 UAT-8302:一个 APT 组织的完整恶意软件图谱", + "link": "https://mp.weixin.qq.com/s/4h9hDJj9Mhq0dOMR_GQ5Jg", + "description": "0x01 核心速览【事件】【影响】【事件】【影响】Cisco Talos 评估认为,UAT-8302 是一个具", + "author": "404号浪漫", + "category": "404号浪漫", + "pubDate": "2026-05-11T21:46:36" }, { - "title": "Burp Suite 文件上传漏洞Fuzz插件", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyOTQyOTk3Mg==&mid=2247485116&idx=1&sn=64a9b755ee1cb17b0078ef171acb8946", - "description": null, - "author": "海底天上月", - "category": "海底天上月", - "pubDate": "2025-03-11T10:32:07" + "title": "记一次NTP服务异常连接的安全排查", + "link": "https://mp.weixin.qq.com/s/6jEcUC8HrHF_YgGbXKzoUA", + "description": "NTP排查", + "author": "ListSec", + "category": "ListSec", + "pubDate": "2026-05-11T21:21:37" }, { - "title": "红队技巧 - RDP 隐身模式", - "link": "https://mp.weixin.qq.com/s?__biz=MzIxNTIzNTExMQ==&mid=2247491324&idx=1&sn=97d119f16f06e8deadd0210a9998307b", - "description": null, - "author": "阿乐你好", - "category": "阿乐你好", - "pubDate": "2025-03-11T10:30:00" + "title": "CTF之通过栈溢出偷出信息", + "link": "https://mp.weixin.qq.com/s/ViZnGRYTJX1pVWSuFehKhQ", + "description": "栈溢出是二进制安全中的经典,当程序未检查输入边界时,超长数据会覆盖栈帧中的返回地址,导致控制流劫持。现代防御机制包括Stack Canary、PIE地址随机化和NX保护。NX机制使传统的Ret2Shellcode技术失效,促使攻击者转向Ret2Text、Ret2Libc和Ret2CSU等方式。", + "author": "书中自有代码来", + "category": "书中自有代码来", + "pubDate": "2026-05-11T20:36:45" }, { - "title": "Lazarus Group 攻击 Windows Web 服务器案例分析", - "link": "https://mp.weixin.qq.com/s?__biz=MzAxMjYyMzkwOA==&mid=2247528428&idx=1&sn=01245845ecc54604d651f3a257311cf9", - "description": null, - "author": "Ots安全", - "category": "Ots安全", - "pubDate": "2025-03-11T10:21:29" + "title": "OSCP百日备考06|PowerShell 从入门到实战,Windows 靶机与域渗透的核心引擎", + "link": "https://mp.weixin.qq.com/s/DPHvRd98w71LPXJY4UoCwg", + "description": "前几期我们把 Linux / Windows 基础、网络原理和核心工具都过了一遍,后台收到最多的私信,全是关于", + "author": "泷羽Sec-陌离", + "category": "泷羽Sec-陌离", + "pubDate": "2026-05-11T20:33:24" }, { - "title": "戎码翼龙NG-EDR揭秘“泄露版”红队工具Nighthawk C2 投毒事件", - "link": "https://mp.weixin.qq.com/s?__biz=MzU5MjgwMDg1Mg==&mid=2247484980&idx=1&sn=250e6cc93a967635a6227883490b5ae8", - "description": null, - "author": "夜组科技圈", - "category": "夜组科技圈", - "pubDate": "2025-03-11T10:17:24" + "title": "JDownloader 下载器遭入侵,用户被植入新型 Python 远控木马", + "link": "https://mp.weixin.qq.com/s/90q38E8GKrO2alavTNm_eA", + "description": "JDownloader遭供应链攻击,用户被植入Python远控木马。", + "author": "FreeBuf", + "category": "FreeBuf", + "pubDate": "2026-05-11T19:48:07" }, { - "title": "实战 | 微信小程序EDUSRC渗透漏洞复盘", - "link": "https://mp.weixin.qq.com/s?__biz=MzIxMTg1ODAwNw==&mid=2247500863&idx=2&sn=f34f08a45619c3b0b616de1bdd3316a6", - "description": "EDUSRC", - "author": "网络安全透视镜", - "category": "网络安全透视镜", - "pubDate": "2025-03-11T10:14:25" + "title": "cPanel高危漏洞可致文件泄露与远程代码执行,数千服务器面临风险", + "link": "https://mp.weixin.qq.com/s/XB8J58Eh--JnAVefQ7z1jQ", + "description": "cPanel新漏洞可能导致文件泄露与远程代码执行。", + "author": "FreeBuf", + "category": "FreeBuf", + "pubDate": "2026-05-11T19:48:07" }, { - "title": "服务器无浏览器如何查出口IP?", - "link": "https://mp.weixin.qq.com/s?__biz=MzkzMDQ0NzQwNA==&mid=2247486164&idx=1&sn=60853bded5c726ed917cbc953d9b41c7", - "description": null, - "author": "网络个人修炼", - "category": "网络个人修炼", - "pubDate": "2025-03-11T10:00:51" + "title": "Next.js高危漏洞可致SSRF攻击、DoS瘫痪", + "link": "https://mp.weixin.qq.com/s/FNxwrq5MdzBVTUbWfDgR9A", + "description": "Next.js 与 React Server Components 修复多个高危漏洞。", + "author": "FreeBuf", + "category": "FreeBuf", + "pubDate": "2026-05-11T19:48:07" }, { - "title": "戎码翼龙NG-EDR揭秘“泄露版”红队工具Nighthawk C2 投毒事件", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg5OTQzNTI4Nw==&mid=2247488963&idx=1&sn=cf409d54c77a34df9be4707521380a25", - "description": null, - "author": "黑客街安全团队", - "category": "黑客街安全团队", - "pubDate": "2025-03-11T09:54:15" + "title": "JDownloader 下载器被黑客入侵,使用新型 Python 远程控制木马感染用户", + "link": "https://mp.weixin.qq.com/s/R3y3BW3-zzUb8IE3x41q0g", + "description": "JDownloader 下载器被黑客入侵,使用新型 Python 远程控制木马感染用户", + "author": "安全圈的那点事儿", + "category": "安全圈的那点事儿", + "pubDate": "2026-05-11T19:28:00" }, { - "title": "漏洞预警 | Apache OFBiz 服务端模板注入漏洞(CVE-2025-26865)", - "link": "https://mp.weixin.qq.com/s?__biz=MzkyNzcxNTczNA==&mid=2247487034&idx=1&sn=17c00f90fbe293eb4a543d5699c8e22d", - "description": null, - "author": "Beacon Tower Lab", - "category": "Beacon Tower Lab", - "pubDate": "2025-03-11T09:19:21" + "title": "警惕!新型银行木马TCLBANKER曝光", + "link": "https://mp.weixin.qq.com/s/MgQeXdXlSfT1luJHc1EFZw", + "description": "伪装Logitech工具,通过WhatsApp和Outlook双渠道传播", + "author": "安世加", + "category": "安世加", + "pubDate": "2026-05-11T18:00:23" }, { - "title": "【漏洞通告】Apache OFBiz服务端模板注入漏洞安全风险通告", - "link": "https://mp.weixin.qq.com/s?__biz=MzU4NjY4MDAyNQ==&mid=2247497247&idx=1&sn=dba9ef3272ca8faeae6d581cc6af2c5b", - "description": "近日,嘉诚安全监测到Apache OFBiz服务端模板注入漏洞,鉴于漏洞危害较大,嘉诚安全提醒相关用户尽快更新至安全版本,避免引发漏洞相关的网络安全事件。", - "author": "嘉诚安全", - "category": "嘉诚安全", - "pubDate": "2025-03-11T09:03:39" + "title": "一次异常艰难的渗透测试", + "link": "https://mp.weixin.qq.com/s/QZtJz3_AtLxdGgzB1iXaOQ", + "description": "从暴力破解——》普通用户权限注入——》堆叠注入+文件下载的任意文件读取——》配置文件+源码审计——》ROOT权限SELECT注入——》读取后台账号密码——》jdbc反序列化不出网——》", + "author": "陌笙不太懂安全", + "category": "陌笙不太懂安全", + "pubDate": "2026-05-11T17:49:50" }, { - "title": "探索挖掘xss中括号被转义的绕过措施(续)", - "link": "https://mp.weixin.qq.com/s?__biz=MzkzNTcwOTgxMQ==&mid=2247485509&idx=1&sn=366fe7ce9d30e1676cd0808b84eb3ad4", - "description": null, - "author": "Spade sec", - "category": "Spade sec", - "pubDate": "2025-03-11T09:01:32" + "title": "全新免杀skills:AI自主分析对抗杀软、沙箱!!!", + "link": "https://mp.weixin.qq.com/s/A_KzZMzJwmKQgK0pY0cavQ", + "description": "AI自主分析对抗杀软、沙箱", + "author": "信益安信息安全研究院", + "category": "信益安信息安全研究院", + "pubDate": "2026-05-11T17:28:07" }, { - "title": "二月安全通告", - "link": "https://mp.weixin.qq.com/s?__biz=Mzg3Mzg1OTYyMQ==&mid=2247487749&idx=1&sn=dd61290487729b374219fa279ad31bac", - "description": null, - "author": "中龙技术", - "category": "中龙技术", - "pubDate": "2025-03-11T09:00:54" - }, - { - "title": "曹县黑客利用 ZIP 文件执行恶意 PowerShell 脚本", - "link": "https://mp.weixin.qq.com/s?__biz=MzI2NzAwOTg4NQ==&mid=2649794462&idx=3&sn=d1b6e2e0e7899e93d8922d4b2e6203b5", - "description": "又是那个曹县黑客……", - "author": "军哥网络安全读报", - "category": "军哥网络安全读报", - "pubDate": "2025-03-11T09:00:53" - }, - { - "title": "WordPress如何防Webshell、防篡改、防劫持?", - "link": "https://mp.weixin.qq.com/s?__biz=MzkxMTMyOTg4NQ==&mid=2247484198&idx=1&sn=92d0a2d6af95721509e7ab961d1ace3c", - "description": null, - "author": "护卫神说安全", - "category": "护卫神说安全", - "pubDate": "2025-03-11T08:34:38" - }, - { - "title": "Paragon 硬盘分区工具驱动曝 0day 漏洞,勒索软件“合法”提权,BYOVD 攻击再现!", - "link": "https://mp.weixin.qq.com/s?__biz=MzA4NTY4MjAyMQ==&mid=2447900282&idx=1&sn=15fde91e5d776f6506e5e684e5e2237e", - "description": "Paragon Partition Manager 的核心驱动程序 BioNTdrv.sys 被曝存在一组高危漏洞(CVE-2025-0285 ~ CVE-2025-0289)。", - "author": "技术修道场", - "category": "技术修道场", - "pubDate": "2025-03-11T08:33:43" - }, - { - "title": "vulnhub靶场之【digitalworld.local系列】的electrical靶机", - "link": "https://mp.weixin.qq.com/s?__biz=MzAxNTg1MDYxNA==&mid=2247490578&idx=1&sn=c0f04a64eab0bb6ba6a4c6fad9befc36", - "description": null, - "author": "泷羽sec-何生安全", - "category": "泷羽sec-何生安全", - "pubDate": "2025-03-11T08:30:13" - }, - { - "title": "BurpSuite使用Trips-304状态码解决", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0ODY1NzEwMA==&mid=2247487720&idx=1&sn=0681552cbb341e11a07b492cf1f68597", - "description": null, - "author": "土拨鼠的安全屋", - "category": "土拨鼠的安全屋", - "pubDate": "2025-03-11T08:24:00" - }, - { - "title": "工具集:工具集:MySQL Fake Server【高级版MySQL_Fake_Server】", - "link": "https://mp.weixin.qq.com/s?__biz=Mzk0MjY1ODE5Mg==&mid=2247485670&idx=1&sn=7a595bd8bfc79031d83b59a0bf2e9637", - "description": "高级版MySQL_Fake_Serve", - "author": "风铃Sec", - "category": "风铃Sec", - "pubDate": "2025-03-11T08:23:49" + "title": "【天穹】内核暗渡:Linux Copy Fail 漏洞 CVE-2026-31431 利用分析", + "link": "https://mp.weixin.qq.com/s/c30OU3STwWdvcLF0cbeUzA", + "description": "01 概述近期,Linux 内核爆出高危本地提权漏洞 CVE-2026-31431(Copy Fail),影响", + "author": "奇安信技术研究院", + "category": "奇安信技术研究院", + "pubDate": "2026-05-11T16:57:11" } ] \ No newline at end of file diff --git a/resources/JSON/github_keyword.json b/resources/JSON/github_keyword.json index e5c4509..0e319cd 100644 --- a/resources/JSON/github_keyword.json +++ b/resources/JSON/github_keyword.json @@ -1,335 +1,1586 @@ [ { - "link": "https://github.com/wujun728/jun_api_service", - "name": "jun_api_service", - "created_at": "2021-07-01T14:43:39Z", - "description": "jun_api_service是一个基于我另外一个自定义的starter的动态API框架。项目本身使用技术有SpringBoot+字节码生成执行+动态脚本+动态SQL,可以实时动态生成RESTAPI并动态发布或者热加载。且发布后可动态执行java源码、groovy脚本及SQL脚本...", - "author": "wujun728", - "language": "JavaScript", - "keyword": "sql注入" + "link": "https://github.com/qilimary/Advanced-Chinese-chat-bot", + "name": "Advanced-Chinese-chat-bot", + "created_at": "2024-08-08T07:43:50Z", + "description": "自己手搓代码实现的聊天机器人,不使用第三方库。现已支持角色扮演 ,成语接龙, 计算,聊天, 记忆功能, 推理机制,学习机制等。闭源项目。请注意,本源码的版权归我所有,仅限于当前项目的开发使用,未经授权不得...", + "author": "qilimary", + "language": "Python", + "keyword": "未授权" }, { - "link": "https://github.com/ballcat-projects/ballcat", - "name": "ballcat", - "created_at": "2019-10-20T12:18:53Z", - "description": "😸一个快速开发脚手架,快速搭建企业级后台管理系统,并提供多种便捷starter进行功能扩展。主要功能包括前后台用户分离,菜单权限,数据权限,定时任务,访问日志,操作日志,异常日志,统一异常处理,XSS过滤,SQL防注...", - "author": "ballcat-projects", - "language": "Java", - "keyword": "sql注入" + "link": "https://github.com/alantang1977/iptv_api", + "name": "iptv_api", + "created_at": "2025-03-17T06:47:10Z", + "description": "🪅合法性提醒:使用的 IPTV 接口需符合《广播电视管理条例》等法律法规,避免爬取未经授权的版权内容,否则可能面临法律风险。AI通过抓取其它直播源集成一个总直播源,直播内容通过demo自定义进行运行爬取。每天自动更...", + "author": "alantang1977", + "language": "Python", + "keyword": "未授权" }, { - "link": "https://github.com/1024-lab/smart-admin", - "name": "smart-admin", - "created_at": "2019-11-16T02:30:31Z", - "description": "SmartAdmin国内首个以「高质量代码」为核心,「简洁、高效、安全」快速开发平台;基于SpringBoot2/3 + Sa-Token + Mybatis-Plus 和 Vue3 + Vite5 + Ant Design Vue 4.x (同时支持JavaScript和TypeScript双版本);满足国家三级等保要求、支持登录限制、接...", - "author": "1024-lab", - "language": "Java", - "keyword": "sql注入" + "link": "https://github.com/yexinyii/campus-api-docs", + "name": "campus-api-docs", + "created_at": "2026-05-05T09:18:33Z", + "description": "分为两大模块,api 是高校脱敏接口文档集合,lab 是基于这些接口复刻的校园系统安全靶场,内置未授权访问、水平 / 垂直越权、参数篡改等典型漏洞,支持 Docker 一键部署,是接口渗透测试与安全实训的实战平台。", + "author": "yexinyii", + "language": "Python", + "keyword": "未授权" }, { - "link": "https://github.com/JaveleyQAQ/SQL-Injection-Scout", - "name": "SQL-Injection-Scout", - "created_at": "2025-01-03T08:42:22Z", - "description": "SQL Injection Scout 是一个用于 Burp Suite 的扩展,专为帮助安全研究人员和开发人员检测和分析 SQL 注入漏洞而设计。该扩展提供了丰富的配置选项和直观的用户界面,便于用户自定义扫描和分析过程。", - "author": "JaveleyQAQ", + "link": "https://github.com/CONG1368/property-rental-system", + "name": "property-rental-system", + "created_at": "2026-05-14T11:16:31Z", + "description": "物业租赁综合管理系统 — Vue3+Express+Electron 全栈桌面应用。⚠ 未经版权人书面授权禁止商用,目前仅做个人研究用途。", + "author": "CONG1368", + "language": "TypeScript", + "keyword": "未授权" + }, + { + "link": "https://github.com/hello0matter/authorized-batch-validator", + "name": "authorized-batch-validator", + "created_at": "2026-05-15T13:03:20Z", + "description": "未授权的burp反链 服务器检测", + "author": "hello0matter", + "language": "Python", + "keyword": "未授权" + }, + { + "link": "https://github.com/Qiu-Sec/pentest-web-plugin", + "name": "pentest-web-plugin", + "created_at": "2026-04-30T07:03:56Z", + "description": "网站渗透测试 Skill — 目标识别、CDN/WAF检测、指纹架构、API发现、端口扫描、未授权与漏洞验证", + "author": "Qiu-Sec", "language": null, - "keyword": "sql注入" + "keyword": "未授权" }, { - "link": "https://github.com/henryxm/autumn", - "name": "autumn", - "created_at": "2018-10-08T12:12:12Z", - "description": "采用Spring、Spring Boot、Redis、MyBatis、Shiro、Druid框架开发,搭载mysql数据。 如果你厌烦了MyBatis中需要手动创建表的事情,这个项目非常适合你,自动为你生成表。 从此你不在需要导入sql文件了,项目初始化变得异常简单,结构清...", - "author": "henryxm", - "language": "JavaScript", - "keyword": "sql注入" + "link": "https://github.com/bneichen/zheshiyigesifuyuanma", + "name": "zheshiyigesifuyuanma", + "created_at": "2026-05-13T23:03:49Z", + "description": "禁止未授权私自取拿", + "author": "bneichen", + "language": null, + "keyword": "未授权" }, { - "link": "https://github.com/ProbiusOfficial/ssrf-labs", - "name": "ssrf-labs", - "created_at": "2025-02-17T16:28:50Z", - "description": "一个ssrf的综合靶场,包含RCE,SQL注入,Tomcat,Redis,MySQL提权等ssrf攻击场景", - "author": "ProbiusOfficial", - "language": "Shell", - "keyword": "sql注入" + "link": "https://github.com/lopleec/L0ck", + "name": "L0ck", + "created_at": "2026-05-08T04:57:31Z", + "description": "A security-first macOS encryption app that locks files into device-bound .l0ck containers using Keychain-backed keys, protected preview flows, and system-level safeguards against unauthorized deletion or movement.一款以安全为核心的 macOS 加密应用,使用钥匙串支持的密钥将文...", + "author": "lopleec", + "language": "Swift", + "keyword": "未授权" }, { - "link": "https://github.com/suqianjue/sqlmap_gui", - "name": "sqlmap_gui", - "created_at": "2025-02-18T08:52:30Z", - "description": "sqlmap_gui是一款图形界面化的 SQL 注入漏洞测试工具", - "author": "suqianjue", + "link": "https://github.com/iammm0/secbot", + "name": "secbot", + "created_at": "2025-12-29T02:34:33Z", + "description": "⚠️ 本工具仅用于授权的安全测试。未经授权使用本工具进行网络攻击是违法的。一个智能化的自动化渗透测试机器人,具备AI驱动的安全测试能力。", + "author": "iammm0", + "language": "TypeScript", + "keyword": "未授权" + }, + { + "link": "https://github.com/willsafe/Unauth-Vuln-Scanner", + "name": "Unauth-Vuln-Scanner", + "created_at": "2026-04-10T07:37:11Z", + "description": "jar包版-未授权漏洞检测工具", + "author": "willsafe", "language": "Java", - "keyword": "sql注入" + "keyword": "未授权" }, { - "link": "https://github.com/Aki-1038/MySQL", - "name": "MySQL", - "created_at": "2025-03-03T01:22:07Z", - "description": "這個頁面展示了 MySQL 的基本功能,包括 QUERY、INSERT、UPDATE 和 DELETE 等 SQL 操作。 請在下方輸入 SQL 查詢,然後點擊「執行」按鈕,查看結果。 注意:這個頁面僅供測試使用,請勿在正式環境中使用。", - "author": "Aki-1038", + "link": "https://github.com/tangkaixing/web-login-js-burp-audit", + "name": "web-login-js-burp-audit", + "created_at": "2026-05-11T09:55:32Z", + "description": "当用户提供 Web URL、登录页、H5/前端静态包、本地前端目录或备份包地址,并要求使用 Burp 访问分析、落地前端 JS、审计敏感信息/接口、做最小化验证并在当前工作目录输出 Markdown 报告时使用。重点适用于登录框渗透测试、前...", + "author": "tangkaixing", + "language": null, + "keyword": "未授权" + }, + { + "link": "https://github.com/lexxgpt/chatgpt-plus-tutorial", + "name": "chatgpt-plus-tutorial", + "created_at": "2025-12-07T09:18:05Z", + "description": "2026年国内如何安全订阅ChatGPT Plus?本终极指南深度剖析了五种主流支付路径:从最便捷的官方授权代充,到海外虚拟信用卡(VCC)和苹果礼品卡的DIY方案。我们提供详尽的优劣对比与安全操作指引,助您选择最适合的方案,轻...", + "author": "lexxgpt", + "language": null, + "keyword": "未授权" + }, + { + "link": "https://github.com/mhtsec/Docker-Registry-exp", + "name": "Docker-Registry-exp", + "created_at": "2025-11-06T09:14:40Z", + "description": "一款功能强大的Docker Registry 5000端口未授权浏览、下载和安全测试工具,集成了镜像管理、认证爆破、敏感信息搜索等多项实用功能。", + "author": "mhtsec", + "language": null, + "keyword": "未授权" + }, + { + "link": "https://github.com/AngrySpongebob/RedisUnauthScanner", + "name": "RedisUnauthScanner", + "created_at": "2026-04-20T05:30:20Z", + "description": "可视化redis未授权漏洞扫描", + "author": "AngrySpongebob", + "language": "Python", + "keyword": "未授权" + }, + { + "link": "https://github.com/Ad1euDa1e/VueCrack", + "name": "VueCrack", + "created_at": "2025-08-15T03:00:45Z", + "description": "红队浏览器插件-检测VUE站点未授权漏洞", + "author": "Ad1euDa1e", + "language": "JavaScript", + "keyword": "未授权" + }, + { + "link": "https://github.com/sunrui007/CryptoVault", + "name": "CryptoVault", + "created_at": "2026-05-06T10:18:27Z", + "description": "密域安全管理系统 (CryptoVault) 是一款致力于提供安全、可靠的加密存储与文件管理的桌面端应用。系统旨在确保用户的核心数据免受未经授权的访问与泄露,为个人与企业提供金融级的本地数据防护。", + "author": "sunrui007", + "language": null, + "keyword": "未授权" + }, + { + "link": "https://github.com/bcghjhgfdgsfj/MTX-BROWERS", + "name": "MTX-BROWERS", + "created_at": "2026-04-30T08:33:28Z", + "description": "MTX 纯无痕浏览器是一款基于 Electron 开发的轻量浏览器,主打简洁、稳定与隐私保护,兼顾日常浏览与轻量化使用需求。项目注重界面简洁易用、启动快速、占用资源低,同时支持基础网页浏览、隐私模式与自定义设置,拒绝多...", + "author": "bcghjhgfdgsfj", "language": "HTML", - "keyword": "sql注入" + "keyword": "未授权" }, { - "link": "https://github.com/saoshao/DetSql", - "name": "DetSql", - "created_at": "2024-09-03T14:58:23Z", - "description": "Burp插件,快速探测可能存在SQL注入的请求并标记,提高测试效率", - "author": "saoshao", - "language": "Java", - "keyword": "sql注入" + "link": "https://github.com/Lee110110/agent-authorization-tiering", + "name": "agent-authorization-tiering", + "created_at": "2026-04-29T06:05:07Z", + "description": "AAT(Agent Authorization Tiering)基于 Harness Engineering 定义了一套多维度、多层级的 Agent 授权框架。其核心原则是:> **Scaffold 信任 Agent;Harness 验证 Agent。**Scaffold 让 Agent 做事,Harness 在 Agent 做事之前验证。每个 Agent 的行为意图必须...", + "author": "Lee110110", + "language": "Python", + "keyword": "未授权" }, { - "link": "https://github.com/toolgood/ToolGood.SQLFirewall", - "name": "ToolGood.SQLFirewall", - "created_at": "2024-06-21T06:31:42Z", - "description": "SQL Firewall, Prevent SQL injection, 防sql注入", - "author": "toolgood", - "language": "C#", - "keyword": "sql注入" + "link": "https://github.com/WileHunter/See-See-Oss", + "name": "See-See-Oss", + "created_at": "2026-04-28T08:09:05Z", + "description": "一个现代化的 OSS(对象存储服务)文件浏览器,GUI可视化查看存储桶,查看存在未授权访问,公开存储桶,支持阿里云 OSS、腾讯云 COS 等兼容 S3 协议的对象存储服务。", + "author": "WileHunter", + "language": "Python", + "keyword": "未授权" }, { - "link": "https://github.com/gege-circle/.github", - "name": ".github", - "created_at": "2020-09-20T04:47:25Z", - "description": "这里是GitHub的草场,也是戈戈圈爱好者的交流地,主要讨论动漫、游戏、科技、人文、生活等所有话题,欢迎各位小伙伴们在此讨论趣事。This is GitHub grassland, and the community place for Gege circle lovers, mainly discusses anime, games, technology,...", - "author": "gege-circle", - "language": null, - "keyword": "sql注入" + "link": "https://github.com/YFGaia/dify-plus", + "name": "dify-plus", + "created_at": "2024-12-09T11:53:32Z", + "description": "Dify-Plus 是 Dify 的企业级增强版,集成了基于 gin-vue-admin 的管理中心,并针对企业场景进行了功能优化。 🚀 Dify-Plus = 管理中心 + Dify 二开 。 特别说明: 本项目为开源社区的二次开发成果,严格遵循 Dify 原项目的版权许可协议...", + "author": "YFGaia", + "language": "TypeScript", + "keyword": "未授权" }, { - "link": "https://github.com/yuqingfang2004/AriaDB-for-SDCs-", - "name": "AriaDB-for-SDCs-", - "created_at": "2024-12-11T08:17:34Z", - "description": "本仓库来自确定性执行数据库AriaDB,在此基础上进行修改,实现了SDC注入(SQL层面)", - "author": "yuqingfang2004", + "link": "https://github.com/conr2286/PocketFT8Xcvr", + "name": "PocketFT8Xcvr", + "created_at": "2024-07-31T16:41:39Z", + "description": "Pocket FT8 Revisited", + "author": "conr2286", "language": "C++", - "keyword": "sql注入" + "keyword": "POC" }, { - "link": "https://github.com/steveopen1/ruoyi_vulnscan", - "name": "ruoyi_vulnscan", - "created_at": "2025-02-23T07:15:22Z", - "description": "ruuoyi_vulnscan 是一款基于 Python 和 Tkinter 开发的图形化界面工具,用于检测若依 Vue 框架应用程序中的常见漏洞。该工具提供了多种漏洞检测模块,包括 Swagger 检测、Druid 检测、文件下载漏洞检测、SQL 注入检测、定时任务漏洞检...", - "author": "steveopen1", - "language": "Python", - "keyword": "sql注入" - }, - { - "link": "https://github.com/LtmThink/SQLRecorder", - "name": "SQLRecorder", - "created_at": "2025-02-13T12:20:51Z", - "description": "SQLRecorder是一个能够实时记录SQL语句的工具,方便代码审计时对SQL注入的实时关注。(A proxy to record all passing SQL statements.)", - "author": "LtmThink", - "language": "Go", - "keyword": "sql注入" - }, - { - "link": "https://github.com/DDL08/directory", - "name": "directory", - "created_at": "2025-02-10T05:44:39Z", - "description": "sql注入或rce或者其他的爆破字典,模糊测试fuzz字典", - "author": "DDL08", + "link": "https://github.com/lzbgt/ksql-poc", + "name": "ksql-poc", + "created_at": "2022-06-27T15:24:54Z", + "description": "Kafka and ksqlDB proof of concept with paid pipeline review links.", + "author": "lzbgt", "language": null, - "keyword": "sql注入" + "keyword": "POC" }, { - "link": "https://github.com/peiqiF4ck/WebFrameworkTools-5.1-main", - "name": "WebFrameworkTools-5.1-main", - "created_at": "2023-01-08T05:21:26Z", - "description": "本软件首先集成危害性较大框架和部分主流cms的rce(无需登录,或者登录绕过执行rce)和反序列化(利用链简单)。傻瓜式导入url即可实现批量getshell。批量自动化测试。例如:Thinkphp,Struts2,weblogic。出现的最新漏洞进行实时跟踪并且更...", - "author": "peiqiF4ck", - "language": "C#", - "keyword": "sql注入" + "link": "https://github.com/cappymayor/dbt-poc", + "name": "dbt-poc", + "created_at": "2026-04-12T20:47:49Z", + "description": null, + "author": "cappymayor", + "language": null, + "keyword": "POC" }, { - "link": "https://github.com/xiangyuecn/AreaCity-JsSpider-StatsGov", - "name": "AreaCity-JsSpider-StatsGov", - "created_at": "2018-11-28T05:11:35Z", - "description": "省市区县乡镇三级或四级城市数据,带拼音标注、坐标、行政区域边界范围;2025年01月14日最新采集,提供csv格式文件,支持在线转成多级联动js代码、通用json格式,提供软件转成shp、geojson、sql、导入数据库;带浏览器里面运...", - "author": "xiangyuecn", + "link": "https://github.com/VTMETI/TurboNodeIO", + "name": "TurboNodeIO", + "created_at": "2019-12-11T14:09:29Z", + "description": "🚀 Boost Node.js performance with native C++ for File I/O and SIMD tasks, demonstrating significant speed increases over standard JavaScript implementations.", + "author": "VTMETI", + "language": "TypeScript", + "keyword": "POC" + }, + { + "link": "https://github.com/KirstenAli/PocketLM", + "name": "PocketLM", + "created_at": "2026-04-27T20:54:16Z", + "description": null, + "author": "KirstenAli", + "language": "Python", + "keyword": "POC" + }, + { + "link": "https://github.com/dheerajbr46/pocket-budget", + "name": "pocket-budget", + "created_at": "2026-05-17T04:18:40Z", + "description": null, + "author": "dheerajbr46", "language": "JavaScript", - "keyword": "sql注入" + "keyword": "POC" }, { - "link": "https://github.com/PstarSec/AI-Ollama", - "name": "AI-Ollama", - "created_at": "2025-03-07T04:46:28Z", - "description": "Ollama 未授权访问【CNVD-2025-04094】验证脚本", - "author": "PstarSec", - "language": "Python", - "keyword": "cnvd" + "link": "https://github.com/ProgrammerRayyan/auth-cn", + "name": "auth-cn", + "created_at": "2025-12-13T17:33:18Z", + "description": "🔐 Build authentication UI components easily with Auth CN, designed for Better Auth and fully customizable for your project's needs.", + "author": "ProgrammerRayyan", + "language": "TypeScript", + "keyword": "POC" }, { - "link": "https://github.com/KzNight/CNVD-2025-04094-ollama_unauth", - "name": "CNVD-2025-04094-ollama_unauth", - "created_at": "2025-03-04T07:06:13Z", - "description": "国家信息安全漏洞共享平台(CNVD)收录了Ollama未授权访问漏洞(CNVD-2025-04094)。未经授权的攻击者可以远程访问Ollama服务接口执行敏感资产获取、虚假信息投喂、拒绝服务等恶意操作", - "author": "KzNight", - "language": "Python", - "keyword": "cnvd" + "link": "https://github.com/tenalirama2005/cybergym-agentx-v2", + "name": "cybergym-agentx-v2", + "created_at": "2026-05-10T16:49:19Z", + "description": "CyberGym purple agent v2 — Rust/Axum A2A server with GPT-5.5 Azure iterative PoC generation. Full feedback loop: workspace unpacking, 5 test_vulnerable iterations, crash-confirmed artifact submission. Berkeley RDI AgentBeats Sprint 3.", + "author": "tenalirama2005", + "language": "Rust", + "keyword": "POC" }, { - "link": "https://github.com/jmtruffa/cnvDownloader", - "name": "cnvDownloader", - "created_at": "2024-08-13T12:57:34Z", - "description": "Downloader de data de CAFCI y parser de mails de FIMA", - "author": "jmtruffa", - "language": "Python", - "keyword": "cnvd" + "link": "https://github.com/TheClaverOne/Pocket_PSU", + "name": "Pocket_PSU", + "created_at": "2021-03-14T14:52:51Z", + "description": "🔋 Build a mini PSU that fits in your pocket, delivering adjustable voltage and current with safe charging and protection from any USB-C source.", + "author": "TheClaverOne", + "language": "HTML", + "keyword": "POC" }, { - "link": "https://github.com/Ellison-zhang/cnvd_spider", - "name": "cnvd_spider", - "created_at": "2025-02-12T05:59:31Z", - "description": null, - "author": "Ellison-zhang", - "language": "Python", - "keyword": "cnvd" + "link": "https://github.com/bigant27/deepl-translation-poc", + "name": "deepl-translation-poc", + "created_at": "2025-12-14T10:25:05Z", + "description": "🌍 Translate text quickly with DeepL's API in this proof-of-concept tool, featuring real-time results and support for 26 languages.", + "author": "bigant27", + "language": "JavaScript", + "keyword": "POC" }, { - "link": "https://github.com/phtcloud-dev/CVE-2024-36837", - "name": "CVE-2024-36837", - "created_at": "2024-06-15T16:44:51Z", - "description": "CVE-2024-36837 | CNVD-2024-30128 POC", - "author": "phtcloud-dev", - "language": "Python", - "keyword": "cnvd" + "link": "https://github.com/Tyler-R-Kendrick/agent_harness", + "name": "agent_harness", + "created_at": "2026-04-08T15:03:25Z", + "description": "A collection of different agent harness UX POCs to experiment with.", + "author": "Tyler-R-Kendrick", + "language": "TypeScript", + "keyword": "POC" }, { - "link": "https://github.com/phtcloud-dev/CVE-2024-39199", - "name": "CVE-2024-39199", - "created_at": "2024-06-18T16:36:12Z", - "description": "CVE-2024-39119 | CNVD-2024-31551 POC", - "author": "phtcloud-dev", - "language": "Python", - "keyword": "cnvd" - }, - { - "link": "https://github.com/shagongz/CNVD_Crawler", - "name": "CNVD_Crawler", - "created_at": "2025-02-05T07:28:32Z", - "description": "CNVD的简单爬虫", - "author": "shagongz", + "link": "https://github.com/user123-cry/Rynex", + "name": "Rynex", + "created_at": "2025-12-11T05:37:46Z", + "description": "🔍 Scan and exploit vulnerabilities effectively with Rynex, a Rust-based framework featuring a TOML-based PoC DSL for streamlined security testing.", + "author": "user123-cry", "language": null, - "keyword": "cnvd" + "keyword": "POC" }, { - "link": "https://github.com/liuguolong139/CNVD-2024-33023", - "name": "CNVD-2024-33023", - "created_at": "2025-01-16T04:46:44Z", - "description": "CNVD-2024-33023 Python poc", - "author": "liuguolong139", - "language": "Python", - "keyword": "cnvd" + "link": "https://github.com/Sneaky-Pablo/AI-Powered-Legacy-Protection-POC", + "name": "AI-Powered-Legacy-Protection-POC", + "created_at": "2025-12-10T23:42:45Z", + "description": "🛡️ Empower families with AI-driven legacy planning and legal guidance for Spanish speakers, ensuring accessibility and personalized support worldwide.", + "author": "Sneaky-Pablo", + "language": "TypeScript", + "keyword": "POC" }, { - "link": "https://github.com/j8agent/CNVD-2024-15077--AJ-Report-RCE--", - "name": "CNVD-2024-15077--AJ-Report-RCE--", - "created_at": "2024-12-21T08:26:43Z", - "description": "CNVD-2024-15077 AJ-Report 中swagger-ui的RCE漏洞", - "author": "j8agent", - "language": "Python", - "keyword": "cnvd" + "link": "https://github.com/rock3r/magic-jewel", + "name": "magic-jewel", + "created_at": "2026-05-02T11:13:35Z", + "description": "Private Magic Jewel JBR Skia Compose zero-copy PoC mirror", + "author": "rock3r", + "language": "Shell", + "keyword": "POC" }, { - "link": "https://github.com/must-bioinfo/fastCNVdata", - "name": "fastCNVdata", - "created_at": "2024-07-17T14:38:38Z", - "description": "Datasets to run the vignettes of the R package fastCNV", - "author": "must-bioinfo", - "language": "R", - "keyword": "cnvd" - }, - { - "link": "https://github.com/XiaomingX/CNVD-2020-10487-Tomcat-Ajp-lfi", - "name": "CNVD-2020-10487-Tomcat-Ajp-lfi", - "created_at": "2024-12-08T04:14:03Z", - "description": "Tomcat-Ajp协议文件读取漏洞", - "author": "XiaomingX", - "language": "Python", - "keyword": "cnvd" - }, - { - "link": "https://github.com/lizhianyuguangming/TomcatScanPro", - "name": "TomcatScanPro", - "created_at": "2024-08-29T06:38:16Z", - "description": "tomcat自动化漏洞扫描利用工具,支持批量弱口令检测、后台部署war包getshell、CVE-2017-12615 文件上传、CVE-2020-1938/CNVD-2020-10487 文件包含", - "author": "lizhianyuguangming", - "language": "Python", - "keyword": "cnvd" - }, - { - "link": "https://github.com/GoesM/ROS-CVE-CNVDs", - "name": "ROS-CVE-CNVDs", - "created_at": "2024-11-04T07:55:51Z", - "description": "record and public CVE/CNVD IDs discovered by my works", - "author": "GoesM", - "language": null, - "keyword": "cnvd" - }, - { - "link": "https://github.com/xiadaogit/CNVD-", - "name": "CNVD-", - "created_at": "2024-10-30T07:13:00Z", - "description": "CNVD挖的多了", - "author": "xiadaogit", - "language": null, - "keyword": "cnvd" - }, - { - "link": "https://github.com/sxq2003/CNVD-2022-10270", - "name": "CNVD-2022-10270", - "created_at": "2024-10-21T08:01:28Z", - "description": null, - "author": "sxq2003", - "language": "Python", - "keyword": "cnvd" - }, - { - "link": "https://github.com/leonooo13/CNVD-2020-10487-Tomcat-Ajp-lfi", - "name": "CNVD-2020-10487-Tomcat-Ajp-lfi", - "created_at": "2024-09-27T17:05:09Z", - "description": null, - "author": "leonooo13", - "language": "Python", - "keyword": "cnvd" - }, - { - "link": "https://github.com/Bin4xin/bigger-than-bigger", - "name": "bigger-than-bigger", - "created_at": "2021-04-16T01:33:26Z", - "description": "Expolit Lists. 相关集合💥💥💥 ;) 用友NC反序列化/ CTF/ Java Deserialization/Shiro Vulns/ CNVD or CVE Vulns/ Log4j2/ Hikvision-decrypter...✨✨✨", - "author": "Bin4xin", + "link": "https://github.com/rock3r/JetBrainsRuntime", + "name": "JetBrainsRuntime", + "created_at": "2026-05-02T11:13:35Z", + "description": "Private JBR Skia Compose zero-copy PoC mirror", + "author": "rock3r", "language": "Java", - "keyword": "cnvd" + "keyword": "POC" }, { - "link": "https://github.com/OceanSec/cnvdtools", - "name": "cnvdtools", - "created_at": "2024-09-11T02:50:32Z", - "description": "通过fofa批量查询通用系统,配合去刷cnvd证书", - "author": "OceanSec", - "language": "Python", - "keyword": "cnvd" + "link": "https://github.com/jeeteshmeena/pocket-arya-store-091da6c5", + "name": "pocket-arya-store-091da6c5", + "created_at": "2026-05-05T02:34:16Z", + "description": null, + "author": "jeeteshmeena", + "language": "TypeScript", + "keyword": "POC" }, { - "link": "https://github.com/kingqaquuu/CNVDspider", - "name": "CNVDspider", - "created_at": "2024-08-06T10:16:12Z", - "description": "爬取CNVD共享漏洞文件", - "author": "kingqaquuu", - "language": "Python", - "keyword": "cnvd" + "link": "https://github.com/ankerek/trip-pocket", + "name": "trip-pocket", + "created_at": "2026-05-04T18:04:02Z", + "description": null, + "author": "ankerek", + "language": "TypeScript", + "keyword": "POC" }, { - "link": "https://github.com/youxox/SeeYouOA-POC", - "name": "SeeYouOA-POC", - "created_at": "2024-05-12T11:45:28Z", - "description": "致远OA ajax.do 任意文件上传漏洞检测 CNVD-2021-01627 ", - "author": "youxox", + "link": "https://github.com/pu105-stack/corpid-poc", + "name": "corpid-poc", + "created_at": "2026-05-13T12:51:06Z", + "description": "HK Corp ID POC", + "author": "pu105-stack", + "language": "JavaScript", + "keyword": "POC" + }, + { + "link": "https://github.com/RongchangLi/pocketskill", + "name": "pocketskill", + "created_at": "2026-05-17T14:02:59Z", + "description": "Manage portable agent skills across Claude Code, Codex, and general agents", + "author": "RongchangLi", + "language": "Shell", + "keyword": "POC" + }, + { + "link": "https://github.com/mdresch/adpa", + "name": "adpa", + "created_at": "2025-07-20T12:55:11Z", + "description": "Advanced Data Processing Automation (PoC)", + "author": "mdresch", + "language": "TypeScript", + "keyword": "POC" + }, + { + "link": "https://github.com/xdimondfan23/int3rceptor", + "name": "int3rceptor", + "created_at": "2025-12-14T22:06:44Z", + "description": "🚀 Enhance your applications with int3rceptor, a robust interceptor library for seamless data handling in Rust and Vue.", + "author": "xdimondfan23", + "language": "Rust", + "keyword": "RCE" + }, + { + "link": "https://github.com/martinaparched251/Wordpress-BRUTE-FORCE-UPLOAD-SHELL", + "name": "Wordpress-BRUTE-FORCE-UPLOAD-SHELL", + "created_at": "2025-11-29T19:38:57Z", + "description": "🔍 Scan and exploit WordPress vulnerabilities effortlessly with this advanced tool for shell uploads and comprehensive security assessment.", + "author": "martinaparched251", "language": "Python", - "keyword": "cnvd" + "keyword": "RCE" + }, + { + "link": "https://github.com/Trimamkash/SqlKnife", + "name": "SqlKnife", + "created_at": "2025-12-06T10:46:53Z", + "description": "Command-line post-exploitation toolkit for Microsoft SQL Server — enabling RCE, privilege escalation, persistence, and defense evasion via T-SQL.", + "author": "Trimamkash", + "language": "C++", + "keyword": "RCE" + }, + { + "link": "https://github.com/Katirinata/CMD-Exploit-CVE-2024-RCE-AboRady-FUD-25765-Injection", + "name": "CMD-Exploit-CVE-2024-RCE-AboRady-FUD-25765-Injection", + "created_at": "2025-10-21T19:42:27Z", + "description": "Exploit development uses tools like exploitation frameworks and CVE databases. Cmd exploits, such as cmd fud or cmd exploit, enable silent execution while avoiding detection through proper setups.", + "author": "Katirinata", + "language": "Visual Basic .NET", + "keyword": "RCE" + }, + { + "link": "https://github.com/carolinavigil/prickly", + "name": "prickly", + "created_at": "2025-05-16T16:20:42Z", + "description": "🌵 Build and manage efficient, scalable workflows with Prickly, designed to simplify your project tracking and enhance team collaboration.", + "author": "carolinavigil", + "language": "Solidity", + "keyword": "RCE" + }, + { + "link": "https://github.com/ananyevgv/esphome-ekf", + "name": "esphome-ekf", + "created_at": "2026-05-12T05:57:21Z", + "description": "ESPHome EKF Connect RCE-1-WF, EKF Connect RCE-2-WF. Tuya_MB60L.", + "author": "ananyevgv", + "language": null, + "keyword": "RCE" + }, + { + "link": "https://github.com/Aditya43621/lab-cve-2016-15042", + "name": "lab-cve-2016-15042", + "created_at": "2023-10-23T05:54:10Z", + "description": "🛠️ Validate and demonstrate CVE-2016-15042 with a Dockerized lab for unauthenticated file uploads in WordPress file managers.", + "author": "Aditya43621", + "language": "JavaScript", + "keyword": "RCE" + }, + { + "link": "https://github.com/Riocipta75/lab-cve-2020-0610", + "name": "lab-cve-2020-0610", + "created_at": "2025-09-04T13:21:35Z", + "description": "🔍 Create a safe lab environment for testing CVE-2020-0610, a critical RCE vulnerability in Windows RD Gateway, with minimal disruption using DTLS techniques.", + "author": "Riocipta75", + "language": "PowerShell", + "keyword": "RCE" + }, + { + "link": "https://github.com/jm7knz/CVE-2025-54253-Exploit-Demo", + "name": "CVE-2025-54253-Exploit-Demo", + "created_at": "2025-08-17T22:04:33Z", + "description": "🐙 CVE-2025-54253 exploit demo for Adobe AEM Forms on JEE: OGNL injection to RCE with PoC, Python 3.10 exploit code, reproducer and mitigation guidance.", + "author": "jm7knz", + "language": "Python", + "keyword": "RCE" + }, + { + "link": "https://github.com/hophtien/CVE-2025-54424", + "name": "CVE-2025-54424", + "created_at": "2025-08-14T05:16:16Z", + "description": "CVE-2025-54424: 1Panel TLS client cert bypass enables RCE via forged CN 'panel_client' using a bundled scanning and exploitation tool. Affected: <= v2.0.5. 🔐", + "author": "hophtien", + "language": "Python", + "keyword": "RCE" + }, + { + "link": "https://github.com/Mxzinedits/php-in-jpg", + "name": "php-in-jpg", + "created_at": "2025-04-11T14:20:26Z", + "description": "php-in-jpg is a simple yet flexible tool that generates .jpg image files embedding PHP payloads, designed to support PHP RCE polyglot techniques.", + "author": "Mxzinedits", + "language": "Python", + "keyword": "RCE" + }, + { + "link": "https://github.com/queankeji/1daynews", + "name": "1daynews", + "created_at": "2026-05-15T18:24:58Z", + "description": "聚合多源 0day/1day RCE 漏洞情报,关键词过滤后推 Telegram + Web 仪表盘", + "author": "queankeji", + "language": "Python", + "keyword": "RCE" + }, + { + "link": "https://github.com/murrez/CVE-2026-6433", + "name": "CVE-2026-6433", + "created_at": "2026-05-16T09:29:58Z", + "description": "PoC for CVE-2026-6433: WordPress FlipperCode Custom CSS, JS & PHP (≤2.0.7) — unauthenticated SQLi to RCE. Python 3 stdlib; single target or bulk multi-threaded scanning. Authorized testing & research only.", + "author": "murrez", + "language": "Python", + "keyword": "RCE" + }, + { + "link": "https://github.com/arturosoplopucom-dot/sire-comprobantes-xml", + "name": "sire-comprobantes-xml", + "created_at": "2026-05-13T05:36:36Z", + "description": "Comprobantes XML SIRE RCE - RIBERA DEL RIO CLUB RESORT S.A.", + "author": "arturosoplopucom-dot", + "language": null, + "keyword": "RCE" + }, + { + "link": "https://github.com/Marathe-2/catchclaw", + "name": "catchclaw", + "created_at": "2024-07-03T14:10:57Z", + "description": "Provide multi-platform AI agent security assessment with 78 exploit modules, ATT&CK mapping, and attack graph visualization.", + "author": "Marathe-2", + "language": null, + "keyword": "RCE" + }, + { + "link": "https://github.com/corey-farley/CVE-2025-59528-Flowise-RCE", + "name": "CVE-2025-59528-Flowise-RCE", + "created_at": "2026-05-17T13:30:41Z", + "description": "Authenticated RCE PoC for Flowise version <= 3.0.5 via CustomMCP Node (CVE-2025-59528)", + "author": "corey-farley", + "language": "Python", + "keyword": "RCE" + }, + { + "link": "https://github.com/showy-headteacher114/cve-2025-66398", + "name": "cve-2025-66398", + "created_at": "2026-03-23T09:09:21Z", + "description": "Demonstrate exploitation of Signal K Server CVE-2025-66398 allowing unauthenticated attackers to inject backdoor and enable remote code execution.", + "author": "showy-headteacher114", + "language": "Go", + "keyword": "RCE" + }, + { + "link": "https://github.com/DyniePro/CVE-2026-25643", + "name": "CVE-2026-25643", + "created_at": "2026-03-07T20:23:08Z", + "description": "Exploit Frigate NVR ≤0.16.3 to execute commands remotely by abusing a configuration flaw without needing shell access or output capture.", + "author": "DyniePro", + "language": "Python", + "keyword": "RCE" + }, + { + "link": "https://github.com/tianarsamm/CVE-2025-69985", + "name": "CVE-2025-69985", + "created_at": "2025-04-10T09:18:30Z", + "description": "Exploit CVE-2025-69985 to bypass authentication and execute remote commands on FUXA versions ≤ 1.2.8 via the /api/runscript endpoint.", + "author": "tianarsamm", + "language": "Python", + "keyword": "RCE" + }, + { + "link": "https://github.com/jokierpro/Top-Conference-Best-Papers", + "name": "Top-Conference-Best-Papers", + "created_at": "2026-02-21T08:36:27Z", + "description": "🏆 Discover top ML/NLP research by exploring Best Paper winners from major venues (2022-2026) to enhance your understanding of high-impact work.", + "author": "jokierpro", + "language": null, + "keyword": "RCE" + }, + { + "link": "https://github.com/Srte-7719/rpc_project", + "name": "rpc_project", + "created_at": "2026-05-14T07:34:17Z", + "description": "一个基于 C++11 和 muduo 网络库从零实现的 JSON-RPC 框架,支持自定义 LV 通信协议、JSON 序列化 / 反序列化、完整请求 - 响应流程与连接管理", + "author": "Srte-7719", + "language": "C++", + "keyword": "反序列化" + }, + { + "link": "https://github.com/pioneer118/RPC-YOLO", + "name": "RPC-YOLO", + "created_at": "2026-05-17T06:04:37Z", + "description": "本项目设计了一套基于 C++ 分布式 RPC 框架的 YOLO 目标检测系统,支持多客户端上传检测图片,服务端完成实时目标检测并返回检测结果。项目以 Muduo 网络库的 Reactor 模型为基础搭建高并发 RPC 通信框架,通过自定义消息协议解...", + "author": "pioneer118", + "language": null, + "keyword": "反序列化" + }, + { + "link": "https://github.com/pioneer118/WebServer", + "name": "WebServer", + "created_at": "2026-05-17T05:57:46Z", + "description": "本项目设计了一套基于 C++ 分布式 RPC 框架的 YOLO 目标检测系统,支持多客户端上传检测图片,服务端完成实时目标检测并返回检测结果。项目以 Muduo 网络库的 Reactor 模型为基础搭建高并发 RPC 通信框架,通过自定义消息协议解...", + "author": "pioneer118", + "language": "C++", + "keyword": "反序列化" + }, + { + "link": "https://github.com/SummerSec/ShiroAttack2", + "name": "ShiroAttack2", + "created_at": "2021-06-13T03:44:13Z", + "description": "shiro反序列化漏洞综合利用,包含(回显执行命令/注入内存马)修复原版中NoCC的问题 https://github.com/j1anFen/shiro_attack", + "author": "SummerSec", + "language": "Java", + "keyword": "反序列化" + }, + { + "link": "https://github.com/0Pursuer/CADExchange", + "name": "CADExchange", + "created_at": "2025-12-04T09:10:43Z", + "description": "这是一个用于交换的CAD格式及其序列化和反序列化项目", + "author": "0Pursuer", + "language": "C++", + "keyword": "反序列化" + }, + { + "link": "https://github.com/letquit/Unity-Serializable-Type", + "name": "Unity-Serializable-Type", + "created_at": "2026-05-15T03:53:21Z", + "description": "使用反射在 Unity 编辑器中序列化类型 git-amend", + "author": "letquit", + "language": "C#", + "keyword": "反序列化" + }, + { + "link": "https://github.com/openharmony/third_party_rust_serde", + "name": "third_party_rust_serde", + "created_at": "2024-10-28T16:56:47Z", + "description": "Serde 是一个 高效和通用的序列化和反序列化Rust数据结构的框架。", + "author": "openharmony", + "language": "Rust", + "keyword": "反序列化" + }, + { + "link": "https://github.com/ca5ll41ng/java-", + "name": "java-", + "created_at": "2026-05-09T02:51:14Z", + "description": "java反序列化学习的一些小项目", + "author": "ca5ll41ng", + "language": null, + "keyword": "反序列化" + }, + { + "link": "https://github.com/Cathyqiii/GenDataCode", + "name": "GenDataCode", + "created_at": "2026-05-08T03:32:50Z", + "description": "GenDataCode是面向多元时间序列数据生成的开源工程化代码库,聚焦小样本、稀缺工况下的时序数据增强需求,内置实现了TimeGAN、TimeVAE等经典时序生成模型,并创新融合扩散模型与Mamba架构提出CTD-Mamba-Diff高效生成方法;库中集成...", + "author": "Cathyqiii", + "language": "Python", + "keyword": "反序列化" + }, + { + "link": "https://github.com/wr0ld/YsoGUI", + "name": "YsoGUI", + "created_at": "2026-05-05T03:23:23Z", + "description": "基于 Y4er/ysoserial 与 marshalsec 的 Java 反序列化利用 GUI 工具,集成 Payload 生成、JNDI Reference、LDAP 反序列化与调用图编辑。", + "author": "wr0ld", + "language": "Java", + "keyword": "反序列化" + }, + { + "link": "https://github.com/hentai777ok/JavaGadgetChainTest", + "name": "JavaGadgetChainTest", + "created_at": "2026-05-05T06:33:29Z", + "description": "学习Java反序列化漏洞链的Demo", + "author": "hentai777ok", + "language": "Java", + "keyword": "反序列化" + }, + { + "link": "https://github.com/xvorin/serdes", + "name": "serdes", + "created_at": "2025-09-17T10:04:04Z", + "description": "C++数据序列化与反序列化", + "author": "xvorin", + "language": "C++", + "keyword": "反序列化" + }, + { + "link": "https://github.com/yuweiliang088/spider", + "name": "spider", + "created_at": "2026-04-29T15:15:21Z", + "description": "一个基于强化学习与 LLM 的反反爬决策 Agent,专门解决传统硬编码策略在遇到 Cloudflare、Akamai 等复杂防护栈时完全失效的问题。该 Agent 将“成功获取目标数据”定义为最终目标,把代理选择、请求头组合、TLS 指纹、JavaScript 渲...", + "author": "yuweiliang088", + "language": null, + "keyword": "反序列化" + }, + { + "link": "https://github.com/ljrrrr0108/web-code", + "name": "web-code", + "created_at": "2026-04-29T05:44:27Z", + "description": "我构建了一个基于多 Agent 协作的小米智能家居意图理解与自动化系统。核心痛点:现有智能家居控制依赖用户逐设备精确操作,缺乏对模糊意图的深层理解能力,导致\"我要睡了\"这类自然指令无法被正确拆解执行。 系统架构包...", + "author": "ljrrrr0108", + "language": "JavaScript", + "keyword": "反序列化" + }, + { + "link": "https://github.com/nk7667/java-deserialization-lab", + "name": "java-deserialization-lab", + "created_at": "2026-03-30T09:24:39Z", + "description": "java反序列化漏洞本地调试代码(fastjson / log4j2 / JNDI 靶场)", + "author": "nk7667", + "language": "Java", + "keyword": "反序列化" + }, + { + "link": "https://github.com/linszjava/clipflow", + "name": "clipflow", + "created_at": "2026-02-18T19:30:55Z", + "description": "ClipFlow是一款面向高频信息收集与复用场景的桌面效率工具。它把“剪贴板历史 + 结构化片段管理 + 使用数据分析”整合到同一套工作流中:你可以快速保存文本与图片内容,按页面分类沉淀常用数据,并像表格一样进行行列编...", + "author": "linszjava", + "language": "HTML", + "keyword": "反序列化" + }, + { + "link": "https://github.com/Axyanzzzz/TongWebEJBScan-Burp", + "name": "TongWebEJBScan-Burp", + "created_at": "2026-04-24T17:26:18Z", + "description": "TongWebEJB反序列化漏洞检测工具——Burp插件", + "author": "Axyanzzzz", + "language": null, + "keyword": "反序列化" + }, + { + "link": "https://github.com/Alpaca233114514/security-code-review", + "name": "security-code-review", + "created_at": "2026-04-24T18:06:44Z", + "description": "对代码变更进行自动化安全审查,检测注入漏洞、不安全反序列化、硬编码密钥等常见安全问题,输出结构化修复建议。", + "author": "Alpaca233114514", + "language": null, + "keyword": "反序列化" + }, + { + "link": "https://github.com/nexorin9/transfusion-reaction-similarity-search", + "name": "transfusion-reaction-similarity-search", + "created_at": "2026-04-24T12:09:33Z", + "description": "输血反应病例相似性搜索系统,基于症状向量与 CBR 检索技术,输入患者症状序列快速检索相似历史案例,预测反应类型并推荐处置预案,支持 CLI 彩色报告与 HTML 可视化看板,帮助医护人员紧急决策。", + "author": "nexorin9", + "language": "Python", + "keyword": "反序列化" + }, + { + "link": "https://github.com/ws91233/Fastjson-lab", + "name": "Fastjson-lab", + "created_at": "2026-04-19T16:03:54Z", + "description": "Fastjson 1.2.24 & 1.2.47 & 1.2.80 反序列化漏洞完整复现环境", + "author": "ws91233", + "language": null, + "keyword": "反序列化" + }, + { + "link": "https://github.com/Jancarow/BypassNeo-reGeorg", + "name": "BypassNeo-reGeorg", + "created_at": "2025-12-05T08:13:50Z", + "description": "Anti-detection version of Neo-reGeorg", + "author": "Jancarow", + "language": "Python", + "keyword": "webshell" + }, + { + "link": "https://github.com/gekonge/No-one", + "name": "No-one", + "created_at": "2025-09-27T10:15:16Z", + "description": "🌐 Manage Java WebShells effortlessly with No-one, a modern tool for secure testing and deeper understanding of web attack scenarios.", + "author": "gekonge", + "language": "TypeScript", + "keyword": "webshell" + }, + { + "link": "https://github.com/lcy360/webshell", + "name": "webshell", + "created_at": "2026-05-15T04:22:45Z", + "description": "Remote web terminal for controlling live shell sessions from a browser", + "author": "lcy360", + "language": "JavaScript", + "keyword": "webshell" + }, + { + "link": "https://github.com/Xnuvers007/webshells", + "name": "webshells", + "created_at": "2023-08-03T01:18:25Z", + "description": null, + "author": "Xnuvers007", + "language": "Python", + "keyword": "webshell" + }, + { + "link": "https://github.com/Projet-technique-Altair/altair-lab-api-service", + "name": "altair-lab-api-service", + "created_at": "2025-12-02T15:50:05Z", + "description": "Lab spawn and webshell service for Altaïr project", + "author": "Projet-technique-Altair", + "language": "Rust", + "keyword": "webshell" + }, + { + "link": "https://github.com/Marven11/EtherGhost", + "name": "EtherGhost", + "created_at": "2024-10-08T01:23:57Z", + "description": "新一代Webshell管理器,兼容蚁剑与冰蝎的PHP webshell", + "author": "Marven11", + "language": "Python", + "keyword": "webshell" + }, + { + "link": "https://github.com/transvestic-velodrome9214/AgentMemshell", + "name": "AgentMemshell", + "created_at": "2026-05-02T00:27:33Z", + "description": "Inject memory shells into Java Tomcat processes across all JDK versions for command execution in environments without output.", + "author": "transvestic-velodrome9214", + "language": null, + "keyword": "webshell" + }, + { + "link": "https://github.com/erikturbolt/Godzilla_bypass_webshell", + "name": "Godzilla_bypass_webshell", + "created_at": "2026-03-15T09:44:56Z", + "description": "Bypass advanced webshell detection using AES encryption, data-flow breaks, and dynamic callbacks designed for stealthy PHP webshell operation.", + "author": "erikturbolt", + "language": "Python", + "keyword": "webshell" + }, + { + "link": "https://github.com/FFR31MMRDyukikaze/ASPX_WebShell_COFFLoader", + "name": "ASPX_WebShell_COFFLoader", + "created_at": "2024-07-01T18:35:09Z", + "description": "Execute Beacon Object Files on target servers via an ASPX web shell using a COFF loader for security testing and research purposes.", + "author": "FFR31MMRDyukikaze", + "language": "ASP.NET", + "keyword": "webshell" + }, + { + "link": "https://github.com/du-rezende/CloudShell", + "name": "CloudShell", + "created_at": "2021-06-26T05:19:02Z", + "description": "Provide secure web access to remote SSH, SFTP, and FTP(S) sessions through a self-hosted, Docker-ready browser gateway without client software.", + "author": "du-rezende", + "language": "Python", + "keyword": "webshell" + }, + { + "link": "https://github.com/rehiy/isrvd", + "name": "isrvd", + "created_at": "2025-09-01T04:15:40Z", + "description": "一体化服务器管理工具,基于 Go + Vue 3 构建,提供文件管理、Docker/Swarm/Compose、APISIX/Caddy 网关、Web 终端、计划任务等全栈运维能力。", + "author": "rehiy", + "language": "Vue", + "keyword": "webshell" + }, + { + "link": "https://github.com/jk545490/memory-shell-mcp", + "name": "memory-shell-mcp", + "created_at": "2026-01-26T12:23:41Z", + "description": "🛠 Detect and remove Java memory shells with this tool, supporting local and SSH execution for effective process management and security analysis.", + "author": "jk545490", + "language": "Python", + "keyword": "webshell" + }, + { + "link": "https://github.com/Richietoreck/MatouWebshell", + "name": "MatouWebshell", + "created_at": "2023-10-20T04:30:06Z", + "description": "🛠 Manage and deploy webshell tools for Linux using Vue 3 and Python, featuring custom traffic formats for stealthy operation.", + "author": "Richietoreck", + "language": null, + "keyword": "webshell" + }, + { + "link": "https://github.com/mt801/OrionPrime", + "name": "OrionPrime", + "created_at": "2026-01-03T11:54:13Z", + "description": "⚙️ Streamline edge-computation and predictive analytics in containerized microservices with OrionPrime for a highly available, self-healing solution.", + "author": "mt801", + "language": "Rust", + "keyword": "webshell" + }, + { + "link": "https://github.com/jesuismarie/Boot2root", + "name": "Boot2root", + "created_at": "2025-06-25T14:52:09Z", + "description": "This project is a CTF-style vulnerable virtual machine designed for hands-on penetration testing and cybersecurity training. Root the box by exploiting misconfigurations, weak credentials, and privilege escalation paths. Ideal for practicing ethical hacking skills in a controlled lab environment.", + "author": "jesuismarie", + "language": "C", + "keyword": "webshell" + }, + { + "link": "https://github.com/manateelazycat/lazycat-microserver-webshell", + "name": "lazycat-microserver-webshell", + "created_at": "2026-05-14T14:20:52Z", + "description": "Webshell for LazyCat Microserver", + "author": "manateelazycat", + "language": "JavaScript", + "keyword": "webshell" + }, + { + "link": "https://github.com/0x7556/wolfshell", + "name": "wolfshell", + "created_at": "2025-09-25T15:23:17Z", + "description": "金刚狼:首款支持AI渗透的WebShell MCP,首款支持多层内网级联的ASPX、ASHX高级WebShell管理工具,AES加密通信,无需代理,内存加载渗透工具,无文件落地隐蔽渗透目标,动态代码执行,ShellCode加载(Metasploit/Cobalt Strike),反弹Shell,S...", + "author": "0x7556", + "language": "ASP.NET", + "keyword": "webshell" + }, + { + "link": "https://github.com/kebab-os/kebab-tools", + "name": "kebab-tools", + "created_at": "2026-03-10T10:01:25Z", + "description": "Endpoint based developer tools - Extension of kebab-os", + "author": "kebab-os", + "language": "JavaScript", + "keyword": "webshell" + }, + { + "link": "https://github.com/Mr-xn/Penetration_Testing_POC", + "name": "Penetration_Testing_POC", + "created_at": "2019-07-24T03:37:55Z", + "description": "渗透测试有关的POC、EXP、脚本、提权、小工具等---About penetration-testing python-script poc getshell csrf xss cms php-getshell domainmod-xss csrf-webshell cobub-razor cve rce sql sql-poc poc-exp bypass oa-getshell cve-cms", + "author": "Mr-xn", + "language": "HTML", + "keyword": "webshell" + }, + { + "link": "https://github.com/vektor-x-com/Shells-X", + "name": "Shells-X", + "created_at": "2026-03-27T15:51:29Z", + "description": "Modular single-file web shell framework with pure-PHP recon, SOCKS5 pivoting, and per-build fingerprinting", + "author": "vektor-x-com", + "language": "JavaScript", + "keyword": "webshell" + }, + { + "link": "https://github.com/tal7aouy/nginx-cve-2026-42945", + "name": "nginx-cve-2026-42945", + "created_at": "2026-05-17T16:07:37Z", + "description": "🛡️ Script to test for NGINX CVE-2026-42945", + "author": "tal7aouy", + "language": "Python", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/aa022/CVE-2026-23918-Passive-Audit", + "name": "CVE-2026-23918-Passive-Audit", + "created_at": "2026-05-05T17:55:08Z", + "description": "Passive HTTP metadata auditor for CVE-2026-23918 exposure triage", + "author": "aa022", + "language": "Python", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/KaraZajac/CHARON", + "name": "CHARON", + "created_at": "2026-05-16T03:34:08Z", + "description": "CHARON — pre-built PoC for CVE-2026-46333 (Linux ptrace mm==NULL fd theft)", + "author": "KaraZajac", + "language": "C", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/KaraZajac/DIRTYFAIL", + "name": "DIRTYFAIL", + "created_at": "2026-05-08T14:05:37Z", + "description": "Detector + PoC for Linux page-cache write vulnerabilities: Copy Fail (CVE-2026-31431) and Dirty Frag (CVE-2026-43284/43500). Authorized security research only.", + "author": "KaraZajac", + "language": "C", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/murrez/CVE-2026-6433", + "name": "CVE-2026-6433", + "created_at": "2026-05-16T09:29:58Z", + "description": "PoC for CVE-2026-6433: WordPress FlipperCode Custom CSS, JS & PHP (≤2.0.7) — unauthenticated SQLi to RCE. Python 3 stdlib; single target or bulk multi-threaded scanning. Authorized testing & research only.", + "author": "murrez", + "language": "Python", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/Defacto-ridgepole254/CVE-2026-41940-Exploit-PoC", + "name": "CVE-2026-41940-Exploit-PoC", + "created_at": "2026-05-06T18:08:48Z", + "description": "Test authentication bypass vulnerabilities in cPanel and WHM using this proof of concept exploit tool written in Go.", + "author": "Defacto-ridgepole254", + "language": null, + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/Dullpurple-sloop726/CVE-2026-31431-Linux-Copy-Fail", + "name": "CVE-2026-31431-Linux-Copy-Fail", + "created_at": "2026-05-06T09:49:14Z", + "description": "Exploit CVE-2026-31431 on Linux using a Rust implementation to achieve local privilege escalation via an arbitrary page cache write primitive.", + "author": "Dullpurple-sloop726", + "language": "Rust", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/Liverwortenuresis371/copyfail-rs", + "name": "copyfail-rs", + "created_at": "2026-05-05T04:58:21Z", + "description": "Exploit and detect CVE-2026-31431 vulnerabilities using a static binary that monitors system integrity and bypasses PAM authentication.", + "author": "Liverwortenuresis371", + "language": "Rust", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/Sonisi5085/CVE-2026-XNU-AIO-KEVENT-UAF", + "name": "CVE-2026-XNU-AIO-KEVENT-UAF", + "created_at": "2026-04-14T10:07:25Z", + "description": "Demonstrate XNU AIO kevent use-after-free, kernel panic, and double-free in iOS sandbox for security research", + "author": "Sonisi5085", + "language": "Objective-C", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/Jumpthereness578/CVE-2026-2991", + "name": "CVE-2026-2991", + "created_at": "2026-04-03T20:26:43Z", + "description": "Explore a PoC for CVE-2026-2991, an auth bypass in KiviCare 4.1.2 and earlier via the patient social-login REST endpoint", + "author": "Jumpthereness578", + "language": "PHP", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/Recorded-texteditor120/CVE-2026-31802", + "name": "CVE-2026-31802", + "created_at": "2026-03-28T20:49:46Z", + "description": "Demonstrate and analyze the CVE-2026-31802 path traversal vulnerability in npm tar, enabling arbitrary file overwrite via symlink extraction.", + "author": "Recorded-texteditor120", + "language": "JavaScript", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/tracyliving606/RegPwn", + "name": "RegPwn", + "created_at": "2026-03-26T04:38:27Z", + "description": "Exploit Windows local privilege escalation on clients and servers using tested code for CVE-2026-24291 across multiple Windows versions", + "author": "tracyliving606", + "language": "C#", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/megafart1/CVE-2026-2472-Vertex-AI-SDK-Google-Cloud", + "name": "CVE-2026-2472-Vertex-AI-SDK-Google-Cloud", + "created_at": "2026-03-10T14:40:04Z", + "description": "Expose and detail an unauthenticated stored XSS vulnerability in the Google Cloud Vertex AI Python SDK affecting versions 1.98.0 to 1.130.9.", + "author": "megafart1", + "language": "Python", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/DyniePro/CVE-2026-25643", + "name": "CVE-2026-25643", + "created_at": "2026-03-07T20:23:08Z", + "description": "Exploit Frigate NVR ≤0.16.3 to execute commands remotely by abusing a configuration flaw without needing shell access or output capture.", + "author": "DyniePro", + "language": "Python", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/fartlover37/CVE-2026-2441-PoC", + "name": "CVE-2026-2441-PoC", + "created_at": "2026-03-03T14:19:18Z", + "description": "Demonstrate a proof-of-concept exploit for CVE-2026-2441, a high-risk Chrome use-after-free vulnerability in the Blink CSS engine.", + "author": "fartlover37", + "language": null, + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/minanagehsalalma/cve-2026-34473-unauthenticated-dos-zte-routers", + "name": "cve-2026-34473-unauthenticated-dos-zte-routers", + "created_at": "2026-05-16T14:57:50Z", + "description": "Technical breakdown of CVE-2026-34473, an unauthenticated denial of service affecting 17+ ZTE router models.", + "author": "minanagehsalalma", + "language": "HTML", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/wutang700/STProcessMonitorBYOVD", + "name": "STProcessMonitorBYOVD", + "created_at": "2024-04-20T04:18:24Z", + "description": "🛠 Exploit and control Windows processes using CVE-2025-70795 and CVE-2026-0828 with driver-based termination tools.", + "author": "wutang700", + "language": "C++", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/hamzamalik3461/CVE-2026-20841", + "name": "CVE-2026-20841", + "created_at": "2024-09-22T12:19:06Z", + "description": "🛠 Demonstrate remote code execution in Windows Notepad via markdown links exploiting unsecured URL protocols.", + "author": "hamzamalik3461", + "language": null, + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/404godd/CVE-2026-20841-PoC", + "name": "CVE-2026-20841-PoC", + "created_at": "2026-02-26T05:21:28Z", + "description": "🛠 Demonstrate remote code execution in Windows Notepad versions below 11.2510 using the CVE-2026-20841 proof of concept.", + "author": "404godd", + "language": null, + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/hyu164/Terrminus-CVE-2026-2406", + "name": "Terrminus-CVE-2026-2406", + "created_at": "2025-04-16T07:20:12Z", + "description": "🔍 Analyze and detect CVE-2026-2406 vulnerabilities in Telnet to enhance security and prevent unauthorized access with this professional research engine.", + "author": "hyu164", + "language": "Python", + "keyword": "CVE-2026" + }, + { + "link": "https://github.com/0x7556/wolfshell", + "name": "wolfshell", + "created_at": "2025-09-25T15:23:17Z", + "description": "金刚狼:首款支持AI渗透的WebShell MCP,首款支持多层内网级联的ASPX、ASHX高级WebShell管理工具,AES加密通信,无需代理,内存加载渗透工具,无文件落地隐蔽渗透目标,动态代码执行,ShellCode加载(Metasploit/Cobalt Strike),反弹Shell,S...", + "author": "0x7556", + "language": "ASP.NET", + "keyword": "内网渗透" + }, + { + "link": "https://github.com/yanxinwu946/xnmap", + "name": "xnmap", + "created_at": "2025-03-14T16:16:04Z", + "description": "一款集成了 RustScan + Nmap + fscan + Nuclei 的全自动化内网渗透扫描利器", + "author": "yanxinwu946", + "language": "Shell", + "keyword": "内网渗透" + }, + { + "link": "https://github.com/binghe001/binghe001.github.io", + "name": "binghe001.github.io", + "created_at": "2022-04-01T07:11:11Z", + "description": "📚 本静态博客是作者冰河多年从事多年互联网大厂开发、架构的学习历程技术汇总,旨在为大家提供一个清晰详细的学习教程,侧重点更倾向编写Java核心内容、底层原理、架构知识、渗透技术。如果本仓库能为您提供帮助,...", + "author": "binghe001", + "language": "HTML", + "keyword": "内网渗透" + }, + { + "link": "https://github.com/binghe001/BingheGuide", + "name": "BingheGuide", + "created_at": "2022-03-31T04:23:48Z", + "description": "🔥🔥🔥 📚 本代码库是作者冰河多年从事互联网大厂开发、架构的学习历程技术汇总,旨在为大家提供一个清晰详细的学习教程,侧重点更倾向编写AI大模型、Java和Go核心内容、底层原理、架构知识、渗透技术。如果本仓库能...", + "author": "binghe001", + "language": "Python", + "keyword": "内网渗透" + }, + { + "link": "https://github.com/ktol1/RedTeam-Agent", + "name": "RedTeam-Agent", + "created_at": "2026-02-28T12:16:58Z", + "description": " RedTeam-Agent: AI-Powered Autonomous Red Team Framework via Model Context Protocol. AI红队与内网渗透自动化框架,支持 gogo, fscan, httpx, nuclei, impacket, playwright 等 15+ 渗透工具,让 LLM 直接化身安全审计黑客。", + "author": "ktol1", + "language": "C", + "keyword": "内网渗透" + }, + { + "link": "https://github.com/SecNN/AiScan-N", + "name": "AiScan-N", + "created_at": "2025-10-23T08:16:18Z", + "description": "AiScan-N 来了!这是一款基于人工智能驱动的Ai自动化网络安全(运维)工具,专注于网络安全评估、漏洞扫描、运维、应急响应、渗透测试自动化,Ai大模型工具集【CLI Agent】 ,Ai驱动的安全检测技术,提升安全测试(运维)效...", + "author": "SecNN", + "language": null, + "keyword": "内网渗透" + }, + { + "link": "https://github.com/Anmmmrobot/permeate_enterprise", + "name": "permeate_enterprise", + "created_at": "2026-04-17T09:00:23Z", + "description": "本项目用于模拟企业内网环境中的渗透测试过程,通过构建受控实验场景,验证常见内网安全风险与访问控制机制。", + "author": "Anmmmrobot", + "language": null, + "keyword": "内网渗透" + }, + { + "link": "https://github.com/MAOGE555/shuidi", + "name": "shuidi", + "created_at": "2025-05-16T07:26:11Z", + "description": "水滴工具箱,集合各种渗透工具。端口扫描器,漏扫,抓包,内存马,内网穿透,c2,免杀等等", + "author": "MAOGE555", + "language": "Python", + "keyword": "内网渗透" + }, + { + "link": "https://github.com/lullaby-xjx/Blog", + "name": "Blog", + "created_at": "2026-03-21T16:10:11Z", + "description": "这是一个个人博客网站;技术栈:PHP、JavaScript、CSS、HTML、Mysql;有较严重的安全问题(内附渗透报告)", + "author": "lullaby-xjx", + "language": "Hack", + "keyword": "内网渗透" + }, + { + "link": "https://github.com/vegetableou/Intelligent-Android-Penetration-System", + "name": "Intelligent-Android-Penetration-System", + "created_at": "2026-04-10T03:57:10Z", + "description": "本项目旨在研发一款高度自动化的智能渗透测试系统,其核心目标是实现对安卓设备的无人值守安全评估。与传统的单一漏洞扫描工具不同,本系统是一个集成了情报收集、智能决策与多向量攻击能力的统一调度平台。它能够...", + "author": "vegetableou", + "language": "Smali", + "keyword": "内网渗透" + }, + { + "link": "https://github.com/Zer08Bytes/AD-PenTest", + "name": "AD-PenTest", + "created_at": "2026-04-11T05:44:44Z", + "description": "内网渗透之域渗透&提权&免杀", + "author": "Zer08Bytes", + "language": null, + "keyword": "内网渗透" + }, + { + "link": "https://github.com/smallcat9612/ai-pentest-bot", + "name": "ai-pentest-bot", + "created_at": "2026-03-25T21:26:04Z", + "description": "基于ai训练的渗透模型+智能体,支持内网渗透。", + "author": "smallcat9612", + "language": null, + "keyword": "内网渗透" + }, + { + "link": "https://github.com/EdinLyle/sec-links", + "name": "sec-links", + "created_at": "2026-02-20T07:17:56Z", + "description": "整合日常学习、工作及网络所得笔记、安全大佬分析报告、面试题与技巧文档,安全大厂与安全标准,标准指南,按渗透、安服、运营、代码审计、内网、移动、应急、工控、AI/LLM安全、数据、业务、情报、分析、黑灰产对抗、S...", + "author": "EdinLyle", + "language": null, + "keyword": "内网渗透" + }, + { + "link": "https://github.com/YaoSiQian/violation-outreach-wallpaper", + "name": "violation-outreach-wallpaper", + "created_at": "2026-02-15T03:15:52Z", + "description": "【非官方】通俗来讲,违规外联指的是内部网络计算机私自接入互联网或其他公共网络。更具象一些来理解,内部网络计算机连接互联网或内部网络中使用的移动存储载体在非内部网络计算机上使用等行为。违规外联相当于在...", + "author": "YaoSiQian", + "language": "HTML", + "keyword": "内网渗透" + }, + { + "link": "https://github.com/hsltz/masscan-windwos-1.3.2", + "name": "masscan-windwos-1.3.2", + "created_at": "2026-02-14T07:28:32Z", + "description": "masscan 是一款高速的异步端口扫描工具,采用独特的传输方式,可在短时间内完成大规模网络扫描。它专为扫描整个互联网或大型网段设计,扫描速度远超传统工具如 nmap,常被用于网络安全评估与渗透测试。", + "author": "hsltz", + "language": null, + "keyword": "内网渗透" + }, + { + "link": "https://github.com/hanc00l/nemo_go", + "name": "nemo_go", + "created_at": "2021-07-29T08:13:25Z", + "description": "Nemo是用来进行自动化信息收集的一个简单平台,通过集成常用的信息收集工具和技术,实现对内网及互联网资产信息的自动收集,提高隐患排查和渗透测试的工作效率。", + "author": "hanc00l", + "language": "JavaScript", + "keyword": "内网渗透" + }, + { + "link": "https://github.com/kingwempity/Aegis", + "name": "Aegis", + "created_at": "2026-01-14T15:25:34Z", + "description": "基于模拟攻击的web应用程序漏洞检测系统;Aegis: Web Application Vulnerability Detection System", + "author": "kingwempity", + "language": "Python", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/lsc-261013/ai-review-cli", + "name": "ai-review-cli", + "created_at": "2026-05-17T10:54:30Z", + "description": "AI 代码审查 CLI 工具 — 调用 Claude API 自动扫描代码,检测 Bug、安全漏洞、代码规范问题", + "author": "lsc-261013", + "language": "TypeScript", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/SuperLy1020/LLM-Vulnerability-Detection", + "name": "LLM-Vulnerability-Detection", + "created_at": "2026-05-12T06:08:21Z", + "description": "大模型代码漏洞检测学习笔记", + "author": "SuperLy1020", + "language": "Python", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/2021291696/debug-architect", + "name": "debug-architect", + "created_at": "2026-05-17T03:44:36Z", + "description": "调试建筑师:项目完成后扫描报错、分析根因、归档教训、生成预防规则、检测技能漏洞。", + "author": "2021291696", + "language": null, + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/elegent-administrator/Open-Audit", + "name": "Open-Audit", + "created_at": "2026-05-16T03:36:44Z", + "description": "Open Audit是面向企业研发、开发者群体的AI智能明文代码安全审计工具,基于Python语言开发、FastCGI架构搭建,融合Semgrep工具链与自主研发的AI Agent,精准匹配数字时代代码安全审计的市场核心需求。工具直击行业传统审计工具误...", + "author": "elegent-administrator", + "language": "Python", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/imkerbos/mxsec-platform", + "name": "mxsec-platform", + "created_at": "2025-12-09T09:33:22Z", + "description": "企业级主机与容器安全管理平台。覆盖安全基线、资产管理、漏洞扫描、病毒查杀、文件完整性监控、运行时检测、容器安全、威胁情报与告警响应,面向安全运营团队提供统一管控视图。", + "author": "imkerbos", + "language": "Go", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/Qiu-Sec/pentest-web-plugin", + "name": "pentest-web-plugin", + "created_at": "2026-04-30T07:03:56Z", + "description": "网站渗透测试 Skill — 目标识别、CDN/WAF检测、指纹架构、API发现、端口扫描、未授权与漏洞验证", + "author": "Qiu-Sec", + "language": null, + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/hmt38/idors-factory", + "name": "idors-factory", + "created_at": "2026-02-27T12:28:08Z", + "description": "本插件是在原版 Autorize 基础上进行的二次开发,新增了智能越权 (IDOR) 检测功能。它通过采集不同用户的流量,自动分析参数特征,并构造重放攻击来检测越权漏洞", + "author": "hmt38", + "language": "Python", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/Carlson-JLQ/VulnSynth", + "name": "VulnSynth", + "created_at": "2026-04-20T15:28:12Z", + "description": "漏洞检测工具", + "author": "Carlson-JLQ", + "language": "Python", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/BAKOME-Hub/BAKOME_Hyperchain_Guard", + "name": "BAKOME_Hyperchain_Guard", + "created_at": "2026-05-14T10:31:39Z", + "description": "基于 Rust 的 Hyperchain 智能合约静态安全分析器,检测重入、整数溢出、权限绕过等漏洞,生成 HTML/JSON 报告,开源 MIT 协议。", + "author": "BAKOME-Hub", + "language": "Rust", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/BAKOME-Hub/BAKOME_FISCO_Guard", + "name": "BAKOME_FISCO_Guard", + "created_at": "2026-05-14T10:16:22Z", + "description": "基于 Rust 的 FISCO BCOS 智能合约安全分析器,检测常见漏洞(重入、整数溢出、权限错误等),生成 HTML 报告,支持自定义规则,开源 MIT 协议。", + "author": "BAKOME-Hub", + "language": "Rust", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/BAKOME-Hub/BAKOME_CKB_Guardian", + "name": "BAKOME_CKB_Guardian", + "created_at": "2026-05-14T09:45:56Z", + "description": "用 Rust 编写的 Nervos CKB 智能合约静态安全分析器,检测常见漏洞(重入、整数溢出、权限错误等),生成 HTML 报告,支持自定义规则,开源 MIT 协议。", + "author": "BAKOME-Hub", + "language": "Rust", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/BAKOME-Hub/BAKOME_Conflux_Guard", + "name": "BAKOME_Conflux_Guard", + "created_at": "2026-05-14T06:39:09Z", + "description": "针对 Conflux eSpace 的智能合约静态安全分析器(Rust 实现),检测重入攻击、时间戳依赖、赞助人白名单配置错误等漏洞,生成 HTML 报告。", + "author": "BAKOME-Hub", + "language": "Rust", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/BAKOME-Hub/BAKOME_-", + "name": "BAKOME_-", + "created_at": "2026-05-14T05:48:34Z", + "description": "基于 Rust 的高性能区块链安全审计工具,支持智能合约漏洞检测、交易追踪和链上数据分析。专为中国开发者社区设计,兼容 Conflux、Nervos 等国产公链。开源 MIT 协议。", + "author": "BAKOME-Hub", + "language": "Rust", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/yizhimish/codereview-ai", + "name": "codereview-ai", + "created_at": "2026-04-24T16:24:02Z", + "description": "AI代码审查工具 · 自动检测Bug/安全漏洞/性能问题 · 支持Python/JS/TS/Java/Go/Rust/C++", + "author": "yizhimish", + "language": "Python", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/nexorin9/api-chaos-tester", + "name": "api-chaos-tester", + "created_at": "2026-05-13T03:22:46Z", + "description": "用混沌工程思路对医院核心系统(HIS/EMR/LIS/PACS)接口契约做反事实测试,自动生成空值、超长、特殊字符等边界用例,检测 SQL 注入/XSS/参数校验漏洞,输出端点/参数/规则三维覆盖率报告与漏洞清单,支持 CLI 彩色输出和 HTML ...", + "author": "nexorin9", + "language": "Python", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/willsafe/Unauth-Vuln-Scanner", + "name": "Unauth-Vuln-Scanner", + "created_at": "2026-04-10T07:37:11Z", + "description": "jar包版-未授权漏洞检测工具", + "author": "willsafe", + "language": "Java", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/AnonAnon3376/AnonScanner", + "name": "AnonScanner", + "created_at": "2026-05-11T08:28:05Z", + "description": "🤖 AI驱动的Burp Suite安全扫描插件,专注于检测高危Web漏洞", + "author": "AnonAnon3376", + "language": "Java", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/FBW-JNU/VulnerabilitySystem", + "name": "VulnerabilitySystem", + "created_at": "2026-05-10T13:16:31Z", + "description": "论文《A Vulnerability Detection System Based on Fusion of Assembly Code and Source Code》的实验代码,实现了一种基于汇编代码与源代码融合的漏洞检测系统。可供相关领域对此感兴趣的研究人员用于快速复现,对基于汇编代码与源代码融合的...", + "author": "FBW-JNU", + "language": null, + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/wpsec/ARL-Source-Install", + "name": "ARL-Source-Install", + "created_at": "2025-01-21T06:29:04Z", + "description": "基于 ARL 深度扩展与持续优化的互联网资产自动化收集平台,面向资产发现、暴露面梳理、风险排查与持续监测等场景,提供域名识别、子域名发现、测绘引擎查询、端口与服务识别、指纹分析、URL 提取、漏洞检测、计划任务...", + "author": "wpsec", + "language": "JavaScript", + "keyword": "漏洞检测" + }, + { + "link": "https://github.com/smashmindmomentum/anime-card-collection-ug01", + "name": "anime-card-collection-ug01", + "created_at": "2026-05-17T16:35:51Z", + "description": "独家 钓鱼 脚本 — 最佳 钓鱼 脚本,集成 静音瞄准 和 自动升级。安全强大。", + "author": "smashmindmomentum", + "language": "HTML", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/Sheenyeserver/anime-card-collection-xy23", + "name": "anime-card-collection-xy23", + "created_at": "2026-05-17T16:33:09Z", + "description": "新 钓鱼 脚本 — 最佳 钓鱼 脚本,集成 自定义皮肤 和 静音瞄准。安全强大。", + "author": "Sheenyeserver", + "language": "HTML", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/ChromeMoonWind/sharp-xg99", + "name": "sharp-xg99", + "created_at": "2026-05-17T16:21:35Z", + "description": "最佳 钓鱼 脚本 — 最佳 钓鱼 脚本,集成 隐身 和 自动收集。安全强大。", + "author": "ChromeMoonWind", + "language": "HTML", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/Digitalclaplan/anime-card-collection-tx06", + "name": "anime-card-collection-tx06", + "created_at": "2026-05-17T16:20:59Z", + "description": "高级 钓鱼 脚本 — 最佳 钓鱼 脚本,集成 自动收集 和 无限耐力。安全强大。", + "author": "Digitalclaplan", + "language": "HTML", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/baimaokong/claude-yihuandiaoyu", + "name": "claude-yihuandiaoyu", + "created_at": "2026-05-17T16:22:02Z", + "description": "异环自动钓鱼", + "author": "baimaokong", + "language": null, + "keyword": "钓鱼" + }, + { + "link": "https://github.com/KiloJourneyman/anime-card-collection-te13", + "name": "anime-card-collection-te13", + "created_at": "2026-05-17T16:17:06Z", + "description": "顶级 钓鱼 脚本 — 最佳 钓鱼 脚本,集成 神模式 和 飞行。安全强大。", + "author": "KiloJourneyman", + "language": "HTML", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/Digitalclaplan/sharp-wz75", + "name": "sharp-wz75", + "created_at": "2026-05-17T15:55:12Z", + "description": "自动 钓鱼 脚本 — 最佳 钓鱼 脚本,集成 无冷却 和 自动升级。安全强大。", + "author": "Digitalclaplan", + "language": "HTML", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/baimaokong/yihuan-zidongdiayu", + "name": "yihuan-zidongdiayu", + "created_at": "2026-05-17T15:10:30Z", + "description": "异环自动钓鱼", + "author": "baimaokong", + "language": null, + "keyword": "钓鱼" + }, + { + "link": "https://github.com/babalae/better-genshin-impact", + "name": "better-genshin-impact", + "created_at": "2023-08-27T01:02:45Z", + "description": "📦BetterGI · 更好的原神 - 自动拾取 | 自动剧情 | 全自动钓鱼(AI) | 全自动七圣召唤 | 自动伐木 | 自动刷本 | 自动采集/挖矿/锄地 | 一条龙 | 全连音游 | 自动烹饪 - UI Automation Testing Tools For Genshin Impact", + "author": "babalae", + "language": "C#", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/AlchemistOscillate/windscribe-vpn-yg73", + "name": "windscribe-vpn-yg73", + "created_at": "2026-05-17T14:16:49Z", + "description": "secure 卡巴斯基 全方位安全 PC版 扩展 — 最佳 卡巴斯基 全方位安全 PC版 扩展,集成 沙盒 和 钓鱼保护。安全强大。", + "author": "AlchemistOscillate", + "language": "HTML", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/Rich-hrq/linkGuard", + "name": "linkGuard", + "created_at": "2026-05-17T10:44:20Z", + "description": "Brave 浏览器扩展 — 防御钓鱼链接与域名同形攻击", + "author": "Rich-hrq", + "language": "HTML", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/AlchemistOscillate/avast-premium-security-xj71", + "name": "avast-premium-security-xj71", + "created_at": "2026-05-17T10:39:15Z", + "description": "exclusive Bitdefender 全方位安全 PC版 插件 — 最佳 Bitdefender 全方位安全 PC版 插件,集成 反间谍软件 和 钓鱼保护。安全强大。", + "author": "AlchemistOscillate", + "language": "HTML", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/lyw-xz/JAVA-awltnmjoor-Python", + "name": "JAVA-awltnmjoor-Python", + "created_at": "2026-05-17T09:10:03Z", + "description": "基于SpringBoot+Vue的同城钓鱼社交APP的设计与开发", + "author": "lyw-xz", + "language": "Java", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/AlchemistOscillate/norton-360-sx65", + "name": "norton-360-sx65", + "created_at": "2026-05-17T07:50:34Z", + "description": "automatic Bitdefender 全方位安全 PC版 工具 — 最佳 Bitdefender 全方位安全 PC版 工具,集成 防火墙 和 钓鱼保护。安全强大。", + "author": "AlchemistOscillate", + "language": "HTML", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/QiZhenboy/Amazon_Data_Processing", + "name": "Amazon_Data_Processing", + "created_at": "2026-05-17T05:48:52Z", + "description": "高效处理亚马逊相关文件的数据,包括 钓鱼广告数据合并以及Sif流量词数据清洗等", + "author": "QiZhenboy", + "language": "Python", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/BlackCleaverLoli/MissFisher", + "name": "MissFisher", + "created_at": "2024-06-24T23:11:30Z", + "description": "FF14 钓鱼插件(旧称:空天姬)/ MissFisher, A FFXIV fishing plugin.", + "author": "BlackCleaverLoli", + "language": "JavaScript", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/AlchemistOscillate/kaspersky-tal-security-vr24", + "name": "kaspersky-tal-security-vr24", + "created_at": "2026-05-17T06:53:04Z", + "description": "advanced Bitdefender 全方位安全 PC版 工具 — 最佳 Bitdefender 全方位安全 PC版 工具,集成 安全浏览 和 钓鱼保护。安全强大。", + "author": "AlchemistOscillate", + "language": "HTML", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/Selonite925/Fish-Plugin", + "name": "Fish-Plugin", + "created_at": "2026-05-08T04:24:58Z", + "description": "尝试用Codex开发的Yunzai-Bot的钓鱼小插件,即插即用", + "author": "Selonite925", + "language": "JavaScript", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/forhetale/party-animals-fishing", + "name": "party-animals-fishing", + "created_at": "2026-05-16T16:47:01Z", + "description": "Party Animals 自动钓鱼工具 - 鱼饵数量变化法检测咬钩,反馈式收线控制", + "author": "forhetale", + "language": "Python", + "keyword": "钓鱼" + }, + { + "link": "https://github.com/HeadmasterTan/NTEFishingTool", + "name": "NTEFishingTool", + "created_at": "2026-05-16T09:15:42Z", + "description": "异环钓鱼工具", + "author": "HeadmasterTan", + "language": "C#", + "keyword": "钓鱼" } ] \ No newline at end of file diff --git a/resources/JSON/huawei.json b/resources/JSON/huawei.json index ad01f76..7121cb7 100644 --- a/resources/JSON/huawei.json +++ b/resources/JSON/huawei.json @@ -1,122 +1,102 @@ [ { - "title": "安全通告 - 涉及华为全屋音乐系统产品的路径穿越漏洞", - "pubDate": "2024-12-11T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2024/huawei-sa-ptvihhms-91f7c6fa-cn", - "description": null + "title": " 安全预警-华为E585设备web server模块漏洞 ", + "pubDate": "2026-03-25T16:27:29", + "link": "www.huawei.com/cn/psirt/security-advisories/2012/hw-198237" }, { - "title": "安全通告 - 华为全屋音乐系统路径穿越漏洞", - "pubDate": "2024-06-19T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2024/huawei-sa-ptvihhms-20747ba3-cn", - "description": null + "title": " 安全通告 - 华为PC产品存在认证绕过漏洞 ", + "pubDate": "2026-03-25T16:27:29", + "link": "www.huawei.com/cn/psirt/security-advisories/2025/huawei-sa-20250325-01-pc-cn" }, { - "title": "安全通告 - 涉及部分华为家庭路由器的连接劫持漏洞", - "pubDate": "2024-06-19T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2024/huawei-sa-chvishhr-d616b19e-cn", - "description": null + "title": " 安全通告 - 涉及华为全屋音乐系统产品的路径穿越漏洞 ", + "pubDate": "2026-03-25T16:27:27", + "link": "www.huawei.com/cn/psirt/security-advisories/2024/huawei-sa-ptvihhms-91f7c6fa-cn" }, { - "title": "安全通告 - 涉及华为部分家庭路由产品的连接劫持漏洞", - "pubDate": "2024-04-24T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2024/huawei-sa-chvishhr-d50dedde-cn", - "description": null + "title": " 安全预警 - 涉及华为部分产品的缓冲区错误漏洞 ", + "pubDate": "2026-03-25T16:27:26", + "link": "www.huawei.com/cn/psirt/security-advisories/2018/huawei-sa-20180418-01-enum-cn" }, { - "title": "安全通告 - 涉及华为智能音箱部分产品的内存溢出漏洞", - "pubDate": "2024-04-17T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2024/huawei-sa-samovishss-28e21e39-cn", - "description": null + "title": " 安全预警 - CPU漏洞“Meltdown”和“Spectre” ", + "pubDate": "2026-02-25T16:59:51", + "link": "www.huawei.com/cn/psirt/security-advisories/2018/huawei-sa-20180106-01-cpu-cn" }, { - "title": "安全通告 - 涉及华为PC部分产品的内存缓冲区边界操作限制不当漏洞", - "pubDate": "2024-04-17T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2024/huawei-sa-hppvtiroowtboamb-bb3261bd-cn", - "description": null + "title": " 安全通告 - 涉及华为EnzoH产品的系统命令注入漏洞 ", + "pubDate": "2025-07-23T17:08:33", + "link": "www.huawei.com/cn/psirt/security-advisories/2025/huawei-sa-OCIViHEP-1bcbfffa" }, { - "title": "安全通告 - 涉及华为终端PC部分产品接口权限控制不当的漏洞", - "pubDate": "2024-04-17T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2024/huawei-sa-iiacviahpp-71ce77ee-cn", - "description": null + "title": " 安全通告 - 涉及华为EnzoH产品的系统命令注入漏洞 ", + "pubDate": "2025-07-23T15:28:50", + "link": "www.huawei.com/cn/psirt/security-advisories/2025/huawei-sa-OCIViHEP-cn" }, { - "title": "安全通告 - 涉及华为终端PC部分产品异常条件检查不当的漏洞", - "pubDate": "2024-04-17T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2024/huawei-sa-hppvticfuoec-8ffde288-cn", - "description": null + "title": " 安全通告 - 涉及华为EnzoH产品的系统命令注入漏洞 ", + "pubDate": "2025-07-23T14:18:29", + "link": "www.huawei.com/cn/psirt/security-advisories/2025/huawei-sa-OCIViHEP-e73ab538" }, { - "title": "安全通告 - 涉及华为终端PC部分产品对参数长度不一致的处理不当漏洞", - "pubDate": "2024-04-17T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2024/huawei-sa-iholpiiahpp-0ab7d6db-cn", - "description": null + "title": " 安全预警 - 涉及部分华为产品的三个缓冲区溢出漏洞 ", + "pubDate": "2025-06-30T23:46:31", + "link": "www.huawei.com/cn/psirt/security-advisories/2017/huawei-sa-20171108-02-http-cn" }, { - "title": "安全通告 - 涉及华为终端PC部分产品接口权限控制不当的漏洞", - "pubDate": "2024-04-17T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2024/huawei-sa-voiiaciahpp-6376e0c7-cn", - "description": null + "title": " 安全预警 - 华为产品存在七层HTTP Chunked报文解析漏洞 ", + "pubDate": "2025-02-11T15:28:02", + "link": "www.huawei.com/cn/psirt/security-advisories/2016/huawei-sa-20160301-01-http-cn" }, { - "title": "安全通告 - 涉及华为终端智慧屏部分产品的身份认证绕过漏洞", - "pubDate": "2023-12-06T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2023/huawei-sa-ibvishssp-4bf951d4-cn", - "description": null + "title": " 安全预警 - 某些华为产品中的CGI应用安全漏洞 ", + "pubDate": "2025-02-10T11:01:55", + "link": "www.huawei.com/cn/psirt/security-advisories/2017/huawei-sa-20171129-01-httpproxy-cn" }, { - "title": "安全通告 - 涉及华为路由器产品的流量劫持漏洞", - "pubDate": "2023-05-17T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2023/huawei-sa-thvihr-7015cbae-cn", - "description": null + "title": " 安全预警 - 涉及华为部分产品的HTTP请求解析不一致漏洞 ", + "pubDate": "2025-02-10T11:01:17", + "link": "www.huawei.com/cn/psirt/security-advisories/2021/huawei-sa-20210120-01-http-cn" }, { - "title": "安全通告 - 涉及华为某打印机产品的系统命令注入漏洞", - "pubDate": "2023-04-26T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2023/huawei-sa-sciviahpp-6bcddec5-cn", - "description": null + "title": " 安全通告 - 华为某产品存在权限提升漏洞 ", + "pubDate": "2025-01-10T15:55:33", + "link": "www.huawei.com/cn/psirt/security-advisories/2022/huawei-sa-20220216-01-priesc-cn" }, { - "title": "安全通告 - 涉及华为HiLink AI Life产品的身份认证绕过漏洞", - "pubDate": "2023-04-26T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2023/huawei-sa-iabvihhalp-ea34d670-cn", - "description": null + "title": " 安全预警 – 华为E5756s产品存在WebUI接口鉴权机制不完善漏洞 ", + "pubDate": "2024-12-29T01:09:01", + "link": "www.huawei.com/cn/psirt/security-advisories/2015/hw-441176" }, { - "title": "安全通告 - 涉及华为某打印机产品的对输入的错误解析类漏洞", - "pubDate": "2023-04-26T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2023/huawei-sa-moivihp-2f201af9-cn", - "description": null + "title": " 安全预警 - FusionAccess产品缓冲区溢出漏洞 ", + "pubDate": "2024-12-29T01:09:01", + "link": "www.huawei.com/cn/psirt/security-advisories/2015/hw-453536" }, { - "title": "安全通告 - 涉及华为某打印机产品的对输入的错误解析类漏洞", - "pubDate": "2023-04-26T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2023/huawei-sa-moivihp-73cabdde-cn", - "description": null + "title": " 安全预警 - 华为移动宽带产品中存在的DoS安全漏洞 ", + "pubDate": "2024-12-29T01:08:10", + "link": "www.huawei.com/cn/psirt/security-advisories/2015/hw-450878" }, { - "title": "安全通告 - 涉及华为某音箱产品的越界写入漏洞", - "pubDate": "2023-03-01T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2023/huawei-sa-oobwviatp-89e403d4-cn", - "description": null + "title": " 安全预警 - 华为手机FRP绕过安全漏洞 ", + "pubDate": "2024-12-29T01:08:10", + "link": "www.huawei.com/cn/psirt/security-advisories/2016/huawei-sa-20161207-01-smartphone-cn" }, { - "title": "关于E5573Cs-322产品存在拒绝服务漏洞的声明", - "pubDate": "2023-02-10T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-notices/2021/huawei-sn-20230210-01-dos-cn", - "description": null + "title": " 安全预警 - 华为FusionAccess的命令注入漏洞 ", + "pubDate": "2024-12-29T01:08:10", + "link": "www.huawei.com/cn/psirt/security-advisories/2016/huawei-sa-20161130-01-ldap-cn" }, { - "title": "安全通告 - 涉及华为儿童智能手表(Simba-AL00)的身份认证绕过漏洞", - "pubDate": "2023-02-08T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2023/huawei-sa-iabvithcswsa-c385b2dc-cn", - "description": null + "title": " 安全预警 - 华为WLAN AC产品存在mDNS消息处理不当漏洞 ", + "pubDate": "2024-12-29T01:08:10", + "link": "www.huawei.com/cn/psirt/security-advisories/2015/hw-453514" }, { - "title": "安全通告 - 涉及华为全屋智能某软件的不正确的权限分配漏洞", - "pubDate": "2023-02-01T00:00:00", - "link": "//www.huawei.com/cn/psirt/security-advisories/2023/huawei-sa-ipavihwhis-1556afc2-cn", - "description": null + "title": " 安全预警 - FusionAccess产品输入校验漏洞 ", + "pubDate": "2024-12-29T01:08:10", + "link": "www.huawei.com/cn/psirt/security-advisories/2015/hw-453538" } ] \ No newline at end of file diff --git a/resources/JSON/qianxin.json b/resources/JSON/qianxin.json index e7f2deb..3e208bf 100644 --- a/resources/JSON/qianxin.json +++ b/resources/JSON/qianxin.json @@ -1,72 +1,72 @@ [ { - "guid": "https://forum.butian.net/share/4191", - "title": "从域认证协议以及密码凭据机制的角度来看内网渗透", - "description": "本文记录了内网渗透中主机之间的认证以及横向,域渗透相关的协议以及思路的多种方式,", + "guid": "https://forum.butian.net/share/4870", + "title": "XXL-Job GlueFactory classCache 跨任务类残留漏洞", + "description": "XXL-Job GlueFactory classCache 跨任务类残留漏洞", "source": "subject", - "pubDate": "2025-03-14 09:00:00" + "pubDate": "2026-05-12 09:00:01" }, { - "guid": "https://forum.butian.net/share/4181", - "title": "XSS防御-揭秘Unicode溢出与CSP Bypass", - "description": "Unicode溢出与CSP Bypass", + "guid": "https://forum.butian.net/share/4860", + "title": "ActiveMQ CVE-2026-34197 漏洞分析与利用详解", + "description": "来学习一下这个据说由 ai 大人发现的存在 13 年之久的漏洞。", "source": "subject", - "pubDate": "2025-03-13 09:00:01" + "pubDate": "2026-05-11 09:00:03" }, { - "guid": "https://forum.butian.net/share/4170", - "title": "一次渗透过程中的CVE-2022-45460撞洞RCE", - "description": "在一次渗透中我们遇到了雄迈(XiongMai)的uc-httpd,这是一款被全球无数网络摄像机使用的轻量级Web服务器。根据Shodan的数据,大约有7万个该软件的实例在互联网上公开暴露。尽管这款软件存在严...", + "guid": "https://forum.butian.net/share/4813", + "title": "BADUSB的制作以及关于解决BADUSB输入法和大小写问题", + "description": "现在有很多badusb制作的相关文章,以及解决输入法问题的文章,但是我没能找到能够使badusb在所有情况都能成功运行的方法,经过我的研究,我发现了以下的方法能够让badusb在所有情况下都能使用。", "source": "subject", - "pubDate": "2025-03-12 09:00:02" + "pubDate": "2026-05-08 09:00:01" }, { - "guid": "https://forum.butian.net/share/4190", - "title": "记一次某大厂csrf漏洞通过蠕虫从低危到高危", - "description": "本文记载了笔者src漏洞挖掘的经历,如何将一个简单的csrf提高至高危的程度", + "guid": "https://forum.butian.net/share/4851", + "title": "从POC到EXP:从0基础到v8 CVE-2021-38003复现", + "description": "从POC到EXP:从0基础到v8 CVE-2021-38003复现", "source": "subject", - "pubDate": "2025-03-11 09:00:00" + "pubDate": "2026-04-29 15:17:30" }, { - "guid": "https://forum.butian.net/share/4168", - "title": "掌握Django隐秘漏洞:构建内存马,实现命令执行", - "description": "内存马作为一种常见的攻击与权限维持手段,往往多见于Java Web应用中,Django在日常开发中使用频率较高的框架,今天来探寻在Python Web场景下的内存马", + "guid": "https://forum.butian.net/share/4843", + "title": "Psexec是怎么工作的?Psexec与官方服务端组件PsexeSvc.exe的交互", + "description": "本文详细讲解psexec时怎么和PsexeSvc.exe交互,初始化,然后建立互相通讯的管道的,以及psexec和PsexeSvc.exe交互实现的python实现,最后讲解了psexec防御技巧。", "source": "subject", - "pubDate": "2025-03-10 17:38:25" + "pubDate": "2026-04-24 09:00:01" }, { - "guid": "https://forum.butian.net/share/4134", - "title": "使用分支对抗进行webshell bypass", - "description": "使用分支对抗进行webshell bypass", + "guid": "https://forum.butian.net/share/4841", + "title": "Android移动安全第六章_UI欺骗与钓鱼", + "description": "Android 的窗口系统允许多个 App 的界面叠加显示,这个设计本身是为了多任务体验,但也给 UI 欺骗提供了条件", "source": "subject", - "pubDate": "2025-03-10 11:17:55" + "pubDate": "2026-04-23 09:56:31" }, { - "guid": "https://forum.butian.net/share/4162", - "title": "论如何从发现者视角看 apache solr 的 js 代码执行漏洞", - "description": "平时分析和复现了很多 cve,但是一遇到逻辑稍微复杂的,漏洞通告给的位置不是很详细的,代码 diff 很冗杂的,分析起来就会很困难,然后这时候其实就是需要耐心和思维逻辑了,这次花了接近一周的时间来了解这个漏洞,其实这个漏洞倒是不重要,就是逼着自己去锻炼思维和看官方文档的能力,让自己尽量接近发现者的视角,虽然这个漏洞很老,但是我还是感觉发现它的人真的很厉害,前后的分析过程也是花费了整整一周", + "guid": "https://forum.butian.net/share/4840", + "title": "Android移动安全第五章_WebView安全", + "description": "前四章围绕 Android 原生组件展开,这一章进入 Web 领域——WebView 把浏览器引擎嵌入了 App,也把 Web 的攻击面带了进来。", "source": "subject", - "pubDate": "2025-03-10 10:00:01" + "pubDate": "2026-04-17 09:00:00" }, { - "guid": "https://forum.butian.net/share/4171", - "title": "vaadin反序列化链挖掘:tabby静态分析实践", - "description": "在学习前面几条链子的基础上,结合静态分析工具在前面的基础上的一些小发现,包括vaadin的新利用方式以及对tabby的检测缺陷的总结", + "guid": "https://forum.butian.net/share/4842", + "title": "【病毒分析】深度剖析粉丝投稿:海莲花APT超级间谍组织最新免杀样本(从白加黑落地到定制化RUST远控)", + "description": "一、背景概述与海莲花组织简介\n在深入剖析本次的恶意样本之前,我们有必要先了解本次攻击事件的幕后黑手:海莲花(Ocean Lotus),在安全业界也被称为 APT32 或 Canvas Assassin。\n自 2012 年首次...", "source": "subject", - "pubDate": "2025-03-07 09:00:01" + "pubDate": "2026-04-14 09:36:01" }, { - "guid": "https://forum.butian.net/share/4178", - "title": "Tomcat内存马之Upgrade构建调试分析", - "description": "在现今攻防演练日趋常态化和网络安全检测设备检测技术越来越成熟的大环境下,传统的以文件形式驻留的后门文件极其容易检测查杀到,随之\"内存马\"技术开始登上历史的舞台。在JAVA安全知识体系中JAVA内存马也是必须要学习的一个关键板块,本篇文章主要介绍Tomcat-Upgrade型内存马", + "guid": "https://forum.butian.net/share/4836", + "title": "Vue新攻击面-动态路由实战狩猎", + "description": "本文实战案例通过学习0xsdeo师傅文章学习而来,建议通读0xsdeo师傅公众号文章了解动态路由这一攻击面,分享一部分简单基础场景Hook案例,简单的调试往往能打开更多的攻击面。", "source": "subject", - "pubDate": "2025-03-06 09:00:02" + "pubDate": "2026-04-14 09:30:10" }, { - "guid": "https://forum.butian.net/share/4173", - "title": ".Net Core下的内存马", - "description": "在审计了一套.net core的CMS后的扩展延伸", + "guid": "https://forum.butian.net/share/4835", + "title": "「JavaWeb审计盲点」List 集合误区:批量操作下的权限逃逸", + "description": "本文将深入剖析 List 集合在批量查询、批量更新、批量导出等场景下的典型越权模式。这些风险并非源于明显的代码缺陷,而是藏在\"合理的业务逻辑\"与\"容器特性的误用\"之间——属于最难被自动化工具发现、却最易被攻击者利用的 Corner Case。", "source": "subject", - "pubDate": "2025-03-05 09:00:00" + "pubDate": "2026-04-09 09:00:01" } ] \ No newline at end of file diff --git a/resources/JSON/seebug.json b/resources/JSON/seebug.json index 8e6788d..b6b3c65 100644 --- a/resources/JSON/seebug.json +++ b/resources/JSON/seebug.json @@ -1,122 +1,122 @@ [ { - "title": "机器学习的逻辑回归模型\n", - "link": "https://paper.seebug.org/3303/", - "description": "\n\n\n .katex img {\n display: block;\n position: absolute;\n width: 100%;\n height: inherit;\n }\n\n作者:0x7F@知道创宇404实验室\n日期:2025年2月28日\n1. 前言\n在「机器学习的线性回归模型」文章中,我们学习了监督学习中如何使用线性回归模型拟合连...\n", - "pubDate": "Thu, 13 Mar 2025 07:37:00 +0000", - "guid": "https://paper.seebug.org/3303/", + "title": "GLiGuard:面向大语言模型安全防护的模式条件分类方法", + "link": "https://paper.seebug.org/3485", + "description": "作者:Urchade Zaratiana, Mary Newhauser, George Hurn-Maloney, Ash Lewis 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2605.07982v1 摘要 保障大语言模型(LLM)输出安全合规、符合政策要求,需要能跨多安全维度实时扩展的内容审核机制。然而,当前最优的安全护栏模型均基于70亿–27...", + "pubDate": "Mon, 11 May 2026 16:40:13 +0800", + "guid": "https://paper.seebug.org/3485", "category": "AI安全" }, { - "title": "「深蓝洞察」2024年度最憋屈的漏洞披露\n", - "link": "https://paper.seebug.org/3304/", - "description": "作者:DARKNAVY\n原文链接:https://mp.weixin.qq.com/s/Y8-wT88VnLeMUiD-HssPyw\n在网络安全领域,漏洞披露一直被视为保护用户的重要环节,但在现实中,这一过程却充满了争议和矛盾。究竟什么才算得上“负责任的披露”?当厂商在信息公开和补丁发布上占据主导地位,而安全研究者则需要耗费大量精力进行沟通与博弈,这一模式是否还能真正实现保护用户安全的初衷?...\n", - "pubDate": "Wed, 12 Mar 2025 08:28:00 +0000", - "guid": "https://paper.seebug.org/3304/", - "category": "经验心得" - }, - { - "title": "「深蓝洞察」2024年度最“安全”的防线\n", - "link": "https://paper.seebug.org/3302/", - "description": "作者:DARKNAVY\n原文链接:https://mp.weixin.qq.com/s/LaM5iz_EKbAK_lkaAcBshw\n在攻防对抗日益激烈的2024年,安全软件一直被视为企业安全防线的重要基石。然而,这些安全软件本身也可能存在漏洞,甚至被攻击者利用作为入侵的跳板来对用户造成危害。多年来,因为安全软件而导致的事故不禁让人产生一个疑问——安全软件真的可信吗?\n安全软件被滥用为攻击工...\n", - "pubDate": "Tue, 11 Mar 2025 08:39:00 +0000", - "guid": "https://paper.seebug.org/3302/", - "category": "经验心得" - }, - { - "title": "「深蓝洞察」2024年度最难以阻挡的攻防趋势\n", - "link": "https://paper.seebug.org/3301/", - "description": "作者:DARKNAVY\n原文链接:https://mp.weixin.qq.com/s/lUA03YjBiCAatcJh-bUHEQ\n近年来,漏洞攻防不断演进。从多年前仅需一个栈溢出就能攻破系统,到如今需要运用各种精妙的手法来突破系统的层层防御。“盾”与“矛”始终处于动态对抗:每当新的防御措施出现,新的攻击手段随之而来。防御机制的升级促使攻击者寻找新的突破口,而攻击方法的创新又推动着防御技术...\n", - "pubDate": "Mon, 10 Mar 2025 08:19:00 +0000", - "guid": "https://paper.seebug.org/3301/", - "category": "经验心得" - }, - { - "title": "机器学习的线性回归模型\n", - "link": "https://paper.seebug.org/3300/", - "description": "\n\n\n .katex img {\n display: block;\n position: absolute;\n width: 100%;\n height: inherit;\n }\n\n作者:0x7F@知道创宇404实验室\n日期:2025年2月28日 \n1. 前言\n跟随着 ChatGPT 等大语言模型掀起的人工智能的浪潮,在这个时间点学习 A...\n", - "pubDate": "Fri, 07 Mar 2025 07:22:00 +0000", - "guid": "https://paper.seebug.org/3300/", + "title": "基于大语言模型的 AI 智能体安全威胁与防御系统性综述——分层攻击面框架", + "link": "https://paper.seebug.org/3484", + "description": "作者:Kexin Chu 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/pdf/2604.23338v2 摘要 智能体AI系统可跨多会话规划、保留记忆、调用外部工具并与对等智能体协同,无状态大语言模型则不具备这些能力。现有安全分类体系按攻击类型(如提示注入、越狱)划分威胁,却未说明脆弱的架构组件或威胁显现的时间尺度。本文直接解决这些结构性问题,提出分层攻击面模型(...", + "pubDate": "Sat, 09 May 2026 16:53:56 +0800", + "guid": "https://paper.seebug.org/3484", "category": "AI安全" }, { - "title": "Llama 的悖论:深入探索 Llama.cpp 的堆迷宫,从堆溢出到远程代码执行\n", - "link": "https://paper.seebug.org/3299/", - "description": "作者:Patrick Peng \n译者:知道创宇404实验室翻译组\n原文链接:https://retr0.blog/blog/llama-rpc-rce\n我一直对 Llama.cpp 情有独钟,它堪称我在人工智能与机器学习研究领域孜孜以求的“终极目标”。不仅如此,能在如此复杂且成熟的人工智能项目中挖掘出堆栈/堆溢出导致的远程代码执行漏洞,听起来就格外酷炫。当然,我内心深处渴望在人工智能项目中...\n", - "pubDate": "Thu, 06 Mar 2025 06:27:00 +0000", - "guid": "https://paper.seebug.org/3299/", - "category": "漏洞分析" - }, - { - "title": "Emoji攻击:增强针对Judge LLMs检测的越狱攻击\n", - "link": "https://paper.seebug.org/3297/", - "description": "作者:Zhipeng Wei, Yuqi Liu, N. Benjamin Erichson\n译者:知道创宇404实验室翻译组\n原文链接:https://arxiv.org/html/2411.01077v2\n摘要\n越狱(Jailbreaking)技术可以欺骗大型语言模型(LLMs),使其生成受限制的输出,从而构成严重威胁。其中一种防御方法是使用另一个 LLM 作为 Judge(裁判)来评估...\n", - "pubDate": "Tue, 04 Mar 2025 09:37:00 +0000", - "guid": "https://paper.seebug.org/3297/", + "title": "ReTokSync:面向生成式语言隐写的自同步分词消歧方法", + "link": "https://paper.seebug.org/3481", + "description": "作者:Yaofei Wang, Rui Wang, Weilong Pang等 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2604.25486v1 摘要 生成式语言隐写(GLS)通过将秘密信息嵌入自然语言生成过程实现隐蔽通信。然而在实际部署中,GLS易受分词歧义影响:相同的表层文本在接收端可能被重新分词为不同的token序列,破坏通信双方共享的解码状...", + "pubDate": "Fri, 08 May 2026 16:42:48 +0800", + "guid": "https://paper.seebug.org/3481", "category": "AI安全" }, { - "title": "模型序列化攻击\n", - "link": "https://paper.seebug.org/3298/", - "description": "译者:知道创宇404实验室翻译组\n原文链接:https://github.com/protectai/modelscan/blob/main/docs/model_serialization_attacks.md\n机器学习(ML)模型是基于机器学习的应用程序的核心资产。安全地存储和检索模型对成功至关重要。根据使用的机器学习库,模型可以以多种常见格式保存。流行的选择包括:Pickle、HDF5...\n", - "pubDate": "Tue, 04 Mar 2025 07:09:00 +0000", - "guid": "https://paper.seebug.org/3298/", + "title": "素域 PINI:后量子 NTT 掩码的机器验证合成定理", + "link": "https://paper.seebug.org/3480", + "description": "作者:Ray Iskander,Khaled Kirah 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/abs/2604.25878v1 摘要 本文是后量子密码掩码数论变换(NTT)硬件形式化验证分析系列论文的第六篇。第一篇论文[1]建立了 QANARY 平台的结构依赖分析,第二篇论文[2]量化了部分 NTT 掩码下的安全裕度。布尔掩码的合成理论通过无干扰(NI)...", + "pubDate": "Wed, 06 May 2026 16:44:36 +0800", + "guid": "https://paper.seebug.org/3480", "category": "AI安全" }, { - "title": "关于 Chat Template 注入方式的学习\n", - "link": "https://paper.seebug.org/3296/", - "description": "作者: dawu@知道创宇404实验室\n日期: 2025年2月28日 \n1. 前言\n伴随着年后 DeepSeek R1 模型的火热,号称能运行 DeepSeek R1 “满血版” 的 Ktransformers 框架也受到了大量关注。在使用该框架和阅读相关源码时,我发现框架在借助聊天模版(chat template) 将用户输入转化为输入模型的 token 列表的过程中,可能会存在类似于拼...\n", - "pubDate": "Mon, 03 Mar 2025 06:35:00 +0000", - "guid": "https://paper.seebug.org/3296/", + "title": "Google DeepMind:AI 智能体陷阱", + "link": "https://paper.seebug.org/3479", + "description": "作者:Matija Franklin, Nenad Tomašev等 译者:知道创宇404实验室翻译组 原文链接:https://blog.qiaomu.ai/api/images/document/2026/04/603f0cae8cd8ab94-ai-agent-trap.pdf 摘要 自主AI智能体日益在网络中自主行动,它们面临一种全新挑战:信息环境本身。由此产生了一个关键安全漏洞,我们称之...", + "pubDate": "Fri, 24 Apr 2026 16:54:27 +0800", + "guid": "https://paper.seebug.org/3479", "category": "AI安全" }, { - "title": "从零开始搭建:基于本地 DeepSeek 的 Web 蜜罐自动化识别\n", - "link": "https://paper.seebug.org/3295/", - "description": "作者:wh0am1i@知道创宇404实验室\n日期:2025年2月28日 \n1. 前言\npocsuite3 框架可以通过 --dork 或 --dork-zoomeye 参数获取 ZoomEye 网络空间测绘平台的搜索引擎数据。但随着近几年网络空间领域的攻防对抗升级,导致网络空间中存在大量的蜜罐。为了过滤掉这些蜜罐,ZoomEye 中加入了自动标注蜜罐的识别算法, 同时 pocsuite3 ...\n", - "pubDate": "Fri, 28 Feb 2025 06:18:00 +0000", - "guid": "https://paper.seebug.org/3295/", + "title": "合法终端管理软件遭滥用:疑似银狐攻击事件分析与溯源", + "link": "https://paper.seebug.org/3478", + "description": "作者:知道创宇高级威胁情报团队 一、事件概述 近期,我们在客户现场应急响应中排查到一起新型攻击事件。攻击者伪造常用工具安装包诱导执行,随即部署一款带有合法数字签名的终端管理软件。经技术溯源确认,该程序具备主机信息收集、远程控制等完整恶意能力,其 C2 基础设施与 “银狐” 高度关联。由于合法数字签名的天然 “免杀” 特性,该恶意程序可轻易绕过主流杀毒软件检测,实现隐蔽入侵与长期控制。 银狐简介 银...", + "pubDate": "Wed, 15 Apr 2026 03:31:00 +0800", + "guid": "https://paper.seebug.org/3478", + "category": "威胁情报" + }, + { + "title": "SkillTrojan:针对基于技能的智能体系统的后门攻击", + "link": "https://paper.seebug.org/3477", + "description": "作者:Yunhao Feng, Yifan Ding, Yingshui Tan等 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2604.06811v1/https://arxiv.org/html/2604.06811v1 摘要 基于技能的智能体系统通过组合可复用技能完成复杂任务,在提升模块化与可扩展性的同时,引入了尚未被充分研究的安全攻击面。本文提...", + "pubDate": "Thu, 09 Apr 2026 08:26:00 +0800", + "guid": "https://paper.seebug.org/3477", "category": "AI安全" }, { - "title": "DeepSeek 启示:深度揭秘基于 PTX 的 GPU 底层优化技术\n", - "link": "https://paper.seebug.org/3294/", - "description": "作者:启明星辰ADLab\n原文链接:https://mp.weixin.qq.com/s/FVVes7UIK_OORUk3fXy9mQ\n一、概述\n近日,DeepSeek连续不断地开源了多个项目,一时间引发了关于GPU底层优化的热潮,这在如今国内算力被广泛打压的背景下,给我国在现代高性能计算(HPC)和人工智能(AI)领域带来了希望,其中尤其引人瞩目的是关于底层PTX优化技术引入,这在一定程度...\n", - "pubDate": "Thu, 27 Feb 2025 07:24:00 +0000", - "guid": "https://paper.seebug.org/3294/", + "title": "GUARD‑SLM:面向小语言模型、基于令牌激活的越狱攻击防御方法", + "link": "https://paper.seebug.org/3476", + "description": "作者:Md. Jueal Mia1, Joaquin Molto1, Yanzhao Wu1, M. Hadi Amini 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2603.28817v1/https://arxiv.org/html/2603.28817v1 摘要 小语言模型(SLM)正成为大语言模型(LLM)高效且经济可行的替代方案,在计算成本...", + "pubDate": "Fri, 03 Apr 2026 02:48:00 +0800", + "guid": "https://paper.seebug.org/3476", "category": "AI安全" }, { - "title": "银狐突袭!DeepSeek本地化部署暗藏“致命陷阱”\n", - "link": "https://paper.seebug.org/3293/", - "description": "作者:启明星辰ADLab\n原文链接:https://mp.weixin.qq.com/s/VUzwaR7eti2YoNebGFz80A\n一、前言\n近期,国产大模型DeepSeek凭借其高效的推理能力、创新性的优化技术、低门槛本地化部署能力、灵活的开源商业授权等,迅速成为开源生态中的“现象级选手”。然而,技术普及的加速期往往伴随着网络安全攻防对抗的升级。当前,大量政府、企业和个人开发者在基于D...\n", - "pubDate": "Thu, 27 Feb 2025 02:47:00 +0000", - "guid": "https://paper.seebug.org/3293/", + "title": "静默颠覆:通过卫星系统供应链植入物实施的传感器欺骗攻击", + "link": "https://paper.seebug.org/3475", + "description": "作者:Jack Vanlyssel, Gruia-Catalin Roman, Afsah Anwar 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2603.10388v1/https://arxiv.org/html/2603.10388v1 摘要 欺骗攻击是地面系统最具破坏性的网络威胁之一,而在太空中这类威胁愈发危险——卫星难以在轨维修,且运营方依...", + "pubDate": "Tue, 24 Mar 2026 09:47:00 +0800", + "guid": "https://paper.seebug.org/3475", "category": "AI安全" }, { - "title": "使用 DeepSeek-R1 在固件漏洞挖掘领域的新实践\n", - "link": "https://paper.seebug.org/3292/", - "description": "作者:启明星辰ADLab\n原文链接:https://mp.weixin.qq.com/s/rZ4iGXs2O_xYD1yEOyu3CQ\n1. 前言\n在数字化时代,固件是硬件设备的核心软件组件,直接控制着硬件的运行状态和功能,其安全性至关重要。一旦固件存在安全漏洞,黑客即可利用来攻击设备的运行或者控制设备发起其它网络攻击,典型有Mirai病毒利用设备固件漏洞发起大规模的分布式拒绝服务。因此,挖...\n", - "pubDate": "Wed, 26 Feb 2025 07:20:00 +0000", - "guid": "https://paper.seebug.org/3292/", + "title": "增强网络入侵检测系统:一种抵御对抗攻击的多层集成方法", + "link": "https://paper.seebug.org/3474", + "description": "作者:Nasim Soltani, Shayan Nejadshamsi等 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2603.10413v1/https://arxiv.org/html/2603.10413v1 摘要 对抗样本会对机器学习(ML)算法构成严重威胁。若被用于操控基于机器学习的网络入侵检测系统(NIDS)行为,将危及网络安全。本研究旨...", + "pubDate": "Mon, 23 Mar 2026 08:31:00 +0800", + "guid": "https://paper.seebug.org/3474", "category": "AI安全" }, { - "title": "Fuzz 工作流解析与 AI 引入方案分享\n", - "link": "https://paper.seebug.org/3291/", - "description": "作者:ghost461@知道创宇404实验室\n时间:2025年2月26日\n本文为知道创宇404实验室内部分享沙龙“404 Open Day”的议题内容,作为目前团队AI安全研究系列的一部分,分享出来与大家一同交流学习。\n1. 概述\n本文受 Google 安全博客的《Leveling Up Fuzzing: Finding more vulnerabilities with AI》启发,结合自...\n", - "pubDate": "Wed, 26 Feb 2025 06:10:00 +0000", - "guid": "https://paper.seebug.org/3291/", + "title": "CUDA Agent:面向高性能 CUDA 内核生成的大规模智能体强化学习", + "link": "https://paper.seebug.org/3473", + "description": "作者:Weinan Dai, Hanlin Wu, Qiying Yu等 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2602.24286v1/https://arxiv.org/html/2602.24286v1 摘要 GPU内核优化是现代深度学习的基础,但仍是一项高度专业化的任务,需要深厚的硬件专业知识。尽管大语言模型(LLM)在通用编程任务中表现...", + "pubDate": "Tue, 17 Mar 2026 09:50:00 +0800", + "guid": "https://paper.seebug.org/3473", "category": "AI安全" }, { - "title": "「深蓝洞察」2024年度最悲剧的后门\n", - "link": "https://paper.seebug.org/3290/", - "description": "作者:DARKNAVY\n原文链接:https://mp.weixin.qq.com/s/BZtSTpTQbNiAY_KDhnqc8Q\n“看到了软件的源码,就意味着没有后门吗?”\n1983年的图灵奖颁奖仪式上,Ken Thompson抛出了这个问题。作为历史上唯三在40岁以下获得图灵奖的传奇之一,他在获奖演讲中向听众展示了如何通过在编译器中植入后门来骇入由无害源码编译得到的Unix系统。Ken...\n", - "pubDate": "Tue, 25 Feb 2025 09:17:00 +0000", - "guid": "https://paper.seebug.org/3290/", - "category": "经验心得" + "title": "Unmasking SilverFox’s New Trends: Decoding Evasion Tactics, Domain Impersonation, and Mass-Generated Fake Software", + "link": "https://paper.seebug.org/3472", + "description": "Author: Knownsec 404 Advanced Threat Intelligence Team I. Introduction SilverFox has become one of the most active cyber threats in recent years, targeting managerial and finance staff in organization...", + "pubDate": "Fri, 13 Mar 2026 08:30:00 +0800", + "guid": "https://paper.seebug.org/3472", + "category": "威胁情报" + }, + { + "title": "基于图像的提示注入:通过视觉嵌入的对抗性指令劫持多模态大语言模型", + "link": "https://paper.seebug.org/3471", + "description": "作者:Neha Nagaraja, Lan Zhang, Zhilong Wang 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2603.03637v1/https://arxiv.org/html/2603.03637v1 摘要:多模态大语言模型(MLLMs)融合视觉与文本能力赋能各类应用,但这种融合也引入了新的安全漏洞。本文研究基于图像的提示注入(...", + "pubDate": "Wed, 11 Mar 2026 01:29:00 +0800", + "guid": "https://paper.seebug.org/3471", + "category": "AI安全" + }, + { + "title": "虚假 OpenClaw 安装程序如何传播 GhostSocks 恶意软件", + "link": "https://paper.seebug.org/3470", + "description": "作者:Jai Minton, Ryan Dowd 原文链接:https://www.huntress.com/blog/openclaw-github-ghostsocks-infostealer/https://www.huntress.com/blog/openclaw-github-ghostsocks-infostealer 摘要 信息窃取型恶意软件是针对面向公众系统发起严重攻击的初始访问...", + "pubDate": "Tue, 10 Mar 2026 01:45:00 +0800", + "guid": "https://paper.seebug.org/3470", + "category": "情报分析" + }, + { + "title": "当 AI Agent 拥有系统权限:OpenClaw 安全风险全景分析", + "link": "https://paper.seebug.org/3469", + "description": "作者:知道创宇积极防御实验室 完整的 OpenClaw 安全实践 Skill、自动化审计工具已在 GitHub 开源。项目地址:https://github.com/knownsec/openclaw-security/https://github.com/knownsec/openclaw-security 一、背景说明 随着 AI Agent 技术的快速演进,具备自动化决策与自主执行能力的开源...", + "pubDate": "Fri, 06 Mar 2026 07:34:00 +0800", + "guid": "https://paper.seebug.org/3469", + "category": "AI安全" } ] \ No newline at end of file diff --git a/resources/JSON/sougou-wx.json b/resources/JSON/sougou-wx.json index 4fe20e2..9bb4265 100644 --- a/resources/JSON/sougou-wx.json +++ b/resources/JSON/sougou-wx.json @@ -1,266 +1,287 @@ { "银行测试": [ - { - "title": "一周内连续三家美国银行“爆雷”!会否演变成金融危机?", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-31xeF5tPKwMYK6EhXVOSA6VqXa8Fplpd9eGY9uACgt2whpM3uArsKJhtPcW3yngI2os4opoqkJ3CVlyQRDaV_HvuZGgEiqH5qWVyu8f-CdizGGuzUBaUw7bsimoDXdO0tkjwoWmP-IR9FiZxR7Rc1qNIqBowcxeVnIZeM8ubsGmWg6T-TWZRp5hMz8sMk5-v1orwBepw7bhs5eBgmN3LoYQ..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=4B41706ADC842F9947407703731705C747D32AAD67D3A540", - "description": "“压力测试本是帮助银行评估资产风险的有效手段,这(监管“松绑”)为硅谷银行的关闭埋下了伏笔.”新加坡国立大学客座教授白...", - "author": "新华网思客", - "pubDate": "2023-03-16 10:44:22" - }, - { - "title": "工商银行福建自贸试验区平潭片区分行、福州分行、福州鼓楼支行被处罚 累计罚款130万元", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-31xeF5tPKwMYK6EhXVOSA6VqXa8Fplpd9_kxI_VvZmKgIBPWuqWqxGjP3L13Sx5Z8ue1Bt6fMWTNbF8uHcSw7yotWKb45hPYOaO6s4gjlb4BSJWEIov6vVWlkKRxOU5zRnkoYXaXVF4CL4XDiNBnzLCkPG3h6guywoth2eDg90PDqC7YyxYWm08OGcMk1MyMvIg8f5XKwm5pFH6In5Ei3zg..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=4B41706ADC842F9947407703731705C747D32AAD67D3A540", - "description": "近日,福建省银保监局对工商银行福建自贸试验区平潭片区分行、福州分行、福州鼓楼支行开出罚单,罚款合计130万元,4名当事人被...", - "author": "观八闽", - "pubDate": "2022-02-22 15:30:56" - }, - { - "title": "银行月榜:大行拼命玩“七夕”,微博为何失宠了?", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-31xeF5tPKwMYK6EhXVOSA6VqXa8Fplpd9IchiyQiq6LeEKaAPMU9juA1bCFHqCk42rdC7dGu5J0TJV_TSWviegeqZ9YXMeCE_1wsqouY29bLxCPTCe8uqEk8CV1BaKlRyHJGOUCh3xLg9XozB208ctDIH93tc2FnHL_p4NJMsWg5LVTThT-sYBgI8wmJ55I-ygjm-qJq0CU9flztgI7RZ1g..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=4B41706ADC842F9947407703731705C747D32AAD67D3A540", - "description": "新媒体管家中国银行业新媒体8月排行榜,进入总榜TOP10的银行分别是:中国工商银行、中国银行、中国建设银行、上海浦东发展银...", - "author": "人民网舆情数据中心", - "pubDate": "2017-09-14 08:16:46" - }, - { - "title": "【月榜】12月银行新媒体:工行成功问鼎 上海银行挤进前10", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DCOjX66B0wQAvgZg6-4mCHKVgrFeYQugDlpmUNjkvxgvOqXyesYm_zYIpLvlCDM0AmAb0chvsD2fNyhCa8My6Bb-qjlExxIFttyhUQaZsCVtv3xb71Sa6r9ZTma9nR-jBnBcq7_vYLV53c1tpARGY_wMmV95nnREF-XH7MSZGz6MxI276v7hj8etuA22uSlmmQLGdQeR7pI3fwC5XTKkq9kDNJdxFew8RNmF5J1xVuqKMCAHGR_7TST1Ck-cB6ZhGHapdNWZDDb-iZqwg0yoRFw.&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=4B41706ADC842F9947407703731705C747D32AAD67D3A540", - "description": "本榜单共对部分国内银行12月份的新媒体综合能力进行考核,涵盖包括政策性银行、邮政储蓄银行、国有商业银行、股份制商业银行、...", - "author": "人民网舆情数据中心", - "pubDate": "2017-01-12 17:06:08" - }, - { - "title": "美国又一银行倒闭!美联储怎么办?中国受影响大吗?", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-31xeF5tPKwMYK6EhXVOSA6VqXa8Fplpd9eGY9uACgt2whpM3uArsKJhtPcW3yngI2os4opoqkJ3CVlyQRDaV_Hro8hmfPwsD9irSLU7ZTXQZPusXiTVPor0eS9LIJKhnse38AsvaT-nG6hJL6b8Kzeyje4PArh_xRW1V5Suf8pEzooHBWUQT7cxZpbLyIjptUldFTpL_yObZ6VKrzu_4XKA..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=4B41706ADC842F9947407703731705C747D32AAD67D3A540", - "description": "规定资产超过500亿美元的银行必须参加美联储年度压力测试,旨在通过更严格监管避免2008年国际金融危机重演.特朗普上台后,将...", - "author": "新华网思客", - "pubDate": "2023-05-05 13:51:35" - }, - { - "title": "支付宝微信拉响警报!40多家银行联合起来,要“抢”你手机", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-31xeF5tPKwMYK6EhXVOSA6VqXa8Fplpd9-0BJzlLy1eTjFD1JRuvsfpVuBnJzdO4GM_We8LBGBZfzv5nkrpRBB0MErXwD6mYx_6V1D09fTT_5d3JnQMhdgHrYwSoI_oc0AiMVx1lwOJ1rVNI_Jhpps3az_iRjW0e4QuAW_QYdi8_rH0mz8XQ2U0luG9iCLg784j_DiAYpueDYl_Q5RRZQjg..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=4B41706ADC842F9947407703731705C747D32AAD67D3A540", - "description": "招商银行等全国性商业银行,另有近60家商业银行正在加紧测试并即将开通,年内其他主要银行也将基本实现全部开通.受理方面,全...", - "author": "人民网", - "pubDate": "2017-05-29 08:02:43" - }, { "title": "一家银行最多8个APP!功能交叉重叠,是时候该瘦身了……", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-31xeF5tPKwMYK6EhXVOSA6VqXa8Fplpd994RykCd99wpOEkXvzxCBzIVUS1LA4FKRqdNCxaFpwnfejFPgpux26ggsJHZMa7xJ7gsX7ZN6JdPWaYdBoLjRwY9SIttIWfKJ4tvsU0VTsoST1rCBrLSNNpFWMnV6TSSUZZaKVHYlDmU51kteFU4c75kSP8zcYxYIrJ-Xg-ls-jvzAjcIGepUqA..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=4B41706ADC842F9947407703731705C747D32AAD67D3A540", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2cFW44AltY2WCJ5l9OhUYrVqXa8Fplpd9KoYwdA8ZHDmVJ5K3gtm_7UqHK1XHndzMvEM7zI23eBZG77Ynky5qc4Gd6_JorY9hEIiU883SdeJejEDAjszo1V8S7EAY5nGR9dzlaIyLr8yHTE8RypjAbCVukWal5eCzqkBxa3mGpnHwE7MDzZVT_tzeUj570nOO8I0OegSg9ye54z_tGSZTqA..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=B0AC037689ADCAB46B6C396C5C51032B6BF5DA3A6A09F15E", "description": "“你想买理财产品的话,请先下载注册我们银行的APP.”每当走进银行,这样的场景极为常见.近年来,为了增加获客,手机APP成...", "author": "中国网财经", "pubDate": "2019-06-14 17:18:12" }, + { + "title": "工商银行福建自贸试验区平潭片区分行、福州分行、福州鼓楼支行被处罚 累计罚款130万元", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2cFW44AltY2WCJ5l9OhUYrVqXa8Fplpd9-6BvD1Yq7wCMovCfAMXaVKbIiA8J2QKK9p6l05rYt8Xl7qV0Na5UYqEvTdK60C1lIZ6od8190BOVQTgrTDplGxsztgXopG69x-plIcYbLZh0whQXEVf3WN4pkJqCnU216JvBf4MSjd-tlekilGD9daL6mcwYf2jfW65coSCMyGvs46dn8Efgxg..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=B0AC037689ADCAB46B6C396C5C51032B6BF5DA3A6A09F15E", + "description": "近日,福建省银保监局对工商银行福建自贸试验区平潭片区分行、福州分行、福州鼓楼支行开出罚单,罚款合计130万元,4名当事人被...", + "author": "观八闽", + "pubDate": "2022-02-22 15:30:56" + }, + { + "title": "警惕 犯罪分子用美容卡到ATM机就能提走你银行卡里的钱 还有这事?", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DDqNlQ9HgnuF7uVq8v9H5IeVgrFeYQugDhBEf4EF8oKrfbCgxSgKqyUQcR05EK0k2hs0mar4IMdiYNuh71rRq0c8vtA-WXRH5TNIk2koF_4gcbjtzha5D27Z5Ex1_ZWZybngqsDxgDgrhQ7fIpmsTTEAmms046vdata00huqHG2Z4m7y8WmQnSlissa5-yfF6Tcjc8o-otmMMIWBNHQMUemmJzBIgAXm3P4sMdRewV-5qC0ulZ0SI5E3zlvORma9v9FCX1nrthA_iZqwg0yoRFw.&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=B0AC037689ADCAB46B6C396C5C51032B6BF5DA3A6A09F15E", + "description": "近日,广西玉林警方破获了一起银行卡系列诈骗案,打掉了一个专门伪造银行卡的犯罪团伙.直到案件破获时,很多受害者还不知道自...", + "author": "央视新闻", + "pubDate": "2017-01-14 16:40:10" + }, { "title": "今年银行保险业监管工作14大要点:坚决落实“房住不炒”要求 深入推进网络借贷专项整治……", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-31xeF5tPKwMYK6EhXVOSA6VqXa8Fplpd994RykCd99wpOEkXvzxCBzIVUS1LA4FKRqdNCxaFpwnfejFPgpux26sA3XGUDtx3axmAHlXnZgn7rN8UZh4aW0K-vLb1GPNhF2FXQ3glcrc5YLGgLbZ69GCWpbNclo9q8uWawWGL3Do-Kq9tdkvf-V7gbltH5y0CEk6ESiMI9-6w89kyxDwoXvg..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=4B41706ADC842F9947407703731705C747D32AAD67D3A540", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2cFW44AltY2WCJ5l9OhUYrVqXa8Fplpd9KoYwdA8ZHDmVJ5K3gtm_7UqHK1XHndzMvEM7zI23eBZG77Ynky5qcwSaAFTIuX7HgEqAe88WQeCr_tsUUjb0WOhY8OEeo1wrkvv3pk51WlB7QikddK-DCW5iONfo9FJmUNe9VnfvLlLZPVRJXTSzZqFWJmJm75z4RMErtoZI6KZOJBjQH7pCxQ..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=B0AC037689ADCAB46B6C396C5C51032B6BF5DA3A6A09F15E", "description": "稳妥处置高风险机构,压实各方责任,全力做好协调、配合和政策指导.继续拆解影子银行,特别要大力压降高风险影子银行业务,防止死灰复燃.坚决落实“房住不炒”要求,严格执行授信集中度等监管规则,严防信贷资金违规流入房地产领域.", "author": "中国网财经", "pubDate": "2020-01-12 13:33:01" }, + { + "title": "美联储最新消息!要求银行多备“家底”,特别是→", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2cFW44AltY2WCJ5l9OhUYrVqXa8Fplpd9PWj6pQVgGWgUJCUdFDxNGpd-8r-rClY1VUIlgC86Ks9PlALAN0mokszeJp05ecXvJd66OCDT-noaZ903y2_ghiWWkdvOTstQnl2lpTxbSOKbume7tqBprq8f2bjBlOmmci2fWpOoC7WN4nkljDt72c4F5YUlBVd6HIxbzpLrR8Ty08OLTBhW0A..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=B0AC037689ADCAB46B6C396C5C51032B6BF5DA3A6A09F15E", + "description": "扩大美联储年度银行压力测试范围等. 美国银行业游说团体:更高的资本要求将推升借贷成本今年3月以来,美国硅谷银行、签名银行...", + "author": "央视财经", + "pubDate": "2023-07-12 16:15:05" + }, + { + "title": "平安银行、宁波银行等试水支付宝信用卡取现功能,缘何引发舆论争议?", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2cFW44AltY2WCJ5l9OhUYrVqXa8Fplpd9zqTPYub0rtGHsRkqMyz6S0mbR2TNc1FVW_DNHyNoMXrhyBMnZfLtZZajLbYvNv-aZtHOWehJkXgKaO9YfC2MYRz92Qg7s3BjpBPT5_WEc-oY7i-69tRh4fP2oYix8T3cLC9jqPgfYivw1dK0-r76BxWkNnK3oS2oIEmBHaN5OqNj32-j2KiwUw..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=B0AC037689ADCAB46B6C396C5C51032B6BF5DA3A6A09F15E", + "description": "话题#微信支付宝测试信用卡取现#与#有银行试水信用卡取现:年利率超18%#分别登上微博、头条热搜榜.(来源:人民众云)(来源...", + "author": "人民网舆情数据中心", + "pubDate": "2022-08-31 19:55:10" + }, + { + "title": "美国又一银行倒闭!美联储怎么办?中国受影响大吗?", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2cFW44AltY2WCJ5l9OhUYrVqXa8Fplpd9uheufABHvc0rK4J8V2I1-hRRAfNabjqDasZ84l1kd-OjQ08dRQo6B7uli6hCnqQZRbfBYkhrVX0h8j5benw5vNu3zExeCFnyK-kAjs7k1p5qJPcDPpsycfhmYelRS659qX8Zs8kdF2ieRfpZoNbAAT9-VdELmX3z8wCowYYO9RpFH6In5Ei3zg..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=B0AC037689ADCAB46B6C396C5C51032B6BF5DA3A6A09F15E", + "description": "规定资产超过500亿美元的银行必须参加美联储年度压力测试,旨在通过更严格监管避免2008年国际金融危机重演.特朗普上台后,将...", + "author": "新华网思客", + "pubDate": "2023-05-05 13:51:35" + }, { "title": "惊人 | 手机这样充电严重泄露隐私 1秒操控你的银行账户", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DCOjX66B0wQAvgZg6-4mCHKVgrFeYQugDhBEf4EF8oKrfbCgxSgKqyUQcR05EK0k2hs0mar4IMdiYNuh71rRq0eFifmgfhkzbK3MsPyC4ya4w3uOr8wpkTZe-rcwPrNFQINVjsV5vJ1wOlHEOuNWsLsxmGHQK1jyCZ6MwAG9p7EODSTxKXCJbgrpZDj-zG_ndQ3GsP0o8f2FtAn0-35eJ8OzP63VZ-EaTF4-aXtL55m17xploZKyLyaRGHxSWNMLU7g3Ftgn3b4uiZqwg0yoRFw.&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=4B41706ADC842F9947407703731705C747D32AAD67D3A540", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DDqNlQ9HgnuF7uVq8v9H5IeVgrFeYQugDhBEf4EF8oKrfbCgxSgKqyUQcR05EK0k2hs0mar4IMdiYNuh71rRq0eFifmgfhkzbK3MsPyC4ya4w3uOr8wpkTZe-rcwPrNFQINVjsV5vJ1wOlHEOuNWsLsxmGHQK1jyCZ6MwAG9p7EODSTxKXCJbgrpZDj-zG_ndQ3GsP0o8f2FA_83mFD32h75GHVvFBGNv2Tzknbz6RuzexG-N04Hz4oIf3YKJnVFf-yJQUs78qJmiZqwg0yoRFw.&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=B0AC037689ADCAB46B6C396C5C51032B6BF5DA3A6A09F15E", "description": "但你要小心了,如果不谨慎,一秒就可能控制你的银行账户!测试:手机用充电桩可被操控央视记者做了一个测试,曝光了不法分子通...", "author": "央视新闻", "pubDate": "2017-04-16 13:37:16" + }, + { + "title": "支付宝微信拉响警报!40多家银行联合起来,要“抢”你手机", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2cFW44AltY2WCJ5l9OhUYrVqXa8Fplpd9AYA-h3Tgec-q2b6HvboFYABWxB8TtQ0u9aMRasWkVg12b05rjLGH-lvAuk0xK_Kpwm6ZL6huOFAmNoC05CQKCLqRMZPaSMtml5y-gsSlPr0sI-golpx-57lByKd5untSPKoTE79i7bkdg13pGEdkZEwJIG0xkyGmz6BR2wDtgeiq3X8EKMKOIA..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=B0AC037689ADCAB46B6C396C5C51032B6BF5DA3A6A09F15E", + "description": "招商银行等全国性商业银行,另有近60家商业银行正在加紧测试并即将开通,年内其他主要银行也将基本实现全部开通.受理方面,全...", + "author": "人民网", + "pubDate": "2017-05-29 08:02:43" + }, + { + "title": "央行出手!支付宝们正式被“收编”了!", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2cFW44AltY2WCJ5l9OhUYrVqXa8Fplpd9AYA-h3Tgec-q2b6HvboFYABWxB8TtQ0u9aMRasWkVg12b05rjLGH-q0K2H9XqNQrJUDSYjbkXUYrvU4-PYJODzdFuslK1KhbvD06rZnanhkZyTXn2VR-Py2Sewnmq4Pdte7vElihzunvBFa7PPSnegkFMrrGe7uPlOtlmHPnIQOq3X8EKMKOIA..&type=2&query=%E9%93%B6%E8%A1%8C%E6%B5%8B%E8%AF%95&token=B0AC037689ADCAB46B6C396C5C51032B6BF5DA3A6A09F15E", + "description": "根据央行要求,目前,已有20余家支付机构和银行完成了接入网联平台的工作.央行副行长范一飞此前曾强调,网联平台的目的即提高...", + "author": "人民网", + "pubDate": "2017-10-17 11:43:30" } ], "APP逆向": [ { "title": "AndroidApp常见逆向工具和使用技巧", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DCOjX66B0wQAnkQk5xkE8zWVgrFeYQugDrGFFTyF4j-fIHKmKiWmh_gT1RIk9nIJTomqza81rARJOjZaCXpGyzZr8ZRNe7_PnoyTi_CaSvQnwfm9fgyvvBMGMaUdyBm9-rIkYKlAX-Dj9vW8_i_qrPyk_5Ok-VIGL8Puv9ti7dcGDU1CviXYnFzuSNq_fyLpgrGOxwXysI1AR0NI7jhJYTMVcz7PJUxIxodsB_IuTowGyZv6b-_QmuEJE4oYD-Hd2y51bNkKRyRNiZqwg0yoRFw.&type=2&query=APP%E9%80%86%E5%90%91&token=4B41960A4215BF07D8D1E792E3746110D815985C67D3A546", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DDqNlQ9HgnuF9njpgVULvKCVgrFeYQugDrGFFTyF4j-fIHKmKiWmh_gT1RIk9nIJTomqza81rARJOjZaCXpGyzZr8ZRNe7_PnoyTi_CaSvQnwfm9fgyvvBMGMaUdyBm9-rIkYKlAX-Dj9vW8_i_qrPyk_5Ok-VIGL8Puv9ti7dcGDU1CviXYnFzuSNq_fyLpgrGOxwXysI1AsZZKbVdhdIlEmhjJxCQuucV2LeSflLHWBzaQCymZD1hKv-XPlc7qX2dtKHBpPctqiZqwg0yoRFw.&type=2&query=APP%E9%80%86%E5%90%91&token=B0AC27080A2E4738E8EEB5E1D077E5B8E81CCC126A09F163", "description": "前言本文将主要介绍个人在AndroidApp逆向分析时常用到的一些工具和小技巧.说起Android 逆向,就不得不提到常用的逆向分析神...", "author": "黑白之道", "pubDate": "2016-10-26 10:17:15" }, { - "title": "记某APP登录逆向解密过程", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-37YKXPxKcstoK6EhXVOSA6VqXa8Fplpd9dW5oQAMZhc7ZBqfiMFLXG0GQTv2lk_XvxV5bo6L_2VOd4t-r5x3pbI1Gx3EPaC8OJkaDwKAihuibfqYjIBScgTBgSQR65GHD1ovgvuYrz1SLBPf7pGpZz4oa7gW5DCyVlBmNg_TQcN2-Xhwn-8fSxrOrI95WfXBN3EzZ8pTvy0INGbbB75bUeA..&type=2&query=APP%E9%80%86%E5%90%91&token=4B41960A4215BF07D8D1E792E3746110D815985C67D3A546", - "description": "0x00 前言最近在学习APP逆向相关的知识,刚好拿到了一个APP目标,该APP登录过程存在加密,所以记录下逆向破解的过程.0x01 ...", - "author": "黑白之道", - "pubDate": "2024-05-03 08:36:47" - }, - { - "title": "FlutterAPP逆向实践", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-37YKXPxKcstoK6EhXVOSA6VqXa8Fplpd9J_zVaWw2uFg686rt6ZvNVl60K0aBaZDqdFQVXjiv0XhcM1gIerRkPxIxT4lKFS5XT7GwdtE9H4nLgwu6ohgaLTmGcpSyTO8mBlZ-8ML7pptw4tAT8AJhUJTN8HLoTdsqo5mo5LofbMG1GVImin52YaRs1GYXibKaKgMw5X68IbItPujwwRB2Pw..&type=2&query=APP%E9%80%86%E5%90%91&token=4B41960A4215BF07D8D1E792E3746110D815985C67D3A546", - "description": "本文为看雪论坛优秀文章看雪论坛作者ID:Imyang很长一段时间对于Flutter的app逆向都比较头疼,它不像纯Java app那样可以使用jadx-...", + "title": "《Ghidra操作手册》带你玩转软件逆向!", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2UnSfj00JOAKCJ5l9OhUYrVqXa8Fplpd9jf5zmrX9bLTulhQ-fBU9UiQXMMYqxHv9o-A2pVlI0HMAUYDOEHynUv-YqaBVYT9LCd-BKCKrz4m1w_Pka8fHMjRB64fwlLorpEMi95N0Ex6DjOGjPmK_IFw7G5loQMvza6CGEQlhh8i778WS7QlwKEVC11HzYYJzNCPJJlxiS6j2CsG6-xMgzQ..&type=2&query=APP%E9%80%86%E5%90%91&token=B0AC27080A2E4738E8EEB5E1D077E5B8E81CCC126A09F163", + "description": "Ghidra作为一个由美国国家安全局(NSA)开发的免费和开源的逆向工程工具,在去年的RSA正式发布,包含了一整套功能齐全的高级...", "author": "看雪学苑", - "pubDate": "2022-07-21 17:59:03" + "pubDate": "2020-12-10 17:58:43" }, { - "title": "一文了解安卓APP逆向分析与保护机制", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-37YKXPxKcstoK6EhXVOSA6VqXa8Fplpd9PohLElZHBTPQonqCfZ0TtAmg5tVFTq0IqC9Rtf6vksxuBUsHWIRCh-UHGD48L7-I7DWkXnEsIObYXDBg3HYEMXqu0K6h8xhcc62DSq_lv4XrzZVrB48gYRCjyCMepFYVz4yijIGRhQ0g40xftK4fVFS2KAtKzPeWCeu4Cz_SU18tPujwwRB2Pw..&type=2&query=APP%E9%80%86%E5%90%91&token=4B41960A4215BF07D8D1E792E3746110D815985C67D3A546", - "description": "安卓APP逆向保护作为开发工作中的重要内容,一直是网易云易盾致力于提供的应用服务.“后续,我们将在SO加密保护方面进行更...", - "author": "FreeBuf", - "pubDate": "2018-03-31 18:12:34" - }, - { - "title": "鸿蒙APP逆向分析工具和方法", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-37YKXPxKcstoK6EhXVOSA6VqXa8Fplpd96k-G4vgcspPLYU-OdVbivgE_1CqqMF6EOxcfbY4fKS8ON2lobS7MG9GkIaxxwqKhQfj3i8aWjoLflkGcsoJz5Yx2qNurMgWx40Et_0YV0tuvMTeUdWc2sGljxh1T3xgl7amCkbHc5mEEEJl7le_KnBGLfqHxFcxgZqH1DD98IO654z_tGSZTqA..&type=2&query=APP%E9%80%86%E5%90%91&token=4B41960A4215BF07D8D1E792E3746110D815985C67D3A546", - "description": "鸿蒙APP逆向分析工具和方法需要结合专用工具与开发环境特性,以下从工具选择、分析流程及注意事项进行详细说明一、逆向分析工...", - "author": "哆啦安全", - "pubDate": "2025-03-03 07:03:21" + "title": "谭见君出席软件学院“东软杯”APP逆向需求分析推导大赛闭幕式", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2UnSfj00JOAKCJ5l9OhUYrVqXa8Fplpd92QvFmlGpj9qtY4FVx67bD1a5xLpq7y_n-7yywwuqF8D4penYRknpgbNjrpXq2RAunUFazbt1Bmgf5aznw6-osSlfVtODY4tF60AvTmLrppeh37DDSKdeFDwZkre-iq61iSi0laBbSyVrOV2EZM98EYkwmAtHp3T276ZiZMQq1xJFH6In5Ei3zg..&type=2&query=APP%E9%80%86%E5%90%91&token=B0AC27080A2E4738E8EEB5E1D077E5B8E81CCC126A09F163", + "description": "谭见君出席闭幕式并讲话谭见君为获奖选手颁奖5月18日,软件学院“东软杯”APP逆向需求分析推导大赛决赛在暮云校区多功能报告...", + "author": "湖南科技职业学院", + "pubDate": "2022-05-21 10:45:30" }, { "title": "APP逆向神器之Frida【Android初级篇】", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-37YKXPxKcstoK6EhXVOSA6VqXa8Fplpd9c9ru1dp7EGcNRWc7m9Vto2jfuvCS_Mpc9MSOn0VU2l0FC8Zx3aXpX0UJ2-YXO-jeeL7GMcDHdlao26PENFpEby4g9Zv-Q3ZdqXO1gHmfrrNnzI8NoDM7cHXc_aYfqQL-sRWvLKG59mTHAJVAOjd33gOjee0gAZukCiuzuct1FnhhWLv6O878UA..&type=2&query=APP%E9%80%86%E5%90%91&token=4B41960A4215BF07D8D1E792E3746110D815985C67D3A546", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2UnSfj00JOAKCJ5l9OhUYrVqXa8Fplpd9H9ZCrrIfbT4IbTqjC_a37kteBfi1VsotJKNQ3mnbuul1F4Uvr8xkO9IgVGugror-M96BYyVt8kN05sEbvBuVEVi4B7t2LlwjZ_wVkO_8vbzkT4bFcPcGhV9B4IFXfWrNsIBvblrtfk_QmPtgLA3G5tEKC_SjNM7RdUo7z-EF-H7RtmyIGw2VAg..&type=2&query=APP%E9%80%86%E5%90%91&token=B0AC27080A2E4738E8EEB5E1D077E5B8E81CCC126A09F163", "description": "说到逆向APP,很多人首先想到的都是反编译,但是单看反编译出来的代码很难得知某个函数在被调用时所传入的参数和它返回的值,...", "author": "NightTeam", "pubDate": "2019-07-03 09:00:11" }, { - "title": "对某数藏类app逆向安全分析", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-37YKXPxKcstoK6EhXVOSA6VqXa8Fplpd9lXcNX9AOOoTm4CBrpf0a-sBoRZk4Hd4NMf3NFX_hTnPUBFDO-H4INSEcbjxWPpdnBn-AZglZbicNTigYbg2H7qdRL4o9ns-lYIMjPuIxF33xHcrOROK0Ryt7VpTw8LTTZmvGGaQd2pfwj2ErCUI2wmyPNzVj_SyltmhBVT1n_jDm0CtGSSkZQQ..&type=2&query=APP%E9%80%86%E5%90%91&token=4B41960A4215BF07D8D1E792E3746110D815985C67D3A546", - "description": "对uni-app开发的某app逆向分析不过今天这个app有点不同,我感觉是值得记录的,所以准备再写一篇有关这个的分析首先,打开这个...", - "author": "编角料", - "pubDate": "2023-03-10 18:32:22" + "title": "[App逆向]脱壳实战", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2UnSfj00JOAKCJ5l9OhUYrVqXa8Fplpd9yy7AeApUWYv6u_7NfPIcgiZkesNIOG_Cn5ySLCX3eE2agsKUCIFCMro0F_cdhqkNIfCJJMSkpIQtJThnTW6jqN1NaBrkoniaTaZH_G7z1Mfe85LO28wUBYqedkAuU1GNT6XqGkZCJwxG4wCMMd1lJKsPaypztP6AeZH7i2f3D29Ae0f8bRARvQ..&type=2&query=APP%E9%80%86%E5%90%91&token=B0AC27080A2E4738E8EEB5E1D077E5B8E81CCC126A09F163", + "description": "[App逆向]脱壳实战基础概念加壳(加固):为了保护App代码不被轻易看懂,开发者会用“外壳”把真正的代码加密藏起来.运行时先...", + "author": "ziyi程序员", + "pubDate": "2026-05-05 18:08:14" + }, + { + "title": "某文APP逆向抓取分析", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2UnSfj00JOAKCJ5l9OhUYrVqXa8Fplpd9qqv_-wNi3UOUTbWQZiL9ZAiHSjEVFkDg71yoBRlt1-skGWHBubaIjFyiliwGXZL1P1EL4Oou8I7vqItX9Ek-_KQtKipTD0GNOv4iYxVYNtkkQaeqTOMPeBawrHbxQPb9JrszusdH9sv9NlvMKd6ghRFTyGmZbc82vhy6iJChJBoYJSSFPgfogQ..&type=2&query=APP%E9%80%86%E5%90%91&token=B0AC27080A2E4738E8EEB5E1D077E5B8E81CCC126A09F163", + "description": "逆向app一定要多练习,这样才能在实践中找到自己的不懂之处,才能够成长.好啦,今天的逆向小文章就到此结束啦,童鞋们下篇文...", + "author": "猿人学Python", + "pubDate": "2020-05-07 20:19:43" }, { "title": "​APP逆向系列(一)", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-37YKXPxKcstoK6EhXVOSA6VqXa8Fplpd9tUUp5U1amv6rVz_XTmtn0mdOmyG1nqM9oBM4n5C4uAvylPx-49SZoEBhA0b-zBpJsQFk04s6KlDA8AmsqNP4xzefHWP558a5M8BSkLIq_ZaLBrBb6kiIh2RwFHCc_BXVZFugczBJ9VuB_J4lMJKtsrqe2XulivXNeVfmKyOIKAl5LU3lqtPw9g..&type=2&query=APP%E9%80%86%E5%90%91&token=4B41960A4215BF07D8D1E792E3746110D815985C67D3A546", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2UnSfj00JOAKCJ5l9OhUYrVqXa8Fplpd9XffyMUoB6FgaPlOLJzgk3jP9uED3gRsGDY7TXheO6wklAg_G0CbmtklRwhDhEJGdFWeKlKUXHcMzl67m-YlboST-9R1YR92lvSfvS7OgajAR54kfr2pjYaqP1qqO1BSqinjZJmU08OKToD4WmzzhzGoPqs0fTdv6U5CrvCStSEyAFV_3u-a3OQ..&type=2&query=APP%E9%80%86%E5%90%91&token=B0AC27080A2E4738E8EEB5E1D077E5B8E81CCC126A09F163", "description": "APP逆向系列(一)最近在解决APP逆向问题,之前都是不系统的学习,知道工具,知道hook,但是跟某些金融比起来还是差点意思...", "author": "呼啦啦安全", - "pubDate": "2024-04-17 21:59:21" + "pubDate": "2024-04-14 11:12:10" }, { - "title": "好用的APP逆向工具", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-37YKXPxKcstoK6EhXVOSA6VqXa8Fplpd9uOgbmr5Xs6SFGTkWWTq1dNh66X-qAb5cKLOT1QvVslrpp4a4I0-m6j9v9f8cIyfgBPGHNfUgAPQE7f2t1-x9mZihVVB2ngV9kemhL-3At65I3PA5-zIKti84ioUpdJtGEgNkWYF66san6mCWt711PMRU6aMXJ2QQ0uW6HRm-x3UHpHkoPMgL3A..&type=2&query=APP%E9%80%86%E5%90%91&token=4B41960A4215BF07D8D1E792E3746110D815985C67D3A546", - "description": "从此APP逆向快人一步Apkdb概述《Android APK+Dex文件反编译及回编译工具》 简称:APKDB.是一款,针对Android OS系统APK...", - "author": "素人一鸣", - "pubDate": "2025-01-16 15:58:50" + "title": "软件逆向入门:零基础学编写破解脚本,实现自动化破解", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2UnSfj00JOAKCJ5l9OhUYrVqXa8Fplpd9Rhrcejn327GoN4AqfFjULkLuIPVMmRpBfZ2S3sMgullMmMLKMaqJijZQAtsV_9V2WFCvcw0G20Z6J1zxIy7XoM4yulpZZdiAfiVJxh3Z52bNPgfSxRP0vkDRS75DH_gXi39B0l6H5f_BD8fNHx1piFedDvtsgqPW90hEn_SaVHi00NVofL2iDw..&type=2&query=APP%E9%80%86%E5%90%91&token=B0AC27080A2E4738E8EEB5E1D077E5B8E81CCC126A09F163", + "description": "逆向入门学习公众号:it0365// www.xuejiemi.combp 0047A599 estojmp _loopCheckO: mov [edx],"2b6acd9ce2-665fc74da5-...", + "author": "软件逆向技术", + "pubDate": "2026-03-17 10:11:35" }, { - "title": "【APP逆向】某某租车app逆向分析", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-37YKXPxKcstoK6EhXVOSA6VqXa8Fplpd9WI9MBCWBS0I03fDVYwvSJS7gdYQF3g4s1UKXr8nlM8auXXxFDSEuay2Em97i5hnc2dq6Tx8sa55G6iNoA0zIqXpVSeLn19g1yVT4VUQfUVuda8fN42zql4tEBXYdBMqVO6TiiJTVB3N5_Zy45rSzdXDOat6dFjV5Zas3Dyx4RGjy08OLTBhW0A..&type=2&query=APP%E9%80%86%E5%90%91&token=4B41960A4215BF07D8D1E792E3746110D815985C67D3A546", - "description": "【APP逆向】某某租车app逆向分析 背景 之前了解了fartext 魔改版的功能用法,但是一直没有合适的app用来测试,这次正好拿来练练...", - "author": "EternalBlue", - "pubDate": "2025-03-12 00:11:48" + "title": "APP逆向系列(四)", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2UnSfj00JOAKCJ5l9OhUYrVqXa8Fplpd9XffyMUoB6FgaPlOLJzgk3jP9uED3gRsGDY7TXheO6wklAg_G0CbmtjhpWNG4PeIalIh6MX819sMbKeWw8DEnRYXK3vhb_Sp1otvDj4TPvyPXA38DInZRp-9HHr9gjxKf6CKN2tUHWDdlbZCQhkkvL9ttm3tIjjMbGA1QyTWhBPz6zvkPgoArRQ..&type=2&query=APP%E9%80%86%E5%90%91&token=B0AC27080A2E4738E8EEB5E1D077E5B8E81CCC126A09F163", + "description": "(三)APP逆向系列学习(二)APP逆向系列(一)本文仅用于技术讨论与学习,利用此文所提供的信息而造成的任何直接或者间接的...", + "author": "呼啦啦安全", + "pubDate": "2024-04-24 11:06:43" + }, + { + "title": "APP逆向之SO必备分析手法", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2UnSfj00JOAKCJ5l9OhUYrVqXa8Fplpd94un7Y1z1GIxX74tO2gC-8_waVSDFDadyPI6aqCTGpinOxY5NtkArtM8-lacnd4NgpWSCr4C0K2ojKBjjOytg74XC5wmNn2mAClQuJcJaWK6UQR-C4-D8nJA3c7eDILUSYKrm46fh6i8ycXI58AcTW-Q9zTLhi2B1ocwRatfXPUbP28temKTOwg..&type=2&query=APP%E9%80%86%E5%90%91&token=B0AC27080A2E4738E8EEB5E1D077E5B8E81CCC126A09F163", + "description": "APP逆向过程中,需要对dex文件和elf文件进行分析,又因现在各APP都有各种代码保护手法,因此都需要进行动态分析.今天就分享...", + "author": "编码安全", + "pubDate": "2023-04-07 08:31:00" } ], "渗透测试": [ { "title": "200万年薪!人民网这个岗位等你来!", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3BsRBkcbDQRgK6EhXVOSA6VqXa8Fplpd9-0BJzlLy1eTjFD1JRuvsfpVuBnJzdO4GM_We8LBGBZfzv5nkrpRBB2zJSH-XHxJYGg2BRycObnfKc6vqPrRScVijf9WWtRq_tjWUSCTqHZ_zcgr_WXE-m8ZMwKxJ1Y2clHKXN6HAQHSrXT6lBa2GicuNmqm54Rw3bHFnoxEXkhNflztgI7RZ1g..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=4B41BBA12A73D96FB0B680F58546CCA8B1C360E167D3A54B", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl22CmHvVgepSKCJ5l9OhUYrVqXa8Fplpd9AYA-h3Tgec-q2b6HvboFYABWxB8TtQ0u9aMRasWkVg12b05rjLGH-qIS-TscYrdnVckqEFkZ1B5AhzcYWjo4eH0gUov3bdhSZMYgFrplBubcsjteoVRcbS1rvqeDUQa7H889RYc8Ha-A_JYruOYU7lk29893vVNRTHotqGCq0tXyPfCoem7FzA..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=B0AC4B79C8EC89F5292F782C1DCFD2D92A8FD36B6A09F169", "description": "服务器及应用进行渗透测试等信息安全相关工作;3、关注最新的安全动态和漏洞信息,及时修复业务系统相关漏洞.任职资格:1、全...", "author": "人民网", "pubDate": "2018-08-03 15:22:17" }, - { - "title": "中新网招新了!打工人,速来!", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3BsRBkcbDQRgK6EhXVOSA6VqXa8Fplpd9m7yv2ccEJ4i5LYy3cPhwUIIrJBaPxbEK8anG_cAz9D5mdEFw6KfCJfNhbADYC1DSHZAO02gCXMIVXr3HxQG1tMPNRm05JJ8Xxu7DlEG3gq69BuoSdIny0WRCDHOB3UXzmb_wXn0lhZVVY7Wc_RgQhKchioy7-HtvNyC4S4f3mI3S-e4Yz84xMA..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=4B41BBA12A73D96FB0B680F58546CCA8B1C360E167D3A54B", - "description": "具备独立开展渗透测试的能力;2、熟悉常见Web和移动安全漏洞分析与防范,包括SQL注入、XSS、CSRF等OWASPTOP10 安全风...", - "author": "中国新闻网", - "pubDate": "2020-11-03 15:52:39" - }, - { - "title": "“徐玉玉案”涉案19岁黑客杜天禹受审 获刑6年", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3BsRBkcbDQRgK6EhXVOSA6VqXa8Fplpd9fP4Xj1QflXiE_uUOtgLs-VC7viQvoqUsNljU1prUHdABMu2hSav0LVZ6cZODAmDPnpDumn6Oge4o9xNUzx7burEBVHUFMhkKFEA_qutuCH-2qxk2BJAF6mCQ45mOP0TZd6VZUnHC8jSEQwYN7mKykz41OOAXs8rxyikQyIhN7BcC2Qmj7RgGwQ..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=4B41BBA12A73D96FB0B680F58546CCA8B1C360E167D3A54B", - "description": "他成为了一家公司的渗透测试程序技术员,“职责就是测试网站的漏洞,提出修复建议”,每月工资六七千元. 杜天禹业余时间经常...", - "author": "新华网", - "pubDate": "2017-08-24 14:13:15" - }, { "title": "人社部拟新增10个新职业,看看自己能干点啥", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3BsRBkcbDQRgK6EhXVOSA6VqXa8Fplpd938XWbZVit1p12c7HjlKcxc0ct2UIRuW2IuQFNtwlOSwNBnqV_XFalJfWH0Fo0sqI2jXtkJpMFXtkJT5spcScNNd43EJRTZQXbKiB8gxe8MmhclEVHlHGuBTdGJnjDE6p1BPfoFHvxLSJhVaPMnaKR4dqv2GDzseij7f4Zuod9ya00NVofL2iDw..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=4B41BBA12A73D96FB0B680F58546CCA8B1C360E167D3A54B", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl22CmHvVgepSKCJ5l9OhUYrVqXa8Fplpd9UtJqYPZ_nohqVchjNgxop0k0bmnWthN1MFyPWjtKMXl7ui2iy4Xla6kFkoxFx6WmQD4WvnxS-VMA9gBl5JTSqtGsvkYF0s1TJFfPFi_ZDsKxxmy6Y2MWcCOo4rlzSzxeJIOJ7w8VV0lfYFXEkJq3Vgd6XHpapjU2sEhQkKo7vSKjotuuiAmOIg..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=B0AC4B79C8EC89F5292F782C1DCFD2D92A8FD36B6A09F169", "description": "直播销售员信息安全测试员通过对评测目标的网络和系统进行渗透测试,发现安全问题并提出改进建议,使网络和系统免受恶意攻击的...", "author": "人民网海南频道", "pubDate": "2020-05-13 14:27:12" }, { - "title": "李佳琦们要“转正”了!", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3BsRBkcbDQRgK6EhXVOSA6VqXa8Fplpd9-0BJzlLy1eTjFD1JRuvsfpVuBnJzdO4GM_We8LBGBZfzv5nkrpRBB0DGECEe9GlcaW9mi2MBmXkLrK2aNKTXvdf2gz9sGguY4io2BKEILJvDOwOoWOamJKwz921jTlhuvjn-9H-nyaoEKqCVj_tYRROprp6YKqkfJpE-dnQJNFFr1dbZWbKUeQ..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=4B41BBA12A73D96FB0B680F58546CCA8B1C360E167D3A54B", + "title": "人社部拟新增10个新职业,网友疯狂@李佳琦", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl22CmHvVgepSKCJ5l9OhUYrVqXa8Fplpd9PUVvdg8nI493BK6xjOzSWFE-n6DdVCzcjQvlxHnDqhsx_4JBgWBWOlHO4m-JLw_Y4GE6qhH0PyUrGm6LD61d5m0Luh3TV--cDCMJ88rQsOTXGAdLCuqriP-OAuR6ZhGq4bvCOFGhD2kPhkhPE0dBIZR_WJo2mnLX5eeK5UXmltPf3q8uRDTfkw..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=B0AC4B79C8EC89F5292F782C1DCFD2D92A8FD36B6A09F169", "description": "信息安全测试员通过对评测目标的网络和系统进行渗透测试,发现安全问题并提出改进建议,使网络和系统免受恶意攻击的人员.社群...", - "author": "人民网", - "pubDate": "2020-05-12 19:02:37" + "author": "光明网", + "pubDate": "2020-05-12 18:12:17" }, { - "title": "李佳琦们“转正”了!又一波新职业发布…", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3BsRBkcbDQRgK6EhXVOSA6VqXa8Fplpd9-0BJzlLy1eTjFD1JRuvsfpVuBnJzdO4GM_We8LBGBZfzv5nkrpRBB9EW3vvazU96ZKEnoo_JS3x0BzzWn10ximMuBWlT_5O9I0gqXal3SA9xAkmK__NeNaHmTzIKlvgdHMgV46VOYCkU-z-LXgKpny54VryVnWHIeu_sCOlTFyHvzHZXxeLdyg..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=4B41BBA12A73D96FB0B680F58546CCA8B1C360E167D3A54B", - "description": "信息安全攻防渗透测试和信息审核评估成为网络安全维护的关键环节,信息安全测试员、互联网信息审核员的工作将越来越重要.据悉...", - "author": "人民网", - "pubDate": "2020-07-06 15:08:14" + "title": "“徐玉玉案”涉案19岁黑客杜天禹受审 获刑6年", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl22CmHvVgepSKCJ5l9OhUYrVqXa8Fplpd9c0gdN1-PKNsd2QXXsS3y7sJlkmPyka13PSQSNAQNRqFp5Jy6I-oZreCLbABkrVBxqjdlxUNDZY8fUOfPlb5xPD4CFo8ZmEWbfo50gnwkNRFdvhjAQTVP-E_Kwl4DnH7s0o2REs7OUaJYAAhvb-q_nB6Ny5pRcAnvR157kvD5rfaE8RsmObDbtQ..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=B0AC4B79C8EC89F5292F782C1DCFD2D92A8FD36B6A09F169", + "description": "他成为了一家公司的渗透测试程序技术员,“职责就是测试网站的漏洞,提出修复建议”,每月工资六七千元. 杜天禹业余时间经常...", + "author": "新华网", + "pubDate": "2017-08-24 14:13:15" + }, + { + "title": "中新网招新了!打工人,速来!", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl22CmHvVgepSKCJ5l9OhUYrVqXa8Fplpd96xlaBeyCKU3iYSCvbArUlVk6s8vT4XpUBM9mLcufQqWZa1fvGjGPmExXxZIon0DvBTD1kDEsp2zYkE-RQgnEPzGSbn5CJK7Gv2ga3WQm0j7ZNIc7MOy0TuYAV1snU8btyhJGYgMpYQjmpK88OsH45n1NIc6RQg4XhaVgDvZTgSiTJmCU1UgHwQ..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=B0AC4B79C8EC89F5292F782C1DCFD2D92A8FD36B6A09F169", + "description": "具备独立开展渗透测试的能力;2、熟悉常见Web和移动安全漏洞分析与防范,包括SQL注入、XSS、CSRF等OWASPTOP10 安全风...", + "author": "中国新闻网", + "pubDate": "2020-11-03 15:52:39" + }, + { + "title": "【提醒】妹子们注意!上海消保委测试了40款知名面膜,结果...", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl22CmHvVgepSKCJ5l9OhUYrVqXa8Fplpd9PWj6pQVgGWgUJCUdFDxNGpd-8r-rClY1VUIlgC86Ks9PlALAN0mokiBmK9nabqt_KG9bpnOZWQJAop94pBlQWRE8CLdT3oX1g6gC4RSDQORujOIYiImqe4o1BYomqifWbkrDD4rTAVd-FbUL8rb04fSPPbtH2ipKZH8Rzl7juJrP28temKTOwg..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=B0AC4B79C8EC89F5292F782C1DCFD2D92A8FD36B6A09F169", + "description": "4小时保湿功效分别进行了测试.全部样品均通过激素筛查今年6月国家药品监督管理局通告了27批次不合格化妆品,其中多批次为面膜...", + "author": "央视财经", + "pubDate": "2018-10-09 06:45:24" }, { "title": "妹子们注意!上海消保委测试了40款知名面膜,结果是……", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3BsRBkcbDQRgK6EhXVOSA6VqXa8Fplpd9fP4Xj1QflXiE_uUOtgLs-VC7viQvoqUsNljU1prUHdABMu2hSav0LXFjP6OboT1q_s_i8-oAShCeQ64qo3_4eMPkTSLPrW7GJxBLlQI_Hx1QeXc9ertFCkSjXIGyr7pYJSgLTFHAd537rsyfHp4-1t3va3n34Gw05SG_XagNHQZe0WC6Sbi7DA..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=4B41BBA12A73D96FB0B680F58546CCA8B1C360E167D3A54B", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl22CmHvVgepSKCJ5l9OhUYrVqXa8Fplpd9c0gdN1-PKNsd2QXXsS3y7sJlkmPyka13PSQSNAQNRqFp5Jy6I-oZrUGW29a6MK0yT4stsN5CWHJiID6fAaumFmeUFN3G-gFHD_uRngcvwkXIbHy45gZ_m1rhVVVfT6wGTZBXHqB3Owq4gOiLXbXmgwn5fzzlYby2Ti09AY9SMIte0WC6Sbi7DA..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=B0AC4B79C8EC89F5292F782C1DCFD2D92A8FD36B6A09F169", "description": "4小时保湿功效分别进行了测试.1全部样品均通过激素筛查今年6月国家药品监督管理局通告了27批次不合格化妆品,其中多批次为面...", "author": "新华网", "pubDate": "2018-10-06 16:53:48" }, { "title": "柠檬“上海户口、百万房补”?你也不是没有机会!", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3BsRBkcbDQRgK6EhXVOSA6VqXa8Fplpd9-0BJzlLy1eTjFD1JRuvsfpVuBnJzdO4GM_We8LBGBZfzv5nkrpRBB3Gf0crth1REpM7pnCtDQFICq64oviefEZ1vGp75hB_-VyPVdkkH4f88ejvmAzB97n9kx5vRkDJvVUmqh55kw-oFE23pG3T_Kpijfgr5UyMHkJlsOtybC6uFW6cwuUnkdA..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=4B41BBA12A73D96FB0B680F58546CCA8B1C360E167D3A54B", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl22CmHvVgepSKCJ5l9OhUYrVqXa8Fplpd9AYA-h3Tgec-q2b6HvboFYABWxB8TtQ0u9aMRasWkVg12b05rjLGH-q-TlhESjxN_t1Qc4tSwGsyQx7YNgu6WFhhyRnGD0XrT_gMZGeg55DXnxYzcGi03fB0N2n3-h0HY3pcUiVflmV38JWN9O2ZNxyiqsiZGKhka7_6oxrNE3Dy54z_tGSZTqA..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=B0AC4B79C8EC89F5292F782C1DCFD2D92A8FD36B6A09F169", "description": "信息安全攻防渗透测试和信息审核评估成为网络安全维护的关键环节,此次发布的5个工种里,信息安全测试员、互联网信息审核员的...", "author": "人民网", "pubDate": "2020-07-10 19:38:53" + }, + { + "title": "撒贝宁惊现滑雪场!硬核测评来了→", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl22CmHvVgepSKCJ5l9OhUYrVqXa8Fplpd9PWj6pQVgGWgUJCUdFDxNGpd-8r-rClY1VUIlgC86Ks9PlALAN0mokhM4mJbTJcJ9kuTtVIxYOk9UDHBDJuP6VlWtarNtcIdhnz1YYPsY7AzYuHCIISl6qxgOYOSlHwuvzToX6nQ7I3AuTrO0OjRs4CDXRb7p4JXZavscPyUEttvdrgozfSg6bw..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=B0AC4B79C8EC89F5292F782C1DCFD2D92A8FD36B6A09F169", + "description": "试纸放入衣服内并进入淋水装置水珠在衣服面料表层滑过却始终无法渗透入小撒身上的羽绒服实验结束测验试纸整洁如新严苛如撒贝宁...", + "author": "央视财经", + "pubDate": "2022-12-30 15:14:23" + }, + { + "title": "半天卖出几十万支!啥东西这么火?", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl22CmHvVgepSKCJ5l9OhUYrVqXa8Fplpd9c0gdN1-PKNsd2QXXsS3y7sJlkmPyka13PSQSNAQNRqFp5Jy6I-oZrdWPAm_9jdhILafxQFipf8-hHkfO_ebsvKpokgWRnVQ08kjrHXABrcgt2xjqGmrD8QuN_a3vU646w7ZWwJiuUMPSnaR5CfYj5Rdmz8NpWl0FIB75_0m92xYNGbbB75bUeA..&type=2&query=%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95&token=B0AC4B79C8EC89F5292F782C1DCFD2D92A8FD36B6A09F169", + "description": "相较于欧美国家30%至40%的渗透率,拥有很大的提升空间.陈涛说:“面对14亿人口的大市场,未来很长一段时间都是机遇期.”...", + "author": "新华网", + "pubDate": "2019-08-16 06:30:28" } ], "手机银行漏洞": [ - { - "title": "银行手机app存重大漏洞,用户分166笔套取资金300万未被发现", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3RBfDGcuhAcYK6EhXVOSA6VqXa8Fplpd9NFACt4r9XtAYsMhQto1wHGOTujEotFi8vSykO0Z07Xs9-tfxZkeUpY6iBgpIAt2qlcUFBr4NqlmxP_WAkDDHwxeCu0zsfNpcT2AjinmY7IFW1HgYGZhghgZJSXbhsdjNLtVmEDjiEeZ0w2BEIqo-WgT7-0TtL-1jEEemsV1E7q_f3q8uRDTfkw..&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B41E20C0956FC4B9492A4D1A6D81B1B94207FB267D3A551", - "description": "银行app存重大漏洞判决书显示,朱某系平顶山银行用户,为了更方便的使用各类业务,朱某在手机上下载了平顶山银行app,绑定了...", - "author": "支付百科", - "pubDate": "2020-03-19 19:33:50" - }, - { - "title": "警惕!手机银行APP也会存在高危漏洞", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DCOjX66B0wQAxH-o62u-IsyVgrFeYQugDtWJbbJ5gmKdyIb1BwsnXrNcyHcjzrvJNVi8JqrNdaI95E24oXpjz7s0tde0UUnVQU2wSvBGSiqEcBJf6JtGOEEuTsHBXh_3zfXPq_UwJRT6DOmgAA8E1-31epqYloXWzrX1ue8j2gDrpYPwWiONnLh_fKqELnf6cslD4qCPNdksxHjTp5TWgTMtb0QT38qtXqaKAm6xneH4nKOxeqk3nGzTFmHsDF7RoDIQcIWu7eIDiZqwg0yoRFw.&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B41E20C0956FC4B9492A4D1A6D81B1B94207FB267D3A551", - "description": "实验室的工程师通过实验发现此次测试的手机银行APP普遍存在高危漏洞,用户在进行转账交易时,黑客能够通过一定的技术手段劫持...", - "author": "中国信通院CAICT", - "pubDate": "2017-03-15 14:13:34" - }, { "title": "什么操作?一男子发现银行网银端漏洞,存50元取50万,收获3000万", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3RBfDGcuhAcYK6EhXVOSA6VqXa8Fplpd9Hzh_lyNfZEqbnRTiI9rBQm3Q87lpJNG3cN4vp1YvJLDwBSPpNKz66VhemuvDOBKdbKq8zyckFEcDlRvZYhEBeMw9r9kKDTs8JkqrrVxvBBjVhoGJkK0jKZMExOmTHzxEnZwJiUsgHt426TGjjzW-m9d9apFNp5IhfTyuqbmZb4TFcvUoAZZH7Q..&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B41E20C0956FC4B9492A4D1A6D81B1B94207FB267D3A551", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2j4XLYqaiV6aCJ5l9OhUYrVqXa8Fplpd9TBX4mgkGqgQhQ4hGzqGCyODSnW85Zmp2P7pNmEIppWAinQdLxWTkV0ynV4SYmUH1n1gwuHVQMy944GvSYsTU2CPHgnfLUyhFvsbSwbJdg7Z77ywxgwOKV33XEpjUDiuzj3fF_VPn3iExLpwwadtmfpXpNJfzfKr_Zs6svBxu-dhhWLv6O878UA..&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC6DABCBEC8AF6292C782C11120FFA2A1D671E6A09F16E", "description": "他发现上海某银行的网银有漏洞,可以修改定期存单金额和贷款金额,比如存款改成50元,贷款改成50万,就能套现50万.半年内他...", "author": "木火通明", "pubDate": "2019-04-23 21:42:11" }, { "title": "手机银行漏洞:五行代码可转走银行250亿美元存款", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DCOjX66B0wQAxH-o62u-IsyVgrFeYQugDrGFFTyF4j-fIHKmKiWmh_gT1RIk9nIJTomqza81rARJOjZaCXpGyzbfa51Lk7hnBdd-PXO8zD4bZBzkEs4qL91zXrAssxq_Fx_iURzYopd5FdYNUIpQFKjqT5bbRtXpk6qvJW3YSGGH4mUNEhHT1092NRPfeW2gOckW9rfO5f8Y4zZqnpfFaZ3i-R9z0OfFxpHSTjVCI9DmVfyAhJ0RCVBxAmAH5j2j34zQH5fQsyygiZqwg0yoRFw.&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B41E20C0956FC4B9492A4D1A6D81B1B94207FB267D3A551", - "description": "在银行客户所使用的手机银行软件之中存在一个严重的安全漏洞. Prakash解释称,通过利用这个漏洞,他可以从任何一名银行客户的...", - "author": "黑白之道", - "pubDate": "2016-05-27 08:16:49" + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DDqNlQ9HgnuFzfV7bZ5ja8GVgrFeYQugDkbox_qHQILDSiF38SaauBfqy2K3HYei7upHkg-JUbg6cdKGl9uj14eWOwHcT_M6tCJqbi9mD7ihv-AKW45ZJaJjKVEYPEpjr3vMz_imG_YfMjZ6IcYXkYeyysg7Ep5txHE-1kFTdXu0k1i_7a7Piw-SzdHavYB6ZE67RWhLBFYsEJvzvW1X4elfw8CZucbi0okE81mLx75hVLPxDnjp1D80tTtPLG25AUtF4lI_b8zfiZqwg0yoRFw.&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC6DABCBEC8AF6292C782C11120FFA2A1D671E6A09F16E", + "description": "一名安全研究员发现印度一家大银行手机应用存在漏洞,可使他轻松偷走250亿美元.去年年末,安全研究员萨提亚·普拉卡什在一家...", + "author": "安全牛", + "pubDate": "2016-05-19 11:48:56" }, { - "title": "黑客攻击发现:多家手机银行APP存漏洞", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DCOjX66B0wQAxH-o62u-IsyVgrFeYQugDpII3pXlhB4cu4QQVVNjVmAappCK6q5S16c49JwWaZSxh6K1ZbFnBuvxOAGz10wsWDCGOVaVbb4pV_vNEfPvSlDh69B_ygeCeHyP2pP4-9OYzmM9EgVrwn3UJ9paHwZeQ8yY46If-pFETSS-0YEV8fETpKlqv5RkewRoBiPd-aG9Y7g5Zxp-ImqDVr2SrMfwi1gtbpSKZ2v4PWTMZ0URHjtUoGUnTGtCmFj7kb-frKMWiZqwg0yoRFw.&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B41E20C0956FC4B9492A4D1A6D81B1B94207FB267D3A551", - "description": "手机银行存在的漏洞让人担忧.参赛队伍介绍说,通过对国内20家银行提供给消费者的、基于安卓系统的20个手机银行APP进行攻击...", - "author": "E安全", - "pubDate": "2016-09-05 11:36:23" + "title": "警惕!手机银行APP也会存在高危漏洞", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DDqNlQ9HgnuFzfV7bZ5ja8GVgrFeYQugDtWJbbJ5gmKdyIb1BwsnXrNcyHcjzrvJNVi8JqrNdaI95E24oXpjz7s0tde0UUnVQU2wSvBGSiqEcBJf6JtGOEEuTsHBXh_3zfXPq_UwJRT6DOmgAA8E1-31epqYloXWzrX1ue8j2gDrpYPwWiONnLh_fKqELnf6cslD4qCPNdksyL_pm_m3JmGL9bcaIk7zimj967JnlZDiO4We0Pwr5eV44HNo7ZtIN2LGAnYV89MniZqwg0yoRFw.&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC6DABCBEC8AF6292C782C11120FFA2A1D671E6A09F16E", + "description": "实验室的工程师通过实验发现此次测试的手机银行APP普遍存在高危漏洞,用户在进行转账交易时,黑客能够通过一定的技术手段劫持...", + "author": "中国信通院CAICT", + "pubDate": "2017-03-15 14:13:34" }, { - "title": "银行手机app存重大漏洞,余额为0也能成功转账?被人套取资金数百万4个月后才发现", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3RBfDGcuhAcYK6EhXVOSA6VqXa8Fplpd95FuX7oHuqTy2vXk0m56mQ70Jd5155gD2Md3QcfhtX3-qLVh5LFUOweFf60r0lcM0QVDRCGxYZGQelXNR3W4tYu5LUfYWhH0buEMkJJBVgjYw_NNWnLEmovv2Q7hapVTrJs1xgQwC0o_gxP6VbP9Q8-ADnlWefaUbxpHxVwDXySyFW6cwuUnkdA..&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B41E20C0956FC4B9492A4D1A6D81B1B94207FB267D3A551", - "description": "揭示了平顶山银行APP中存在过巨大漏洞.判决书显示,罪犯朱某鑫,1996年生人,小学文化.2017年至2018年,朱某鑫在手机上下...", - "author": "支付爆光台", - "pubDate": "2020-03-19 20:19:19" + "title": "豆包手机漏洞,银行验证码被盗?官方回应:已修复,但有黑公关!", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2j4XLYqaiV6aCJ5l9OhUYrVqXa8Fplpd94w3vR-QvyIe93_ebG_Mu1zio9K1bdAJ6M8kCoSvOlmuDze_bNAOUgD-qalRGgaXtx3JfVk4nCaJwhQQ4NbkyvE_hSbQClsjUWNKNKqRMcxHRBQvUboZCBFm0RR0_i2Hs8qbiYA-iPq9V2YgIzGNMYx_D2UaFGHBaDRgQ6C8x4bIY-UZGbO56rA..&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC6DABCBEC8AF6292C782C11120FFA2A1D671E6A09F16E", + "description": "从而进行手机银行的登录.这条视频也被豆包手机助手官方刷到了,今天给出相关回应.对于网传的漏洞视频,给出的答案是,需要用...", + "author": "ITheat热点科技", + "pubDate": "2026-02-27 20:52:48" + }, + { + "title": "某银行手机APP现支付漏洞3天被盗刷40多万", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DDqNlQ9HgnuFzfV7bZ5ja8GVgrFeYQugDt6m0Zx5D-v1Rwjk3P2iLUhEZ-LRrvFkVfsvQ7RvizarNGtYcShVf1nwcLufi6L-Gk7jKfOPejPKPrq1E8X8xtcLtMuSAR7jeYn91RFWK5aCBjj3TewmabqUEL84ZxANtI9op8YjndHKzRF4Q4i9YVEPKrHFAjjttHYqLtFFSwSzCiuCvQiJ-bdU9SEqxF3ZszWypW3az1x1miY4XlHYhrJcf1QXSggbiO2i-6laTJgjiZqwg0yoRFw.&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC6DABCBEC8AF6292C782C11120FFA2A1D671E6A09F16E", + "description": "银行手机APP新上线的支付功能被人发现了漏洞,3天内数十名客户的信用卡遭盗刷,共损失40余万元!银行立即停止这项支付功能,...", + "author": "支付界", + "pubDate": "2016-06-16 09:00:18" }, { "title": "警惕!有人利用手机银行漏洞,在我市疯狂作案30余起...", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3RBfDGcuhAcYK6EhXVOSA6VqXa8Fplpd9uQLYrci54ZeLmLtABBGBCMIvO4GzVCXt80DQXHrBh8VSd1SY3lJZNDZNyjq5zoKt0mT_fnwtE_JIauljziXMGalNG8OVdv5bTR0I2AF5eLpJa2F-yUwexQGdQ_k6SHQwX3ySM0Gj6eAyQBjnkA7l8ZXOMbRNJafAdPiN8gBUESctPujwwRB2Pw..&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B41E20C0956FC4B9492A4D1A6D81B1B94207FB267D3A551", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2j4XLYqaiV6aCJ5l9OhUYrVqXa8Fplpd9YnXGWxKtSjd98yts27IpbKUjXTtEKzf4Tp_AXPgI7jMn3gfCw1JIlzZ9kON3pXgGn_UoHR9_4libWa54-Zf0sAWs9P4EupFz5MMrsTylNak6l-fj3NsY5rgniLeH2nUV6-Ajf4bl9ijsIAGaxqB7Y7SfW2ONMqkNsE4qNzDbmquFW6cwuUnkdA..&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC6DABCBEC8AF6292C782C11120FFA2A1D671E6A09F16E", "description": "支付货款受害人手机接收到了到账信息可是到银行查询却未实际到账怀疑被诈骗刑侦大队民警接报后立即展开调查经民警努力追捕犯罪...", "author": "赣州公安", "pubDate": "2019-09-11 18:44:52" }, { "title": "警惕!有人利用手机银行漏洞疯狂作案30余起……", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3RBfDGcuhAcYK6EhXVOSA6VqXa8Fplpd9NT8RvUvXV0PFeE3a2kUhkP2ZG_sX8zawtBT3KVXDaagk-cP3LlavEKLsUaYCzd6w6DZhlyQ9YspIRZKmkzay6EZQflQxyhdeqKfuAYpCA52ekN5651P75SmY3qYCzo2bOCCca3RPdx4ylb5AvEf1Wk8wPAKoG25Q9dQcrLNGeD3wdVqCwyPdzA..&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B41E20C0956FC4B9492A4D1A6D81B1B94207FB267D3A551", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2j4XLYqaiV6aCJ5l9OhUYrVqXa8Fplpd9dwiScE3X7J7iTOAm97PhDd0sbObxyZiVUrVn4hOmfI_qrE4WLgjna41RSVuJunb6x6bHnv6SH1AZbIlGdx6qa7Kvqz_SIzPW0b21rqE7mSiiRBQxQ8ZzY8AGIabRqQzM6fch86tJ0_SctfsQN_ng3gYo7Ih0lerRibRy4ng99C9j32-j2KiwUw..&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC6DABCBEC8AF6292C782C11120FFA2A1D671E6A09F16E", "description": "行账号但受害人手机仍能接收到银行预转账信息此时受害人误认为钱款已到账实际上手机银行端比对银行账号错误后该笔银行转账会退...", "author": "玉山生活", "pubDate": "2019-09-15 17:21:04" }, { - "title": "某银行手机APP现支付漏洞3天被盗刷40多万", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DCOjX66B0wQAxH-o62u-IsyVgrFeYQugDt6m0Zx5D-v1Rwjk3P2iLUhEZ-LRrvFkVfsvQ7RvizarNGtYcShVf1nwcLufi6L-Gk7jKfOPejPKPrq1E8X8xtcLtMuSAR7jeYn91RFWK5aCBjj3TewmabqUEL84ZxANtI9op8YjndHKzRF4Q4i9YVEPKrHFAjjttHYqLtFFSwSzHWEdrYZx40buATK0RtUpeKuK4Xnc6AvoJJ3-8f7g0iBwlwVQ0IawpTKu0NTfZRcaiZqwg0yoRFw.&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B41E20C0956FC4B9492A4D1A6D81B1B94207FB267D3A551", - "description": "银行手机APP新上线的支付功能被人发现了漏洞,3天内数十名客户的信用卡遭盗刷,共损失40余万元!银行立即停止这项支付功能,...", - "author": "支付界", - "pubDate": "2016-06-16 09:00:18" + "title": "【警惕】当心!手机绑定银行卡,这个安全漏洞很危险!", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DDqNlQ9HgnuFzfV7bZ5ja8GVgrFeYQugDibtzWmjNxBtVVQdk0bYDh2I2V0fYBaY4964c3qVs00IYi0PRrVDUG0VsiyakpaPjz8b6EcO6e4sFMZtp7TY0cgI6qFbWRY287fuiHWKVHhAtJWPn9orQQizCy_pnEt8HKVEgJk6G2t6oGqCkbVU5bZOZ-9hS32ygSLff1YnhUUayB9naeycp12EDzbocQDD9-Vk4zE8IM-fZ-GoNnbu9RZbWH5rbziUdsAL6MjfNsPjiZqwg0yoRFw.&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC6DABCBEC8AF6292C782C11120FFA2A1D671E6A09F16E", + "description": "手机丢失后先做6件事↓↓↓01致电运营商挂失手机号02致电银行冻结手机网银网络时代,这点特别重要!重要!重要!03手机绑定过支...", + "author": "集宁佰事通", + "pubDate": "2017-01-20 11:26:29" + }, + { + "title": "三星手机“指纹密码”现漏洞!已遭银行及微信支付宝禁用", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2j4XLYqaiV6aCJ5l9OhUYrVqXa8Fplpd9RnnHw3kJ0517z0FPoiIHQEOHzpV2H5nLu_8VsAsK1u-Qvkt68b7ionBsiECAO5L_HQF6YL9T4gOJKT3XyAVKpFbd7ISzBISoYd3qRaqc8OlP3MqL5H3rNGIQ_RLD7Yloioyrf1BzO_9iEN9HvRWrJrynDsVzTilcO1LvWICdBbQCYioxHkzTmA..&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC6DABCBEC8AF6292C782C11120FFA2A1D671E6A09F16E", + "description": "10两款手机和Tab S6平板指纹识别存在漏洞.为保障用户登录安全,中国银行手机银行已暂时关闭该型号手机的指纹登录功能;其他...", + "author": "POS圈支付网", + "pubDate": "2019-10-24 14:56:29" }, { "title": "浅析某城商行手机银行水平授权漏洞问题", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3RBfDGcuhAcYK6EhXVOSA6VqXa8Fplpd9xDBW9Rl70OcDaZ8d2t3eWLxTzFuASo02mX09efynhG3F4_7-WUI3gC3ZjaOrWCB9EsQUbql0RvIrYgINh8Nu28IO5qsg2KkFcI5Ud9tw-aj4WuHTgESjTlTUICBxW3zzbT2DRbilp0A20hoSggt-li4bneigETdENFVo2Of620Pf3q8uRDTfkw..&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B41E20C0956FC4B9492A4D1A6D81B1B94207FB267D3A551", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2j4XLYqaiV6aCJ5l9OhUYrVqXa8Fplpd9XDRrDQIIpprgTByshPms2MgJfymBVhQeBywHL4eH_TjS5p0S3xJBa-pO4I8dm3ggAP-OdWiYulJnhbNdG7cpRH8J-P1waD5ZksHDkggSAxFJ7k0z5xT-vFaJgY24AEtexYIVISfx0W53DYJi5orHalPjO3uugbO7BaGo8rs9GWE89kyxDwoXvg..&type=2&query=%E6%89%8B%E6%9C%BA%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC6DABCBEC8AF6292C782C11120FFA2A1D671E6A09F16E", "description": "也导致此城商行从2019年1月18日至今一直关闭手机银行APP软件中Ⅱ、Ⅲ类账户开户链接功能.-问题原因分析-水平越权缺陷漏洞是...", "author": "51Testing软件测试网", "pubDate": "2022-10-12 12:01:01" @@ -269,145 +290,145 @@ "银行漏洞": [ { "title": "银行漏洞改存单,50元变身50万,半年骗取3000万!这是什么骚操作?", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3HBP-6BLzry8K6EhXVOSA6VqXa8Fplpd9pzKu330fp4wKNvjCnpsTYJy_MYuu2jCD8DAS_luExtAWB1N6-Cxv3qasDw3uxHi0z8MjCNPczv36si2m__UqjpsfZTQNAbaoiYscmaVEzka-Nf0uOtaXOO83W4asiYuUGAW-rQuwk6eo8gpCckTFDmjFBvf9GaZ79Fhd4sLWmCqjotuuiAmOIg..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B420630663E9422FDFACDB8C96265A4FD0E1B1467D3A556", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2w7-B0xafjqGCJ5l9OhUYrVqXa8Fplpd9rIYUHjighWf6Ujc0NonFIQ59lngtmef9kiiX1WJFFpdhqegeDjsqEyuF4W_XNHthB1VkGVdVKuPTlaZ2dzY50KDmO2KLD_pJlwj273r87yMR72roU0TCm2d2mxDgTNXYzt1oKsPIHm-0BdNJ1NvgaU_20BdhjtNzDJ1ZD-a83undrgozfSg6bw..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC90F95276116EB1B7E3B68821AE11B1133EA16A09F174", "description": "犯罪嫌疑人马某最终如实交代了他利用银行漏洞进行贷款诈骗的行为.那么他又是如何发现银行这一漏洞的呢?据犯罪嫌疑人马某交代...", "author": "测试届的LV", "pubDate": "2019-06-10 08:18:15" }, { - "title": "银行漏洞丢钱,中移动花式收费,谁来给我们一个交代?", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3HBP-6BLzry8K6EhXVOSA6VqXa8Fplpd9yCKB9iwOJDtLWv88jWC4D3LqwHy7uz5eXXAi1F7RRhfTmxUGPHxNlpTpcgRBQ6HKHK5da9FY-PQYWsW6wwagjjDjk-whi91Qgy9WtCkxb-qLhZaY-aNqNZo-A-90R7nATCrHl4ejTzTSf1l1B9mwUO_aBLTc1iOYrXXwyxVEjXMHpHkoPMgL3A..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B420630663E9422FDFACDB8C96265A4FD0E1B1467D3A556", - "description": "银行给出的回复也就是杂费、服务费之类的正常说法,具体是什么银行也说不出来.民警将该案件上报,总队也觉得有些蹊跷,案件升...", - "author": "纽扣资讯网", - "pubDate": "2018-08-21 19:29:05" + "title": "让人惊悚的网络诈骗系列之“银行漏洞骗局”", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2w7-B0xafjqGCJ5l9OhUYrVqXa8Fplpd9AqawS4WzzvqLfmLrPJDCoIKCMXzYf_eWz6Oeu8_UJnp_Ye7ChUOvQtXqwM0Hq9cYbTW6S-J3zcF17ds0rdGj1Lw9taMUd0Cjs6rAMF6LvjDyHGzAGOhmKBxyhhnuO0cBeZsHl-OsE8oKTzKvmaI2-zTm1AZv5dY0lDQmKP7T2sXYl_Q5RRZQjg..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC90F95276116EB1B7E3B68821AE11B1133EA16A09F174", + "description": "随着网络环境的日趋复杂,网络诈骗也愈演愈烈,骗子可能不用偷你的银行卡、不用拿走你的身份证,只需通过一些手段获取你的私人...", + "author": "火绒安全", + "pubDate": "2017-09-11 17:23:47" + }, + { + "title": "日报:银行漏洞一张支票可兑付多次;专家提示不要指望会降息", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2w7-B0xafjqGCJ5l9OhUYrVqXa8Fplpd941-yAuCfiGO8lMHVI1v00c8Gp9YoRshwXRewxEFLsjWMZgPETJpbhuU2Af4F75WW_5PQqTaju5tBtG9oVxQWJDpxIhaabaoFhSzk9C2CNLbD6cWSL_HMVOmC7cmkSqkDyelll8t_pQZhm5znyRYL1V7CrOeUvU88Yj-qwWXfZLQY-UZGbO56rA..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC90F95276116EB1B7E3B68821AE11B1133EA16A09F174", + "description": "银行漏洞一张支票可兑付多次卑诗企业主以亲身经历发出警告,称该公司一名前员工多次使用手机银行兑现多张支票.Glacier Media报...", + "author": "城市知道温哥华", + "pubDate": "2023-10-09 06:55:35" }, { "title": "2013年,大妈发现银行漏洞,仅1个月就偷走银行5个亿", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3HBP-6BLzry8K6EhXVOSA6VqXa8Fplpd95i37lwf53KQXhIurbqJ78EwAthuML43VGgVJaQi0-yHjXSXQt6yNSFB9IXhZ2qRlx8h84Wk9DhG-65N7kylrgZSAS8EF4JoB7gLO8CtrkqAkUh-oIJhz2JFYUslUu5suP83v9EowWRAL3jlKxMCZS-F8OToB1kbJVAxZxwFsJHdQL0Hr9Gyd3Q..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B420630663E9422FDFACDB8C96265A4FD0E1B1467D3A556", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2w7-B0xafjqGCJ5l9OhUYrVqXa8Fplpd9KtJPMF25CcS3ofmQ43quEG5pmLYVrNNUXmyawfXBJKYvre6iyPyrTZshuBcbOSDNjsr5q39k5t7fECpuf6rH10Gj7kJMqaovDHVwAe0VVd1kRuuF-N3IH5XWotaAbCwXLShr7sPeA-g22H7b_wgrmMvRwO6GdmRYMXyrlEwhomLf3q8uRDTfkw..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC90F95276116EB1B7E3B68821AE11B1133EA16A09F174", "description": "2013年,大妈发现银行漏洞,仅1个月就偷走银行5个亿存到银行的钱,居然不翼而飞了?2013年3月,方德富在工商银行的天台支行,...", "author": "灵枫历史阁", "pubDate": "2023-06-04 17:49:26" }, { - "title": "华裔女留学生发现银行漏洞消费超2千万 获无罪释放", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3HBP-6BLzry8K6EhXVOSA6VqXa8Fplpd9Y9dzG87vgOnZ1Pc8kgUn4bOjDKoqa0WENxM-PZgqv19n30ZqfoqFybLK1SR7LYH-QCkY-6vQJJYQTF1vlweUrhn78sPKj2o_GrDfgQa25qzSTggfIFWslDhRkC_VjqvqrWlk0CAlCiFgyV5xySIl44uhYpsJDbjVNZWI5TFmlNCE8RsmObDbtQ..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B420630663E9422FDFACDB8C96265A4FD0E1B1467D3A556", - "description": "据悉,李佳欣在发现银行漏洞后疯狂消费,购买各种奢侈品,包括爱马仕、迪奥、香奈儿、卡地亚等,甚至在一天之内消费了30万澳元...", - "author": "网易新闻客户端", - "pubDate": "2017-12-04 19:29:22" + "title": "银行漏洞丢钱,中移动花式收费,谁来给我们一个交代?", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2w7-B0xafjqGCJ5l9OhUYrVqXa8Fplpd9aNHSEb35NVWYotN5b-A2qp0YbQkgc1lGvJMuBHh_J1rVScy-K9OFRrcQF1EkXuMDpg-xKGvIFWSxfdDw97a5oD93nJE5OFObiZyJ2rBEpb4yZLjqS29rhMG2FuFfCXCF3XG1ThFmUWdWhqjBqpKmLMxqiGjP12eD5iJ6sCD5Y8D2CsG6-xMgzQ..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC90F95276116EB1B7E3B68821AE11B1133EA16A09F174", + "description": "银行给出的回复也就是杂费、服务费之类的正常说法,具体是什么银行也说不出来.民警将该案件上报,总队也觉得有些蹊跷,案件升...", + "author": "纽扣资讯网", + "pubDate": "2018-08-21 19:29:05" + }, + { + "title": "2013年,52岁大妈发现银行漏洞,一个月偷走银行5个亿,结局如何", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2w7-B0xafjqGCJ5l9OhUYrVqXa8Fplpd94Ivz68ZmAiFnAyStXH0cGT_VHt7Q2ysH4SdzARt5rmqhjETYULiofcNwmFbPhPfEQZCOw4xKpZmf3nYxhPoIMPNeixjdHMyld0xpYiG71Z2KKovt2X1620N10UVM3x3N-PmlIgkRfkaDH1hCMmv0WhvVdcr8t3vCYpnPsJkFdqf1AfaFW2DefQ..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC90F95276116EB1B7E3B68821AE11B1133EA16A09F174", + "description": "然后就联合银行员工一起利用这个漏洞把别人的钱神不知鬼不觉的转到了自己手里.警方调查了邱姓大妈的账户后才惊讶地发现,在短...", + "author": "中外生活", + "pubDate": "2022-01-29 16:17:58" + }, + { + "title": "男子发现银行漏洞,骗其贷款三千多万元:我只有高中学历", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2w7-B0xafjqGCJ5l9OhUYrVqXa8Fplpd9cRbCMbETTiMZeZDTvu2oEk4IKhPySv1gSqjA-oA-xw1641JdDa2W9fzs3jOQTTg2TFfZZPQH1Ya3nzIgO0_fdSLDf966gc06ong-G_Ftycn0G_NugZbUY6chipKM2I_zOFmclJAqy7wmATu0OVDmgqYbn7EmPvb7LtvqgdGArdXvzHZXxeLdyg..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC90F95276116EB1B7E3B68821AE11B1133EA16A09F174", + "description": "这样的漏洞非同小可,可能还有更多的情况发生,银行也是第一次遇到这样的事情,于是立刻选择了报警,根据技术人员的调查,总共...", + "author": "顿时我就惊呆了", + "pubDate": "2019-04-25 17:53:46" }, { "title": "银行漏洞还是储户大意?招行贵宾客户竟然这样被“套路”", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3HBP-6BLzry8K6EhXVOSA6VqXa8Fplpd9v5ehQ7aW1JrlZRA0hZQJXryemPyhOEIG8SsPkKVwA1sPvJD5lLpq7bzDWppkR171ixxIoa_DU8md1f4wjSote19_OcS3Nh9M6nZ0smXRixVcky8-IucQNTXYuUAh4dDsfikJaUblV14sI7zkCqc8NLDAAOczmKq7RstcmWk3oo5Cy6umSSPEsg..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B420630663E9422FDFACDB8C96265A4FD0E1B1467D3A556", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2w7-B0xafjqGCJ5l9OhUYrVqXa8Fplpd90kYFj8cRm3lfxAUEnWhC60ltt8NY2wjKKWUfx3Zazt82miIJlw429hBxNCe8l6a4c1KmK1oP0NO4Wd53yIi3CvrxSvpA_Y3vNiGsFLoy0LRD168-oUjFuLqY8EH56c2KYj0WOByzFLYi6ArV3DgaVQP6ug6Qqr3QWXB8ooh5IbAYJSSFPgfogQ..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC90F95276116EB1B7E3B68821AE11B1133EA16A09F174", "description": "正规渠道转出资金银行漏洞还是储户大意?为何李某等人的账户会在其不知情的情况下顺利被他人支取出资金?交易过程中的银行短信...", "author": "新浪财经", "pubDate": "2020-07-21 15:52:31" }, - { - "title": "黑产利用光大银行漏洞,信用卡1万额度可提15万", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3HBP-6BLzry8K6EhXVOSA6VqXa8Fplpd9_l1Bjwrux0F8XX3ZwV0YGrjfAMzkM73UoJC81rUsfwUnC0L0pK2NGWNghIH-J-fYIncaKaBKcUsuIlpwk4-3jk4VToaA9SRp9Vr4XkwUF0LCcfIRH-kfYWOyUAhatvlV7uhKM-K6ewbGShFPW_aIOF1TAIpU4sbeTHGWMu-x92t5LU3lqtPw9g..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B420630663E9422FDFACDB8C96265A4FD0E1B1467D3A556", - "description": "5月25日,雷锋网宅客频道(微信ID:letshome)从网络安全公司紫豹科技了解到,其情报团队监控到一起银行漏洞事件.紫豹科技相关...", - "author": "可转债摊大饼", - "pubDate": "2018-05-26 13:15:31" - }, - { - "title": "卷!某银行漏洞管理平台投标限价1115万元,浪潮近半价拿下", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3HBP-6BLzry8K6EhXVOSA6VqXa8Fplpd9ifWXEHUoNmfSyLSSYMdnbbqUPPxfMrR_HpEuKaBJKg8PTI9uoyQdisGi3AKbA0cCDIcz0fhIwhmPAuY_jwZcpmJUVzanQWGkl-1v7fBXZvYm5oOi6PffjcUvJJu5EaHf0qt35Qbl3EiiZ3DOOBA-0d2rsxJ5Q5UX7efkrvAUqVI6Ebq8fk9diw..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B420630663E9422FDFACDB8C96265A4FD0E1B1467D3A556", - "description": "近期,农业发展银行采购漏洞管理平台,产品包括漏洞管理系统和漏洞扫描设备,投标限价1115万元,要求提供投标产品的同品牌同类...", - "author": "安知讯", - "pubDate": "2023-02-06 19:02:16" - }, { "title": "六安徽商银行再爆监管漏洞!违规吸收存款,罚25万元!负责人被行政处罚!", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3HBP-6BLzry8K6EhXVOSA6VqXa8Fplpd9kcTUthZEfb8g-5IZT5zCoUSBUeJYC34rdFaDNYyJmAoXFUZ5CJ3JiX9xGPY5VnW5ScRIpQ68upf1GZG4zUK1E4hjcF9tu16epEQS3uFzQnI4_zOPR7F8DHn-d1o-hRu2S5LGk62RcNBRLRFf_9Xto_IOkkmAQabZ_B7BZGsB0cfm0CtGSSkZQQ..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B420630663E9422FDFACDB8C96265A4FD0E1B1467D3A556", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2w7-B0xafjqGCJ5l9OhUYrVqXa8Fplpd9kfyRSbmI5faf2WcGR2iwxZQPj1dkWEg1Zh5uVx7FmMElVjoAVOyNYTI4xQmhT6QSVPGEa2dU8spFaJkpEF-t689xSByv1JEUSEgJB2znRxt7KRsC9Umma4rCU7RAWGn4r_RkIVqoBTmlz6d6PN2M4LjOEL10nVcf-k7gVQ8EMS6rCDCayYmfpA..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC90F95276116EB1B7E3B68821AE11B1133EA16A09F174", "description": "yuan元:银行漏洞百出,金融部门应该管管了.阿莫:金融行业的蛀虫,破坏金融秩序的健康发展...小龙:这样的人居然在银行担担当...", "author": "六地品安", "pubDate": "2018-10-25 14:25:30" }, { "title": "华人女生发现银行漏洞刷爆2千万,挥霍后竟无罪释放", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3HBP-6BLzry8K6EhXVOSA6VqXa8Fplpd9oW-h7ODZ-2qwX0zMPf7C6RCHPwN_SVrexdeJKTUt6u70a3A4YFjhJy2-ceZ6AezyCVa99sgWUSMG1BxjJXmQTC9necAA8QWQpGliM5Vh89nlmjp6vgvDSiKLTXkY9DkrRgWkt8QJ-tB-Ir1Q1eXP1H87FuOXldJ_GV0QQxjE3Dyq3X8EKMKOIA..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B420630663E9422FDFACDB8C96265A4FD0E1B1467D3A556", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2w7-B0xafjqGCJ5l9OhUYrVqXa8Fplpd9JYa4EK0HVMOrGlu0SVE7ZGXgy-PK3XjSfU0GGLV0PSsXs2eyh5dYH1cbB7AzI1StsOWKcznjIfWgpmKaC9qtBDLIguNtlTjLRZ_geimLtZs0_xQItHWmHUniFW5lDDX-YfFY3mGOD33-OXEXZnhdj1QdT8mO5IaIr_jqX6VT1tNS6t2rFt2rnA..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=B0AC90F95276116EB1B7E3B68821AE11B1133EA16A09F174", "description": "李佳欣租住的豪华公寓据悉,李佳欣在发现银行漏洞后疯狂消费,购买各种奢侈品,包括爱马仕、迪奥、香奈儿、卡地亚等,甚至在一...", "author": "外交之声", "pubDate": "2017-12-03 23:54:42" - }, - { - "title": "有钱没命花! 3名华人钻银行“漏洞” 获利千万美元  获刑82年!", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-3HBP-6BLzry8K6EhXVOSA6VqXa8Fplpd9B4aKooqWHsSX8MfFu9KbHvc4fitnLtTm8fvOyPI9IxxpfezbeTUEo-5I1gXwlj2nzTlA7YViDnsYI3MiVnSH83UGdL_9nfZ5CnPFsoQNVHHv5gJHFUCJbKrvsffl30U9SZwi1LbYQp5Kjb6rwDDLFSiA5W18-Aksmk_8Z_sDxnoSYTqT4eyLmA..&type=2&query=%E9%93%B6%E8%A1%8C%E6%BC%8F%E6%B4%9E&token=4B420630663E9422FDFACDB8C96265A4FD0E1B1467D3A556", - "description": "银行明明有时间差漏洞为什么不修补,这其实就是最基本的银行与客户间的信任与承诺,过去的几十年里,对于绝大多数客户来说,这...", - "author": "留学生公社", - "pubDate": "2023-11-18 18:00:57" } ], "支付漏洞": [ + { + "title": "【web安全】 逻辑漏洞之支付漏洞", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2WCeigL8knmSCJ5l9OhUYrVqXa8Fplpd94Y23JPN_huJp72_nEbbf3TTjtGNo8GQObgpGX9MJW8BQ9PMolINa5kNJjvygM72tOM_vGjV2hkHlph4n4_HovH7FpVCLRBr-h_1IXPPwKXwONfGmif1rnAnfa-8JT_1f7c2v8fHa_jyeJZXQI0gcZ9EDczkfmxt5wjsSP3gTabFflztgI7RZ1g..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=B0ACB3708FA8CDB26E6B3F68558A27556E2449786A09F17A", + "description": "支付漏洞简介支付漏洞是 高风险漏洞 也属于 逻辑漏洞,通常是通过 篡改价格、数量、状态、接口、用户名等传参,从而造成 小钱够买...", + "author": "Hacking黑白红", + "pubDate": "2022-05-15 23:51:16" + }, { "title": "天融信:《电子支付漏洞报告》重磅发布!", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-34ZVeDnWy53UK6EhXVOSA6VqXa8Fplpd9OZBwVnf0OZvVkDThqmS0KvPYf9vd0fHL-1NzwpelId6ZjzS0XkOchUXb-1nTvzwUw2lXvVOhe6UnAbSqXsVbT7SxAOPamN2pIyS9f5HmkZ2B7S2a8JMXTvBYYErM7l8LyDqQEOuupqFCNfmVif-GnjgfY1u-EGPEyR6tmRvfLGcNGbbB75bUeA..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=4B422930C9903A8D5255631767A2805A5348862F67D3A55C", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2WCeigL8knmSCJ5l9OhUYrVqXa8Fplpd9f2sGTcx9___3pATpP9gza8zbSkL5U3WhdBIgNWpe-2Dcj59n36BRgfCTDxA5xO574-sPl-7C9wODO6GazGKSbIyAyt4UQhIBKUuDPj0njTmiWhI3Yo059jTQWN6Vj4_H5S88gpomZJcYn5U-IZ8wNDt6D0sSdBwVjlw9mDjU86iq3X8EKMKOIA..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=B0ACB3708FA8CDB26E6B3F68558A27556E2449786A09F17A", "description": "支付漏洞趋势3电子支付的安全风险3.1线下支付安全风险线下交易要求付款者必须持有有效支付工具,如银行卡和智能手机APP.银行...", "author": "天融信", "pubDate": "2023-07-12 18:21:06" }, { - "title": "敏付科技存“支付漏洞”被约谈整改", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-34ZVeDnWy53UK6EhXVOSA6VqXa8Fplpd9mXuxCPlr9wuMG1zGFKYTVdQ6NbOgjV3V00dz2oMl86RWnpNZdq7Kx7bwuNXgqln9u0SXOIrj7gbeHDszmwhzqbV1lKylQ6RfvW3H0ycB_6keGoLVmFkX_AXTykKUvEAJQK3ft1pFVY_Vg6kFWy0wgJjjAXrkYVuU453FXdGyDT9Q_LeJW-Rhtg..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=4B422930C9903A8D5255631767A2805A5348862F67D3A55C", - "description": "支付之家网(ZFZJ.CN) 支付之家网获悉,持牌支付机构敏付科技有限公司(简称“敏付”)因存在“支付漏洞”被北海市公安机关约...", - "author": "支付之家网", - "pubDate": "2022-01-24 08:00:21" - }, - { - "title": "手机支付漏洞已成盗刷之源!小编教你如何防范!", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DCOjX66B0wQAwUyg1TyL97GVgrFeYQugDndALL-7pI3oraek_dUHh9oi3Z6JTpwtmofwF_TsWuaziznq53yTuHU0TY6mSaDfaySSatUm8Q3moWHSxcguBZZMZVuXK0hVAcGyacQrUu5Ux6cGmLX7rcIdYhuFwg_cTwOGdVp36ey1X9nDqO-Kggd2_u5ze64Ec_9Bonpg0IFZDFs5gtIb2zRKTVklZSD7LN6AbwUzvZio_quACiFs8NLmD_Eh-Th7MpDZ-ixMe2dgiZqwg0yoRFw.&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=4B422930C9903A8D5255631767A2805A5348862F67D3A55C", - "description": "手机明明揣在兜里,怎么支付宝和微信钱包里的钱就没了?你以为手机丢了只是损失一部手机吗?说不定紧跟着与手机(号)绑定的移...", - "author": "电脑爱好者", - "pubDate": "2016-05-20 17:30:26" - }, - { - "title": "从最近的微信支付看XXE漏洞", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-34ZVeDnWy53UK6EhXVOSA6VqXa8Fplpd9PohLElZHBTPQonqCfZ0TtAmg5tVFTq0IqC9Rtf6vksxuBUsHWIRChz8_pO8mtSkn9lXhXHUkYMYENsBFAw4MpbDSeZX0cZU1zR3nbXPtYia6L7-46xKO3KmNFRmSu32pWZ_YvGzlmU_R_rWuQm9uNSShFsfQZtiOAS1Eo5m1NxDdrgozfSg6bw..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=4B422930C9903A8D5255631767A2805A5348862F67D3A55C", - "description": "这就很能说明问题,于是老大让我对微信支付漏洞做漏洞研究并找出产品出问题的原因.所以才有了这篇文章.由于本文的初衷是为了...", - "author": "FreeBuf", - "pubDate": "2018-07-08 18:03:00" + "title": "仙桃男子遭遇手机支付漏洞赶紧堵漏", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2WCeigL8knmSCJ5l9OhUYrVqXa8Fplpd9j7S_0XWqpdXgncBXlCy0sxJy-dnTjVQQLe3cn1saobBFvt6kgSC7HPLuOIiQpz1qOHnOdMC3528RSW3AzYvipUM0YtZB8lb9MGyWB2b7Bf9xTaYrQaNWX-YGHiYYxidiZhPcxvx4hKnm2wl-XOfAMCN8_h0caH77mhQlJncmjhGFW6cwuUnkdA..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=B0ACB3708FA8CDB26E6B3F68558A27556E2449786A09F17A", + "description": "7月28日,仙桃市公安局干河派出所民警向“平安仙桃”反映,在办理一起盗窃案时发现手机支付漏洞,希望提醒市民朋友做好防范,...", + "author": "平安仙桃", + "pubDate": "2018-07-29 23:11:01" }, { "title": "支付漏洞:你可能收到了假微信转账", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DCOjX66B0wQAwUyg1TyL97GVgrFeYQugDonBfgmHjxCOd5XAY1uNSeSCEkLPGf4cu3kGZpLvvkSCuHaUmcDkcnrwDQLZHUliJi-KdKemZNhbMwwfs2qZ-ey2WueZfM3Q2xvQYgxQa-wMRl520NthlI2CaKKPCpDZe-eWIvRYrW2ZNcTo3KmF86iEowge5WjG0YYa5AR-5kBvaRxFoZVxS3OmJechIZPIVjJajuUu5V_Us1XMZbTAxic6vsr67-iOh1v5FwtbFaAkiZqwg0yoRFw.&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=4B422930C9903A8D5255631767A2805A5348862F67D3A55C", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DDqNlQ9HgnuFzU8hEYMBMuGVgrFeYQugDonBfgmHjxCOd5XAY1uNSeSCEkLPGf4cu3kGZpLvvkSCuHaUmcDkcnrwDQLZHUliJi-KdKemZNhbMwwfs2qZ-ey2WueZfM3Q2xvQYgxQa-wMRl520NthlI2CaKKPCpDZe-eWIvRYrW2ZNcTo3KmF86iEowge5WjG0YYa5AR-5kBv1OpS43n1wMxX912UfyoUGLenfJ8C2OybBhsSlZN_SUQzd_Jec6qfAJ8Hq-_TNIi5iZqwg0yoRFw.&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=B0ACB3708FA8CDB26E6B3F68558A27556E2449786A09F17A", "description": "这一支付方式被别有用心的不法分子玩出了“新套路”.从事服装生意7年的晓雯,眼看“回头客”已将钱转至自己的微信上,谁知是...", "author": "画乡之窗", "pubDate": "2017-02-28 18:28:24" }, + { + "title": "史上最全移动支付漏洞案例 谁动了银行卡里的钱?", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DDqNlQ9HgnuFzU8hEYMBMuGVgrFeYQugDqr95PEUjTPeCjEDtUWlMFjnjBVP8MvhBB3rS-ONO8kWUyXnYwgoFpUbgnrKgIxixCCgP3PeeOCp-4-KGyD-MDLGBaPQAm5n4u5TKu2pEERBbVp5wVG_sJnPLaqVLQTbtqO8XPmq69L45iqF-gaWWwGT45bziwKiEvYbrg2FCKNgLsDMIcZrUfzO_NlKo3WTjLmtkuovIefxsM-zEBbALQGLB2JaKNLoGIytGehe9qu5iZqwg0yoRFw.&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=B0ACB3708FA8CDB26E6B3F68558A27556E2449786A09F17A", + "description": "雷锋网硬创公开课-移动支付漏洞案例@GeekPwn随着移动支付的普及,我们的生活变得越来越便利.我们甚至已经可以不带钱包、现...", + "author": "GeekPwn", + "pubDate": "2016-04-19 09:35:10" + }, + { + "title": "敏付科技存“支付漏洞”被约谈整改", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2WCeigL8knmSCJ5l9OhUYrVqXa8Fplpd9OGGFlIbC8_NotFQwKpOae3W7HAvzpqn5KJhDAOJPsIQNWpMy7jKN5Yfb0h9tCh3xCzeDgDONjYkwCAEOVlhTJm2sW2kV5zP-NUT1tAwWTMqwztmt_f9nJAGEdeSDVR5K12B7iEHS8gvjVvSKZf_iDUXekHDX5kBoun7-qI7XOq4CYioxHkzTmA..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=B0ACB3708FA8CDB26E6B3F68558A27556E2449786A09F17A", + "description": "支付之家网(ZFZJ.CN) 支付之家网获悉,持牌支付机构敏付科技有限公司(简称“敏付”)因存在“支付漏洞”被北海市公安机关约...", + "author": "支付之家网", + "pubDate": "2022-01-24 08:00:21" + }, + { + "title": "从最近的微信支付看XXE漏洞", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2WCeigL8knmSCJ5l9OhUYrVqXa8Fplpd9iXQh_b6rXsTdZA2nJXgLlWruppt9jYpcdm5eubV2v1jbsmCVkEE_ZQfMs4acXf73qtrCcAIPdo94SOIlbtagYocuK3UW6E7ALt_T-6AZ-mSRDOEoGDWz4rLXBNbGtV_JOD2CAmCGBJ7g0edUBbHhxgVoQZy_jzphS7BKonTUVWejotuuiAmOIg..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=B0ACB3708FA8CDB26E6B3F68558A27556E2449786A09F17A", + "description": "这就很能说明问题,于是老大让我对微信支付漏洞做漏洞研究并找出产品出问题的原因.所以才有了这篇文章.由于本文的初衷是为了...", + "author": "FreeBuf", + "pubDate": "2018-07-08 18:03:00" + }, { "title": "就一加手机支付漏洞讨论在线支付中的安全风险", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-34ZVeDnWy53UK6EhXVOSA6VqXa8Fplpd9PohLElZHBTPQonqCfZ0TtAmg5tVFTq0IqC9Rtf6vksxuBUsHWIRCh-L5VoC6JnrqApIEh_-2oIPZjtRsmX4pPhbTbM6tiyMB93hkLeBBYoEZOkmyt0NGPjZnp902yylFJvxWBnNXdCSxEFrHicHaEgf3IuPe41nQmxVL51aVjsJflztgI7RZ1g..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=4B422930C9903A8D5255631767A2805A5348862F67D3A55C", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2WCeigL8knmSCJ5l9OhUYrVqXa8Fplpd9iXQh_b6rXsTdZA2nJXgLlWruppt9jYpcdm5eubV2v1jbsmCVkEE_Zb8wnF53gDQ2wN11urmyuWMvpan-PwKL0NY0LhGB0MImnfX70HMQnmDWOOhNaH0mwTLPNogY-a0VJjn9G0z72T4UOqhO-qYku2-x5Sj62WwDKyFHieFDS9RS6t2rFt2rnA..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=B0ACB3708FA8CDB26E6B3F68558A27556E2449786A09F17A", "description": "支付交易的处理是由CyberSource处理的,但是支付表单却仍然托管在OnePlus的基础设施中.如果攻击者拥有该页面的读写权限,那...", "author": "FreeBuf", "pubDate": "2018-02-12 19:17:27" }, { "title": "利用支付漏洞套现1300万被判15年", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-34ZVeDnWy53UK6EhXVOSA6VqXa8Fplpd9NFACt4r9XtAYsMhQto1wHGOTujEotFi8vSykO0Z07Xs9-tfxZkeUpTcjypPGbjy1dzndMaxfsw-B9kMCysl9Q2JC1F-c4KWIii5atqTrR2E5H27QHHkcE0EslGSb2u3Sda0wOdznXVXGERgXa2BsvbMBN1ghMG_zS-JkohXtNAgY-UZGbO56rA..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=4B422930C9903A8D5255631767A2805A5348862F67D3A55C", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2WCeigL8knmSCJ5l9OhUYrVqXa8Fplpd9BqCHf-Pg3u3irJTI0ZroXw96JgzRfNKNzEQdkrTtQP1NyOYQjnoHN-heF4o7CKysrtWx1a9zDq6F77Kr2fRMn9E1wCZbp1XgpXYS9q-4pfkbHxa9Ckx13NE-iLq4PcICFTbbMVCJi3xv_v8NMhNt1eO8FlWTQxYNC3-p5SJTR5HI3OTRHYU2og..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=B0ACB3708FA8CDB26E6B3F68558A27556E2449786A09F17A", "description": "利用支付漏洞,他在半年时间里收入1300万元,光用来打赏主播就花了400万元.撰文 | 张浩东出品 | 支付百科 今年8月份,一个17岁黑...", "author": "支付百科", "pubDate": "2022-01-03 13:54:08" }, { - "title": "支付漏洞实战", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-34ZVeDnWy53UK6EhXVOSA6VqXa8Fplpd9Mhk1GjVLnS3VHON7gk3zpZbU9KmHHCJJLg47g3ZmcNtZwp5Wq-oGePXvAK5urD-4C4yk8q__JM5Jcdj-G0RjPcE93MwAKtCMZRGrluOMy6HFTdJK5HByXKYdciKZTBSxD8fZWRsvoT7OjCsM5Jo-FiA9YWwQV24IAKCjGJg0JjHS-e4Yz84xMA..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=4B422930C9903A8D5255631767A2805A5348862F67D3A55C", - "description": "本文作者:Heart(Ms08067实验室 SRSP TEAM小组成员) 首先先了解支付漏洞:支付漏洞的理解通常都是篡改价格.比如,一分钱买...", - "author": "Ms08067安全实验室", - "pubDate": "2020-08-28 09:00:22" - }, - { - "title": "银行卡免密支付漏洞这么大!", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6ft3wfAVofsP5Peu-UiA4DCOjX66B0wQAwUyg1TyL97GVgrFeYQugDuQ4kL7uR81Sd2Pr115nJuaGM5bMh5P11s3nipXYh7GfWqnDDAJY_PIfdbK8hCMlRkr3S_2VjJLus9RPhsk5RWH7sUYR0dd2wdL7a2QZgEM0OgnsQfgmP4ojfo-M4oiDVPRlI4SIFNmId2K64e_gRujQTWJyfib4dr5Q4nGwc20xoJoT7dq0ZINPpTcUcFfc5Yu3qxonRRd6dOgptLPH2lD_2VmKXtAg58IEiz6Zny7IiZqwg0yoRFw.&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=4B422930C9903A8D5255631767A2805A5348862F67D3A55C", - "description": "仔细想想,我们信用卡设定的自动还款也是一样,不需要密码,钱就划走了,还有去超市被商户扫支付宝和微信支付的付款码的时候,...", - "author": "犀牛生意经", - "pubDate": "2016-08-29 09:23:44" - }, - { - "title": "某小程序的支付漏洞+任意地址删除", - "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgS0Sn1n1P5K-34ZVeDnWy53UK6EhXVOSA6VqXa8Fplpd9AKiOW-WJ7zh0-bPf6gXkyGutYIrVVRNKhs5Zma6jodl3HgUbak8MkfEx6b8RQNbvd8Ml2TZMWJlGlNstepzq4wMfBNggnY_PHlanDvUbRD6Nm-vWZS8ZccVToRBI7HqsiJmSmiuTe5jjbPG3Qbk94xqlbuVgE15V_OmylOfgzc1hWLv6O878UA..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=4B422930C9903A8D5255631767A2805A5348862F67D3A55C", - "description": "常见的逻辑漏洞有交易支付、密码修改、密码找回、越权修改、越权查询、突破限制等,下图是简单的逻辑漏洞总结,在挖掘的过程中...", - "author": "狐狸说安全", - "pubDate": "2023-09-14 14:25:44" + "title": "微信支付惊曝安全漏洞!0元就能买买买!官方称已修复", + "link": "https://weixin.sogou.com/link?url=dn9a_-gY295K0Rci_xozVXfdMkSQTLW6cwJThYulHEtVjXrGTiVgSxWqTuIv-Rl2WCeigL8knmSCJ5l9OhUYrVqXa8Fplpd9Or1wEfOL8POacffDdvgYo2n_G83jAcwhfTk6RbYxCcF2W2zO1KTiB7J7RYonu_CdMnlXud1U1Uo3eWVhLryBfAigsFEh-iAEdkwkty0p_9kx-VL7DljB7G09A7VMTVBdBdS-mXKP3mPwSyFHPEvQDY9WIml0LG38azWvpm3Hrs3RtmyIGw2VAg..&type=2&query=%E6%94%AF%E4%BB%98%E6%BC%8F%E6%B4%9E&token=B0ACB3708FA8CDB26E6B3F68558A27556E2449786A09F17A", + "description": "陌陌的微信支付漏洞利用过程vivo的微信支付漏洞利用过程值得注意的是,目前漏洞的详细信息以及攻击方式已被公开,安全人员建议...", + "author": "中国网", + "pubDate": "2018-07-04 17:38:58" } ] } \ No newline at end of file diff --git a/resources/JSON/uni_rss.json b/resources/JSON/uni_rss.json index 66469da..b2da51e 100644 --- a/resources/JSON/uni_rss.json +++ b/resources/JSON/uni_rss.json @@ -1,82 +1,82 @@ [ { - "title": "老显卡福音!美团开源首发INT8无损满血版DeepSeek R1", - "link": "https://tech.meituan.com/2025/03/07/meituan-int8-deepseek-r1.html", + "title": "美团 LongCat 开源 General 365:树立推理评测新标尺", + "link": "https://tech.meituan.com/2026/05/15/longcat-general-365.html", "author": "美团技术团队", - "description": "DeepSeek R1模型权重原生为FP8类型,仅能被英伟达新型GPU支持。美团技术团队进行了INT8精度量化的尝试,量化后模型精度基本无损,可部署到A100等其他型号GPU,从而解锁了芯片限制;相比BF16实现了50%的吞吐提升,降低了推理成本。相关技术已在Hugging Face上开源。", - "published": "2025-03-07 08:00:00", + "description": "美团 LongCat 团队正式发布 General 365。我们发现,在对 26 款主流模型的实测中,目前地表最强的 Gemini 3 Pro 准确率仅为 62.8%,而绝大多数模型甚至没能摸到 60 分的及格线。", + "published": "2026-05-15 08:00:00", "source": "美团技术团队" }, { - "title": "上下文感知的聚合页广告优化实践", - "link": "https://tech.meituan.com/2025/03/02/context-enhanced-learning-for-intelligent-marketing.html", + "title": "用Agent评测思路管理AI Coding —— 31万行代码AI重构的实践", + "link": "https://tech.meituan.com/2026/05/07/agent-ai-coding.html", "author": "美团技术团队", - "description": "聚合页广告将商家和优惠信息以多种形式聚合展示给用户,是美团广告业务中一个重要的业务场景。本文从最能影响用户决策的“发券”和“排序”两个方向出发,介绍了上下文感知建模在广告场景的落地方案,证明了聚合页上下文感知的收益空间。希望能对从事相关研究的同学带来一些启发或帮助。", - "published": "2025-03-02 08:00:00", + "description": "当 90% 以上代码由 AI 生成,决定系统走向的不是谁写得更快,而是约束 AI 的能力。没有统一规范,AI 只会成倍放大混乱。本文基于 31 万行代码重构实践,分享我们如何用 Agent 评测思路管理 AI Coding——通过技术债梳理、建设Rule、重构 SOP 和 Pre-PR 机制,把重构从高成本专项变成随迭代持续推进的日常动作。", + "published": "2026-05-07 08:00:00", "source": "美团技术团队" }, { - "title": "行为正则化与顺序策略优化结合的离线多智能体学习算法", - "link": "https://tech.meituan.com/2025/02/21/marl-in-meituan.html", + "title": "LARYBench 发布:定义具身动作表征 ImageNet,首次度量从人类视频学习的泛化表征", + "link": "https://tech.meituan.com/2026/04/27/longcat-larybench.html", "author": "美团技术团队", - "description": "离线多智能体强化学习(MARL)是一个新兴领域,目标是在从预先收集的数据集中学习最佳的多智能体策略。随着人工智能技术的发展,多智能体系统在诸如自动驾驶、智能家居、机器人协作以及智能调度决策等方面展现了巨大的应用潜力。但现有的离线MARL方法也面临很多挑战,仍存在不协调行为和分布外联合动作的问题。为了应对这些挑战,中山大学计算机学院、美团履约平台技术部开展了学术合作项目,并取得了一些的成果,希望分享给大家。", - "published": "2025-02-21 08:00:00", + "description": "LARYBench (Latent Action Representation Yielding Benchmark),一个指引从大规模的视觉数据学习到通用的隐式动作表征的系统化评测基准。实验结果表明:在动作泛化和控制精度上,通用视觉模型的表现均显著优于专门为具身智能设计的动作专家模型,具身动作表征可以从大规模人类视频数据中涌现。", + "published": "2026-04-27 08:00:00", "source": "美团技术团队" }, { - "title": "预测技术在美团弹性伸缩场景的探索与应用", - "link": "https://tech.meituan.com/2025/02/14/prediction-technology-in-meituan-elastic-scaling.html", + "title": "突破零样本 TTS 音色克隆上限:LongCat-AudioDiT 的声音克隆艺术", + "link": "https://tech.meituan.com/2026/04/20/longcat-audiodit.html", "author": "美团技术团队", - "description": "在管理企业大规模服务弹性伸缩的场景下,Web应用的负载时序数据分析和预测至关重要。然而,由于应用的周期性特征和负载的复杂性,寻找一种能够适应所有应用的预测模型成为了一项挑战。美团与中国人民大学信息学院柴云鹏教授团队展开了“预测技术在弹性伸缩场景的应用”科研合作,取得了较好的成果。希望能给从事相关研究工作的同学带来一些帮助或启发。", - "published": "2025-02-14 08:00:00", + "description": "能不能让 AI 直接学会声音本身的规律,跳过中间环节?为破解这一技术瓶颈,美团 LongCat 团队正式发布 LongCat-AudioDiT。在该模型中,彻底抛弃梅尔谱等中间表示,直接在波形潜空间进行基于扩散模型的文本转语音(Text-to-Speech, TTS),从根源阻断数据转换的级联误差。", + "published": "2026-04-20 08:00:00", "source": "美团技术团队" }, { - "title": "美团技术年货 | 600+页电子书,算法、工程、测试、数据、安全系列大合集", - "link": "https://tech.meituan.com/2025/01/16/2024-spring-festival-present.html", + "title": "LongCat-Flash-Prover:AI 攻克数学定理证明,不仅要“算得对”,更要“证得严”", + "link": "https://tech.meituan.com/2026/04/07/longcat-flash-prover.html", "author": "美团技术团队", - "description": "值蛇年春节到来之际,我们精选过去一年公众号30多篇技术文章和科研论文,整理制作成一本600多页的电子书,作为一份特别的新年礼物,献给每一位热爱技术的你。愿大家乘风破浪,勇往直前!", - "published": "2025-01-16 08:00:00", + "description": "在常规的数学解题中,模型只需要“答对最终数值”即可,但数学定理证明不同,它要求极度严苛的逻辑链条,任何一句自然语言的模棱两可,都可能导致整个证明的崩塌。那么,如何让 AI 从“猜答案”走向“严谨证明”,成为复杂推理具有挑战的课题。为了解答这个问题,我们开源了专门用于数学形式化与定理证明的模型 —— LongCat-Flash-Prover。", + "published": "2026-04-07 08:00:00", "source": "美团技术团队" }, { - "title": "鸿蒙应用签名实操及机制探究", - "link": "https://tech.meituan.com/2025/01/06/openharmony.html", + "title": "美团发布原生多模态 LongCat-Next:当视觉和语音成为AI的母语", + "link": "https://tech.meituan.com/2026/04/02/longcat-next.html", "author": "美团技术团队", - "description": "本文对鸿蒙公开资料进行了深入分析和解读,梳理了鸿蒙单框架应用的签名机制,拆解每一步的实操过程和背后的实现原理,并对源码分析整理签名的校验机制。从中管中窥豹,探究鸿蒙系统的安全设计思路,希望能给从事鸿蒙研发的同学提供一些借鉴。", - "published": "2025-01-06 08:00:00", + "description": "LongCat-Next 是我们在通往物理世界 AI 道路上的一次探索。今天,我们把研究思路的核心——LongCat-Next 模型和它的离散分词器全部开源,希望更多开发者能基于它,构建真正能感知、理解并作用于真实世界的 AI。", + "published": "2026-04-02 08:00:00", "source": "美团技术团队" }, { - "title": "2024 | 美团技术团队热门技术文章汇总", - "link": "https://tech.meituan.com/2024/12/26/2024-happy-new-year-top10.html", + "title": "美团 BI 在指标平台和分析引擎上的探索和实践", + "link": "https://tech.meituan.com/2026/03/20/busniness-intelligence-practice-in-meituan.html", "author": "美团技术团队", - "description": "本文整理了2024年美团技术团队最为热门的10篇技术文章,这些文章覆盖了基础理论、数据存储、因果推断、搜索推荐、智能测试、知识图谱、领域驱动设计等多个技术领域,期望这些精选内容能为大家带来一些启发或帮助。愿大家在新的一年里,持续深耕技术沃土,稳步前行,不断攀登新的高峰。", - "published": "2024-12-26 08:00:00", + "description": "美团数据平台构建了以指标平台为核心的新一代 BI 架构,通过自动语义和增强计算两种核心能力的建设,部分解决了传统 BI 平台在个性化数据集驱动下产生的数据口径混乱、查询性能差等问题。", + "published": "2026-03-20 08:00:00", "source": "美团技术团队" }, { - "title": "AutoConsis:UI内容一致性智能检测", - "link": "https://tech.meituan.com/2024/11/21/autoconsis-ui-meituan.html", + "title": "重塑站外体验:大众点评 M 站基于 Qwik.js 的重构实践", + "link": "https://tech.meituan.com/2026/03/13/qwik-practice-in-dianping.html", "author": "美团技术团队", - "description": "美团到店研发平台质量工程部与复旦大学计算机学院周扬帆教授团队展开了大前端智能化测试领域的科研合作,从UI界面内容一致性校验入手,并实现了一套自动化智能检测流程,相关论文被软件工程领域具有国际影响力的会议ICSE 2024(CCF-A类会议)的Software In Practice Track(软件工程实践应用)收录。", - "published": "2024-11-21 08:00:00", + "description": "为突破传统 Web 框架的性能瓶颈,大众点评增长团队引入 Qwik.js 重构 M 站核心页面架构,解决了重构前页面加载慢、维护成本高的难题。借助“可恢复性”能力,我们甩掉了传统水合的性能损耗,搭配全链路优化与工程化适配,让各个页面的性能指标都得到了明显提升。本文将拆解本次重构的技术选型、原理与落地细节,沉淀前沿框架在站外场景的落地经验。", + "published": "2026-03-13 08:00:00", "source": "美团技术团队" }, { - "title": "CIKM 2024 | 美团技术团队精选论文解读", - "link": "https://tech.meituan.com/2024/10/31/cikm-2024-meituan.html", + "title": "LongCat 为 OpenClaw 装上效率引擎:你的自动化任务还能再快 30%", + "link": "https://tech.meituan.com/2026/03/09/longcat-openclaw.html", "author": "美团技术团队", - "description": "本文精选了美团技术团队被 CIKM 2024 收录的 8 篇论文进行解读,覆盖了自监督学习、解释生成、CTR预测、跨域推荐、向量召回、图像生成、时效预测等多个技术领域。这些论文有美团独立研究,还有跟高校、科研机构合作的成果。希望能给从事相关研究工作的同学带来一些帮助或启发。", - "published": "2024-10-31 08:00:00", + "description": "依赖第三方订阅进行非官方调用存在账号安全风险与服务不稳定性。为规避此类问题,LongCat 团队提供稳定合规的官方免费 API,开发者可通过官方渠道直接接入 OpenClaw,在确保账号安全的前提下构建自动化工作流。", + "published": "2026-03-09 08:00:00", "source": "美团技术团队" }, { - "title": "大前端:如何突破动态化容器的天花板?", - "link": "https://tech.meituan.com/2024/10/18/recce-in-meituan.html", + "title": "美团发布基于 N-gram 全新模型:嵌入扩展新范式,实现轻量化 MoE 高效进化", + "link": "https://tech.meituan.com/2026/02/10/longcat-flash-lite.html", "author": "美团技术团队", - "description": "长久以来,容器要实现动态化和双端复用,难免要牺牲掉一些性能。有没有办法让动态化容器的性能尽可能接近原生?美团金服大前端团队给出了一种解决方案,尝试突破动态化容器的天花板。", - "published": "2024-10-18 08:00:00", + "description": "LongCat-Flash-Lite是一款拥有 685 亿参数,每次推理仅激活 29 亿~ 45 亿参数的轻量化 MoE 模型。通过将超过 300 亿参数高效用于嵌入层,LongCat-Flash-Lite 不仅超越了参数量等效的 MoE 基线模型,还在与同规模现有模型的对比中展现出卓越的竞争力,尤其在智能体与代码领域表现突出。", + "published": "2026-02-10 08:00:00", "source": "美团技术团队" }, { @@ -123,7 +123,7 @@ "title": "P2P 僵尸网络:回顾·现状·持续监测", "link": "https://blog.netlab.360.com/p2p-botnet-monitor/", "author": "360Netlab", - "description": "

缘起

\n

P2P结构的网络比传统的C/S结构具有更好的可扩展性和健壮性,这些优点很早就为botnet的作者所认识到并被用到

", + "description": "

缘起

\n

P2P结构的网络比传统的C/S结构具有更好的可扩展性和健壮性,这些优点很早就为botnet的作者所认识到并被用到

", "published": "Wed, 02 Nov 2022 03:11:33 GMT", "source": "360 Netlab Blog" }, @@ -200,125 +200,189 @@ "source": "360 Netlab Blog" }, { - "title": "机器学习的逻辑回归模型", - "link": "https://paper.seebug.org/3303/", + "title": "GLiGuard:面向大语言模型安全防护的模式条件分类方法", + "link": "https://paper.seebug.org/3485", "author": "", - "description": ".katex img {\n display: block;\n position: absolute;\n width: 100%;\n height: inherit;\n }\n\n作者:0x7F@知道创宇404实验室\n日期:2025年2月28日\n1. 前言\n在「机器学习的线性回归模型」文章中,我们学习了监督学习中如何使用线性回归模型拟合连...", - "published": "2025-03-13 15:37:00", + "description": "作者:Urchade Zaratiana, Mary Newhauser, George Hurn-Maloney, Ash Lewis 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2605.07982v1 摘要 保障大语言模型(LLM)输出安全合规、符合政策要求,需要能跨多安全维度实时扩展的内容审核机制。然而,当前最优的安全护栏模型均基于70亿–27...", + "published": "2026-05-11 16:40:13", "source": "知道创宇404实验室" }, { - "title": "「深蓝洞察」2024年度最憋屈的漏洞披露", - "link": "https://paper.seebug.org/3304/", + "title": "基于大语言模型的 AI 智能体安全威胁与防御系统性综述——分层攻击面框架", + "link": "https://paper.seebug.org/3484", "author": "", - "description": "作者:DARKNAVY\n原文链接:https://mp.weixin.qq.com/s/Y8-wT88VnLeMUiD-HssPyw\n在网络安全领域,漏洞披露一直被视为保护用户的重要环节,但在现实中,这一过程却充满了争议和矛盾。究竟什么才算得上“负责任的披露”?当厂商在信息公开和补丁发布上占据主导地位,而安全研究者则需要耗费大量精力进行沟通与博弈,这一模式是否还能真正实现保护用户安全的初衷?...", - "published": "2025-03-12 16:28:00", + "description": "作者:Kexin Chu 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/pdf/2604.23338v2 摘要 智能体AI系统可跨多会话规划、保留记忆、调用外部工具并与对等智能体协同,无状态大语言模型则不具备这些能力。现有安全分类体系按攻击类型(如提示注入、越狱)划分威胁,却未说明脆弱的架构组件或威胁显现的时间尺度。本文直接解决这些结构性问题,提出分层攻击面模型(...", + "published": "2026-05-09 16:53:56", "source": "知道创宇404实验室" }, { - "title": "「深蓝洞察」2024年度最“安全”的防线", - "link": "https://paper.seebug.org/3302/", + "title": "ReTokSync:面向生成式语言隐写的自同步分词消歧方法", + "link": "https://paper.seebug.org/3481", "author": "", - "description": "作者:DARKNAVY\n原文链接:https://mp.weixin.qq.com/s/LaM5iz_EKbAK_lkaAcBshw\n在攻防对抗日益激烈的2024年,安全软件一直被视为企业安全防线的重要基石。然而,这些安全软件本身也可能存在漏洞,甚至被攻击者利用作为入侵的跳板来对用户造成危害。多年来,因为安全软件而导致的事故不禁让人产生一个疑问——安全软件真的可信吗?\n安全软件被滥用为攻击工...", - "published": "2025-03-11 16:39:00", + "description": "作者:Yaofei Wang, Rui Wang, Weilong Pang等 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2604.25486v1 摘要 生成式语言隐写(GLS)通过将秘密信息嵌入自然语言生成过程实现隐蔽通信。然而在实际部署中,GLS易受分词歧义影响:相同的表层文本在接收端可能被重新分词为不同的token序列,破坏通信双方共享的解码状...", + "published": "2026-05-08 16:42:48", "source": "知道创宇404实验室" }, { - "title": "「深蓝洞察」2024年度最难以阻挡的攻防趋势", - "link": "https://paper.seebug.org/3301/", + "title": "素域 PINI:后量子 NTT 掩码的机器验证合成定理", + "link": "https://paper.seebug.org/3480", "author": "", - "description": "作者:DARKNAVY\n原文链接:https://mp.weixin.qq.com/s/lUA03YjBiCAatcJh-bUHEQ\n近年来,漏洞攻防不断演进。从多年前仅需一个栈溢出就能攻破系统,到如今需要运用各种精妙的手法来突破系统的层层防御。“盾”与“矛”始终处于动态对抗:每当新的防御措施出现,新的攻击手段随之而来。防御机制的升级促使攻击者寻找新的突破口,而攻击方法的创新又推动着防御技术...", - "published": "2025-03-10 16:19:00", + "description": "作者:Ray Iskander,Khaled Kirah 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/abs/2604.25878v1 摘要 本文是后量子密码掩码数论变换(NTT)硬件形式化验证分析系列论文的第六篇。第一篇论文[1]建立了 QANARY 平台的结构依赖分析,第二篇论文[2]量化了部分 NTT 掩码下的安全裕度。布尔掩码的合成理论通过无干扰(NI)...", + "published": "2026-05-06 16:44:36", "source": "知道创宇404实验室" }, { - "title": "机器学习的线性回归模型", - "link": "https://paper.seebug.org/3300/", + "title": "Google DeepMind:AI 智能体陷阱", + "link": "https://paper.seebug.org/3479", "author": "", - "description": ".katex img {\n display: block;\n position: absolute;\n width: 100%;\n height: inherit;\n }\n\n作者:0x7F@知道创宇404实验室\n日期:2025年2月28日 \n1. 前言\n跟随着 ChatGPT 等大语言模型掀起的人工智能的浪潮,在这个时间点学习 A...", - "published": "2025-03-07 15:22:00", + "description": "作者:Matija Franklin, Nenad Tomašev等 译者:知道创宇404实验室翻译组 原文链接:https://blog.qiaomu.ai/api/images/document/2026/04/603f0cae8cd8ab94-ai-agent-trap.pdf 摘要 自主AI智能体日益在网络中自主行动,它们面临一种全新挑战:信息环境本身。由此产生了一个关键安全漏洞,我们称之...", + "published": "2026-04-24 16:54:27", "source": "知道创宇404实验室" }, { - "title": "Llama 的悖论:深入探索 Llama.cpp 的堆迷宫,从堆溢出到远程代码执行", - "link": "https://paper.seebug.org/3299/", + "title": "合法终端管理软件遭滥用:疑似银狐攻击事件分析与溯源", + "link": "https://paper.seebug.org/3478", "author": "", - "description": "作者:Patrick Peng \n译者:知道创宇404实验室翻译组\n原文链接:https://retr0.blog/blog/llama-rpc-rce\n我一直对 Llama.cpp 情有独钟,它堪称我在人工智能与机器学习研究领域孜孜以求的“终极目标”。不仅如此,能在如此复杂且成熟的人工智能项目中挖掘出堆栈/堆溢出导致的远程代码执行漏洞,听起来就格外酷炫。当然,我内心深处渴望在人工智能项目中...", - "published": "2025-03-06 14:27:00", + "description": "作者:知道创宇高级威胁情报团队 一、事件概述 近期,我们在客户现场应急响应中排查到一起新型攻击事件。攻击者伪造常用工具安装包诱导执行,随即部署一款带有合法数字签名的终端管理软件。经技术溯源确认,该程序具备主机信息收集、远程控制等完整恶意能力,其 C2 基础设施与 “银狐” 高度关联。由于合法数字签名的天然 “免杀” 特性,该恶意程序可轻易绕过主流杀毒软件检测,实现隐蔽入侵与长期控制。 银狐简介 银...", + "published": "2026-04-15 03:31:00", "source": "知道创宇404实验室" }, { - "title": "Emoji攻击:增强针对Judge LLMs检测的越狱攻击", - "link": "https://paper.seebug.org/3297/", + "title": "SkillTrojan:针对基于技能的智能体系统的后门攻击", + "link": "https://paper.seebug.org/3477", "author": "", - "description": "作者:Zhipeng Wei, Yuqi Liu, N. Benjamin Erichson\n译者:知道创宇404实验室翻译组\n原文链接:https://arxiv.org/html/2411.01077v2\n摘要\n越狱(Jailbreaking)技术可以欺骗大型语言模型(LLMs),使其生成受限制的输出,从而构成严重威胁。其中一种防御方法是使用另一个 LLM 作为 Judge(裁判)来评估...", - "published": "2025-03-04 17:37:00", + "description": "作者:Yunhao Feng, Yifan Ding, Yingshui Tan等 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2604.06811v1/https://arxiv.org/html/2604.06811v1 摘要 基于技能的智能体系统通过组合可复用技能完成复杂任务,在提升模块化与可扩展性的同时,引入了尚未被充分研究的安全攻击面。本文提...", + "published": "2026-04-09 08:26:00", "source": "知道创宇404实验室" }, { - "title": "模型序列化攻击", - "link": "https://paper.seebug.org/3298/", + "title": "GUARD‑SLM:面向小语言模型、基于令牌激活的越狱攻击防御方法", + "link": "https://paper.seebug.org/3476", "author": "", - "description": "译者:知道创宇404实验室翻译组\n原文链接:https://github.com/protectai/modelscan/blob/main/docs/model_serialization_attacks.md\n机器学习(ML)模型是基于机器学习的应用程序的核心资产。安全地存储和检索模型对成功至关重要。根据使用的机器学习库,模型可以以多种常见格式保存。流行的选择包括:Pickle、HDF5...", - "published": "2025-03-04 15:09:00", + "description": "作者:Md. Jueal Mia1, Joaquin Molto1, Yanzhao Wu1, M. Hadi Amini 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2603.28817v1/https://arxiv.org/html/2603.28817v1 摘要 小语言模型(SLM)正成为大语言模型(LLM)高效且经济可行的替代方案,在计算成本...", + "published": "2026-04-03 02:48:00", "source": "知道创宇404实验室" }, { - "title": "关于 Chat Template 注入方式的学习", - "link": "https://paper.seebug.org/3296/", + "title": "静默颠覆:通过卫星系统供应链植入物实施的传感器欺骗攻击", + "link": "https://paper.seebug.org/3475", "author": "", - "description": "作者: dawu@知道创宇404实验室\n日期: 2025年2月28日 \n1. 前言\n伴随着年后 DeepSeek R1 模型的火热,号称能运行 DeepSeek R1 “满血版” 的 Ktransformers 框架也受到了大量关注。在使用该框架和阅读相关源码时,我发现框架在借助聊天模版(chat template) 将用户输入转化为输入模型的 token 列表的过程中,可能会存在类似于拼...", - "published": "2025-03-03 14:35:00", + "description": "作者:Jack Vanlyssel, Gruia-Catalin Roman, Afsah Anwar 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2603.10388v1/https://arxiv.org/html/2603.10388v1 摘要 欺骗攻击是地面系统最具破坏性的网络威胁之一,而在太空中这类威胁愈发危险——卫星难以在轨维修,且运营方依...", + "published": "2026-03-24 09:47:00", "source": "知道创宇404实验室" }, { - "title": "从零开始搭建:基于本地 DeepSeek 的 Web 蜜罐自动化识别", - "link": "https://paper.seebug.org/3295/", + "title": "增强网络入侵检测系统:一种抵御对抗攻击的多层集成方法", + "link": "https://paper.seebug.org/3474", "author": "", - "description": "作者:wh0am1i@知道创宇404实验室\n日期:2025年2月28日 \n1. 前言\npocsuite3 框架可以通过 --dork 或 --dork-zoomeye 参数获取 ZoomEye 网络空间测绘平台的搜索引擎数据。但随着近几年网络空间领域的攻防对抗升级,导致网络空间中存在大量的蜜罐。为了过滤掉这些蜜罐,ZoomEye 中加入了自动标注蜜罐的识别算法, 同时 pocsuite3 ...", - "published": "2025-02-28 14:18:00", + "description": "作者:Nasim Soltani, Shayan Nejadshamsi等 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2603.10413v1/https://arxiv.org/html/2603.10413v1 摘要 对抗样本会对机器学习(ML)算法构成严重威胁。若被用于操控基于机器学习的网络入侵检测系统(NIDS)行为,将危及网络安全。本研究旨...", + "published": "2026-03-23 08:31:00", "source": "知道创宇404实验室" }, { - "title": "DeepSeek 启示:深度揭秘基于 PTX 的 GPU 底层优化技术", - "link": "https://paper.seebug.org/3294/", + "title": "CUDA Agent:面向高性能 CUDA 内核生成的大规模智能体强化学习", + "link": "https://paper.seebug.org/3473", "author": "", - "description": "作者:启明星辰ADLab\n原文链接:https://mp.weixin.qq.com/s/FVVes7UIK_OORUk3fXy9mQ\n一、概述\n近日,DeepSeek连续不断地开源了多个项目,一时间引发了关于GPU底层优化的热潮,这在如今国内算力被广泛打压的背景下,给我国在现代高性能计算(HPC)和人工智能(AI)领域带来了希望,其中尤其引人瞩目的是关于底层PTX优化技术引入,这在一定程度...", - "published": "2025-02-27 15:24:00", + "description": "作者:Weinan Dai, Hanlin Wu, Qiying Yu等 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2602.24286v1/https://arxiv.org/html/2602.24286v1 摘要 GPU内核优化是现代深度学习的基础,但仍是一项高度专业化的任务,需要深厚的硬件专业知识。尽管大语言模型(LLM)在通用编程任务中表现...", + "published": "2026-03-17 09:50:00", "source": "知道创宇404实验室" }, { - "title": "银狐突袭!DeepSeek本地化部署暗藏“致命陷阱”", - "link": "https://paper.seebug.org/3293/", + "title": "Unmasking SilverFox’s New Trends: Decoding Evasion Tactics, Domain Impersonation, and Mass-Generated Fake Software", + "link": "https://paper.seebug.org/3472", "author": "", - "description": "作者:启明星辰ADLab\n原文链接:https://mp.weixin.qq.com/s/VUzwaR7eti2YoNebGFz80A\n一、前言\n近期,国产大模型DeepSeek凭借其高效的推理能力、创新性的优化技术、低门槛本地化部署能力、灵活的开源商业授权等,迅速成为开源生态中的“现象级选手”。然而,技术普及的加速期往往伴随着网络安全攻防对抗的升级。当前,大量政府、企业和个人开发者在基于D...", - "published": "2025-02-27 10:47:00", + "description": "Author: Knownsec 404 Advanced Threat Intelligence Team I. Introduction SilverFox has become one of the most active cyber threats in recent years, targeting managerial and finance staff in organization...", + "published": "2026-03-13 08:30:00", "source": "知道创宇404实验室" }, { - "title": "使用 DeepSeek-R1 在固件漏洞挖掘领域的新实践", - "link": "https://paper.seebug.org/3292/", + "title": "基于图像的提示注入:通过视觉嵌入的对抗性指令劫持多模态大语言模型", + "link": "https://paper.seebug.org/3471", "author": "", - "description": "作者:启明星辰ADLab\n原文链接:https://mp.weixin.qq.com/s/rZ4iGXs2O_xYD1yEOyu3CQ\n1. 前言\n在数字化时代,固件是硬件设备的核心软件组件,直接控制着硬件的运行状态和功能,其安全性至关重要。一旦固件存在安全漏洞,黑客即可利用来攻击设备的运行或者控制设备发起其它网络攻击,典型有Mirai病毒利用设备固件漏洞发起大规模的分布式拒绝服务。因此,挖...", - "published": "2025-02-26 15:20:00", + "description": "作者:Neha Nagaraja, Lan Zhang, Zhilong Wang 译者:知道创宇404实验室翻译组 原文链接:https://arxiv.org/html/2603.03637v1/https://arxiv.org/html/2603.03637v1 摘要:多模态大语言模型(MLLMs)融合视觉与文本能力赋能各类应用,但这种融合也引入了新的安全漏洞。本文研究基于图像的提示注入(...", + "published": "2026-03-11 01:29:00", "source": "知道创宇404实验室" }, { - "title": "Fuzz 工作流解析与 AI 引入方案分享", - "link": "https://paper.seebug.org/3291/", + "title": "虚假 OpenClaw 安装程序如何传播 GhostSocks 恶意软件", + "link": "https://paper.seebug.org/3470", "author": "", - "description": "作者:ghost461@知道创宇404实验室\n时间:2025年2月26日\n本文为知道创宇404实验室内部分享沙龙“404 Open Day”的议题内容,作为目前团队AI安全研究系列的一部分,分享出来与大家一同交流学习。\n1. 概述\n本文受 Google 安全博客的《Leveling Up Fuzzing: Finding more vulnerabilities with AI》启发,结合自...", - "published": "2025-02-26 14:10:00", + "description": "作者:Jai Minton, Ryan Dowd 原文链接:https://www.huntress.com/blog/openclaw-github-ghostsocks-infostealer/https://www.huntress.com/blog/openclaw-github-ghostsocks-infostealer 摘要 信息窃取型恶意软件是针对面向公众系统发起严重攻击的初始访问...", + "published": "2026-03-10 01:45:00", "source": "知道创宇404实验室" }, { - "title": "「深蓝洞察」2024年度最悲剧的后门", - "link": "https://paper.seebug.org/3290/", + "title": "当 AI Agent 拥有系统权限:OpenClaw 安全风险全景分析", + "link": "https://paper.seebug.org/3469", "author": "", - "description": "作者:DARKNAVY\n原文链接:https://mp.weixin.qq.com/s/BZtSTpTQbNiAY_KDhnqc8Q\n“看到了软件的源码,就意味着没有后门吗?”\n1983年的图灵奖颁奖仪式上,Ken Thompson抛出了这个问题。作为历史上唯三在40岁以下获得图灵奖的传奇之一,他在获奖演讲中向听众展示了如何通过在编译器中植入后门来骇入由无害源码编译得到的Unix系统。Ken...", - "published": "2025-02-25 17:17:00", + "description": "作者:知道创宇积极防御实验室 完整的 OpenClaw 安全实践 Skill、自动化审计工具已在 GitHub 开源。项目地址:https://github.com/knownsec/openclaw-security/https://github.com/knownsec/openclaw-security 一、背景说明 随着 AI Agent 技术的快速演进,具备自动化决策与自主执行能力的开源...", + "published": "2026-03-06 07:34:00", "source": "知道创宇404实验室" }, + { + "title": "我们扫描了五万个 Skill,发现危险仍然存在 | 朱雀实验室", + "link": "https://security.tencent.com/index.php/blog/msg/224", + "author": "", + "description": "真正的问题不是扫出了什么,是:这个生态还有没有,有效的免疫系统? 腾讯安全平台部负责人 Coolc腾讯安全平台部负责人 Coolc", + "published": "2026-04-26 15:51:04", + "source": "腾讯安全响应中心" + }, + { + "title": "从发现 33 个 0day 漏洞,看安全攻防的下半场 | 朱雀实验室", + "link": "https://security.tencent.com/index.php/blog/msg/222", + "author": "", + "description": "2026 年 4 月 7 日,Anthropic 联合 Apple、Google、Microsoft 等 45 家机构发布 Project Glasswing 计划,并宣布其尚未公开发行的前沿模型 Claude Mythos Preview 在所有主要操作系统和浏览器中发现了数千个…", + "published": "2026-04-10 17:45:09", + "source": "腾讯安全响应中心" + }, + { + "title": "从4.8亿下载量的 LiteLLM投毒事件,看 AI 基础设施安全攻与防 | 朱雀实验室", + "link": "https://security.tencent.com/index.php/blog/msg/214", + "author": "", + "description": "近日,知名大模型网关工具 LiteLLM 遭遇供应链投毒,其 1.82.7和1.82.8 版本被植入恶意代码。由于该项目月下载量极高(近1亿月下载量),且被 DSPy 等众多主流…", + "published": "2026-03-31 17:03:16", + "source": "腾讯安全响应中心" + }, + { + "title": "当AI学会背刺:深度剖析Agent Skills的安全陷阱 | 朱雀实验室", + "link": "https://security.tencent.com/index.php/blog/msg/215", + "author": "", + "description": "你是否想过,当你让 AI 帮你写代码时,它可能正在你背后悄悄地干着其它事——比如,加密你的所有文件,然后弹出一个勒索提示?这不是吓唬你,而是我们研究后发现在各种…", + "published": "2026-01-23 17:18:24", + "source": "腾讯安全响应中心" + }, + { + "title": "当 AI 成为代码贡献者,软件安全正在发生怎样的变化?", + "link": "https://security.tencent.com/index.php/blog/msg/216", + "author": "", + "description": "随着 AI 技术加速融入软件研发流程,AI 已经成为新时代的“代码贡献者”。在显著提升研发效率的同时,AI 生成代码也对软件安全、漏洞治理和工程责任边界提出了新的挑战。", + "published": "2026-01-05 17:37:14", + "source": "腾讯安全响应中心" + }, + { + "title": "A.S.E 2.0 正式发布 | 开放生态 · 动静协同 · 让 AI 编程安全可量化", + "link": "https://security.tencent.com/index.php/blog/msg/217", + "author": "", + "description": "A.S.E (AI Code Generation Security Evaluation) - 你的 AI 鉴赏官,为你提供大模型安全实践工具,让你一眼就能选出最靠谱的 AI 队友。", + "published": "2025-11-07 11:05:37", + "source": "腾讯安全响应中心" + }, + { + "title": "00后黑客落网!曾运营大型僵尸网络,频繁攻击腾讯游戏、DeepSeek、X平台", + "link": "https://security.tencent.com/index.php/blog/msg/218", + "author": "", + "description": "据美国司法部通报,活跃多年的高危DDoS僵尸网络“RapperBot”(历史频繁攻击腾讯游戏、DeepSeek、X平台的幕后黑手)现已被成功取缔。该僵尸网络主谋、22岁的美国俄勒冈州男子Ethan…", + "published": "2025-09-26 17:32:19", + "source": "腾讯安全响应中心" + }, + { + "title": "DeepSeek本地化部署有风险!快来看看你中招了吗?| 朱雀实验室", + "link": "https://security.tencent.com/index.php/blog/msg/219", + "author": "", + "description": "2025年伊始,AI领域迎来一个重要变革 - DeepSeek R1开源发布,凭借着低成本、性能出众的优势,这个模型在短短几周内就获得空前关注。由于官网服务经常繁忙,大家开始选择使用Ollama+OpenWebUI、LM…", + "published": "2025-02-18 16:04:12", + "source": "腾讯安全响应中心" + }, { "title": "AI 帮你高效构建代码安全策略【大模型应用实践系列四】", "link": "https://security.tencent.com/index.php/blog/msg/213", @@ -351,62 +415,6 @@ "published": "2024-11-27 10:39:46", "source": "腾讯安全响应中心" }, - { - "title": "警惕Hugging Face开源组件风险被利用于大模型供应链攻击", - "link": "https://security.tencent.com/index.php/blog/msg/209", - "author": "", - "description": "著名AI社区Hugging Face开源组件datasets存在不安全特性,可引发供应链后门投毒攻击风险。", - "published": "2023-11-03 14:00:00", - "source": "腾讯安全响应中心" - }, - { - "title": "虚拟货币挖矿检测与防御", - "link": "https://security.tencent.com/index.php/blog/msg/208", - "author": "", - "description": "从流量和主机层入手,分析挖矿木马的防御之策。", - "published": "2021-11-18 18:00:58", - "source": "腾讯安全响应中心" - }, - { - "title": "安全通知|NPM官方仓库遭遇coa等恶意包投毒攻击", - "link": "https://security.tencent.com/index.php/blog/msg/207", - "author": "", - "description": "腾讯洋葱入侵检测系统发现开源软件沙箱主机出现异常行为,跟进发现npm官方仓库的coa、rc被投毒攻击,已经在腾讯软件源紧急拦截相关版本。目前npm官方仓库已将相应版本的恶意包删除,但由于国内开源镜像站均同步npm官方仓库且存在缓存,所以恶意包还可能通过各个开源镜像站影响广大用户。", - "published": "2021-11-05 21:31:07", - "source": "腾讯安全响应中心" - }, - { - "title": "云原生安全攻防|使用eBPF逃逸容器技术分析与实践", - "link": "https://security.tencent.com/index.php/blog/msg/206", - "author": "", - "description": "在新版本容器运行时中适用的攻击手法,并使用新方式把“任意文件写”转化为“远程代码执行”。", - "published": "2021-11-03 18:56:37", - "source": "腾讯安全响应中心" - }, - { - "title": "Ghostscript沙箱绕过(CVE-2021-3781)分析", - "link": "https://security.tencent.com/index.php/blog/msg/205", - "author": "", - "description": "完整分析从ImageMagick到Ghostscript的攻击利用链", - "published": "2021-10-29 18:40:35", - "source": "腾讯安全响应中心" - }, - { - "title": "实时中文语音克隆——开源项目MockingBird体验", - "link": "https://security.tencent.com/index.php/blog/msg/204", - "author": "", - "description": "5秒内克隆生成任意声音?以语音克隆开源项目MockingBird为例看AI项目面临的安全风险", - "published": "2021-10-27 22:06:51", - "source": "腾讯安全响应中心" - }, - { - "title": "关于BGP那些事儿", - "link": "https://security.tencent.com/index.php/blog/msg/203", - "author": "", - "description": "这是Facebook创立以来最严重的一次网络访问事故,在这起故障中,我们又看到了BGP的身影", - "published": "2021-10-19 18:10:52", - "source": "腾讯安全响应中心" - }, { "title": "红蓝对抗之隐蔽通信应用及防御", "link": "https://security.tencent.com/index.php/blog/msg/202", @@ -415,38 +423,6 @@ "published": "2021-09-27 16:40:43", "source": "腾讯安全响应中心" }, - { - "title": "Web应用组件自动化发现的探索", - "link": "https://security.tencent.com/index.php/blog/msg/201", - "author": "", - "description": "另一种方式的指纹识别", - "published": "2021-09-17 19:30:59", - "source": "腾讯安全响应中心" - }, - { - "title": "云原生——容器和应用安全运营实践思考", - "link": "https://security.tencent.com/index.php/blog/msg/200", - "author": "", - "description": "从安全攻击面出发,以防御视角分享我们在云原生安全运营上的一些实践和思考", - "published": "2021-09-07 18:00:59", - "source": "腾讯安全响应中心" - }, - { - "title": "自动化数据分析下的威胁发现", - "link": "https://security.tencent.com/index.php/blog/msg/199", - "author": "", - "description": "企业防御之安全运营数据分析", - "published": "2021-08-16 18:41:00", - "source": "腾讯安全响应中心" - }, - { - "title": "可信安全网络 —— 安全左移之DDoS对抗", - "link": "https://security.tencent.com/index.php/blog/msg/198", - "author": "", - "description": "DDoS对抗新思路", - "published": "2021-07-28 18:13:13", - "source": "腾讯安全响应中心" - }, { "title": "攻防启示:Chromium组件风险剖析与收敛", "link": "https://security.tencent.com/index.php/blog/msg/197", @@ -456,32 +432,152 @@ "source": "腾讯安全响应中心" }, { - "title": "腾讯 SOAR 的安全运营探索", - "link": "https://security.tencent.com/index.php/blog/msg/196", + "title": "红蓝对抗中的云原生漏洞挖掘及利用实录", + "link": "https://security.tencent.com/index.php/blog/msg/183", "author": "", - "description": "与业界先行者相比,我们数据面板、剧本等平台功能方面仍有一些差距,未来也会持续建设", - "published": "2021-07-09 17:55:48", + "description": "分享攻防场景中的云原生相关漏洞挖掘及漏洞利用实例。", + "published": "2021-03-02 09:00:26", "source": "腾讯安全响应中心" }, { - "title": "警惕!这种新型挖矿可能盯上你主机", - "link": "https://security.tencent.com/index.php/blog/msg/195", + "title": "腾讯蓝军安全通告:WebLogic远程代码执行漏洞(CVE-2020-14645)", + "link": "https://security.tencent.com/index.php/blog/msg/157", "author": "", - "description": "除了门罗币,这种不消耗CPU资源的虚拟货币可能成为黑产的新宠儿,提前预知,方能不乱阵脚。", - "published": "2021-07-01 20:27:10", + "description": "Oracle官方发布WebLogic安全更新,修复严重漏洞。", + "published": "2020-07-15 16:16:05", "source": "腾讯安全响应中心" }, { - "title": "腾讯自研HIDS「洋葱」后台上云架构演进实践", - "link": "https://security.tencent.com/index.php/blog/msg/194", + "title": "红蓝对抗之Windows内网渗透", + "link": "https://security.tencent.com/index.php/blog/msg/154", "author": "", - "description": "云计算时代,洋葱拥抱云原生方案实践,希望能为大家系统上云提供参考。", - "published": "2021-06-17 18:16:08", + "description": "无论是渗透测试,还是红蓝对抗,目的都是暴露风险,促进提升安全水平。企业往往在外网布置重兵把守,而内网防护相对来说千疮百孔,所以渗透高手往往通过攻击员工电脑、外网服务、职场WiFi等方式进入内网,然后发起内网渗透。而国内外红蓝对抗服务和开源攻击工具大多数以攻击Windows域为主,主要原因是域控拥有上帝能力,可以控制域内所有员工电脑,进而利用员工的合法权限获取目标权限和数据,达成渗透目的。", + "published": "2020-06-30 19:02:37", "source": "腾讯安全响应中心" }, + { + "title": "现网发现新型DVR UDP反射攻击手法记实", + "link": "https://security.tencent.com/index.php/blog/msg/146", + "author": "", + "description": "近日,游戏行业某云客户遭受到大流量DDoS攻击,宙斯盾团队跟进溯源。在对抓取的攻击样本进行深入分析之后,我们发现这是一种新的UDP反射放大攻击手法,相关情况也分享同步与业界同行。", + "published": "2020-03-31 21:28:26", + "source": "腾讯安全响应中心" + }, + { + "title": "WAF建设运营及AI应用实践", + "link": "https://security.tencent.com/index.php/blog/msg/145", + "author": "", + "description": "对于大型互联网公司而言,业务众多,网络流量巨大,涉及的域名、服务器资源均属海量,在这个规模下的WAF的设计、研发、运营将会有比较多的现实挑战。", + "published": "2020-03-24 15:29:51", + "source": "腾讯安全响应中心" + }, + { + "title": "浅谈DDoS攻防对抗中的AI实践", + "link": "https://security.tencent.com/index.php/blog/msg/144", + "author": "", + "description": "DDoS对抗不仅需要“降本”还需要“增效”,宙斯盾DDoS防护系统通过AI算法学习经验数据,形成具备自学习、自进化、自适应特性的流量模型,将‘被动应对’发展成为‘主动进化’,增强DDoS攻防能力。", + "published": "2020-03-18 16:55:51", + "source": "腾讯安全响应中心" + }, + { + "title": "美团SRC助力 | 你敢信,他们都来了!HPW白帽世界大会2026全议程发布", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247494896&idx=1&sn=5b3d4f7d62a8e7212d9dff1cc4910a45", + "author": "美团技术团队", + "description": "顶尖AI安全红队亲自传授秘籍,HPW2026,所有议题一次解锁!", + "published": "2026-05-06 17:00:00", + "source": "微信公众号" + }, + { + "title": "江湖征召令|美团SRC专测活动进行中", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247494896&idx=2&sn=62b64d34eb01c165640ce5b18fc56cf3", + "author": "美团技术团队", + "description": "活动时间:2026年4月27日 - 5月20日", + "published": "2026-05-06 17:00:00", + "source": "微信公众号" + }, + { + "title": "江湖征召令|美团SRC专测活动正式开启", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247494891&idx=1&sn=15e081c3c53f5ab38a5dd3380e470121", + "author": "美团技术团队", + "description": "活动时间:2026年4月27日 - 5月20日", + "published": "2026-04-27 10:08:00", + "source": "微信公众号" + }, + { + "title": "美团SRC发布|AI生成漏洞报告提交规范公告", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247494883&idx=1&sn=f6eba6477129792a9c38896caff14be0", + "author": "美团技术团队", + "description": "请白帽师傅们在提交报告时恪守本文规范", + "published": "2026-04-24 14:23:00", + "source": "微信公众号" + }, + { + "title": "致敬代码背后的守护者,美团SRC 2025年度荣誉答谢", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247494861&idx=1&sn=d50a94a54627f3de0db0ce8a06ff598e", + "author": "美团技术团队", + "description": "一份关于技术与荣誉的年度总结", + "published": "2026-01-22 19:21:00", + "source": "微信公众号" + }, + { + "title": "热招|美团安全邀你共赴新征途!", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247494835&idx=1&sn=c20429c5049a31399fed6b33469f0f4d", + "author": "美团技术团队", + "description": "欢迎你的加入,让我们奔赴热爱,无畏山海,共筑安全长城。", + "published": "2025-12-11 12:18:00", + "source": "微信公众号" + }, + { + "title": "活动|秋日“挖洞”季,邀您来测!", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493937&idx=1&sn=4a134bd3c3e16a0177d3b7ccc56aee2f", + "author": "美团技术团队", + "description": "内含中秋礼品福利!请及时更新平台默认收货地址哦!", + "published": "2025-09-24 18:37:00", + "source": "微信公众号" + }, + { + "title": "活动|Keeta安全专测英雄帖:邀您洞见非凡,守护新域!", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493924&idx=1&sn=0e8ab3b3a2af4d1b20e62b31fb82ccc2", + "author": "美团技术团队", + "description": "活动时间:2025年8月22日-9月5日", + "published": "2025-08-21 18:30:00", + "source": "微信公众号" + }, + { + "title": "美团安全应急响应中心漏洞测试高压线V2.0", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493924&idx=2&sn=af01328cacbe1fb5c29a08e52a26457a", + "author": "美团技术团队", + "description": "为帮助所有白帽子在美团SRC测试过程中规避违规风险,保护平台和白帽子的安全和利益,确保平台漏洞奖励机制得以良性运作,美团安全应急响应中心发布《漏洞测试高压线V2.0》。", + "published": "2025-08-21 18:30:00", + "source": "微信公众号" + }, + { + "title": "筑牢AI防线,大模型安全专测活动已开启!", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493903&idx=1&sn=1c69a453dfe76bcd593df539dda3c6a6", + "author": "美团技术团队", + "description": "活动时间:6月9日-6月22日", + "published": "2025-06-09 10:01:00", + "source": "微信公众号" + }, + { + "title": "报名 | 美团技术沙龙【AI+安全:智能技术在安全领域的应用探索】", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493889&idx=1&sn=4701431171173014d00aef3e7050372d", + "author": "美团技术团队", + "description": "6月19日(周四) 14:00 - 17:30,线上直播,快来报名吧", + "published": "2025-05-29 12:03:00", + "source": "微信公众号" + }, + { + "title": "活动 |「春风送暖,安全同行」美团直播专测召集令", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493762&idx=1&sn=5599435d2eeb9cce063cb57ec68f6acb", + "author": "美团技术团队", + "description": "活动时间:2025.03.24-04.03", + "published": "2025-03-24 10:00:00", + "source": "微信公众号" + }, { "title": "荣誉 | 美团SRC2024年终奖励荣耀揭晓", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493717&idx=1&sn=fe94bf647a29fff908cc7ed29b70554c&chksm=ec180986db6f80904efbb237256479db8ebb60e2521763cbbb272c604f641c3549211606bcc5&scene=58&subscene=0#rd", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493717&idx=1&sn=fe94bf647a29fff908cc7ed29b70554c", "author": "美团技术团队", "description": "向每一位守护者致敬!", "published": "2025-01-17 18:01:00", @@ -489,7 +585,7 @@ }, { "title": "美团SRC邀您领取新年礼盒啦!", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493717&idx=2&sn=f317d3190e4e199c933d1b29fa2f2d94&chksm=ec180986db6f809093c190d72edcad5b3b289422052597427f2eeb42ea44a93a729aff84a87c&scene=58&subscene=0#rd", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493717&idx=2&sn=f317d3190e4e199c933d1b29fa2f2d94", "author": "美团技术团队", "description": "获取方式见文中。", "published": "2025-01-17 18:01:00", @@ -497,7 +593,7 @@ }, { "title": "鸿蒙应用签名实操及机制探究", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493695&idx=1&sn=89a37bdee61841877d1acf28b8a68cbf&chksm=ec1809ecdb6f80faccbf32d3be7076832bfb6b0d443881e05d93cac96cecaad3952bdf8fba50&scene=58&subscene=0#rd", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493695&idx=1&sn=89a37bdee61841877d1acf28b8a68cbf", "author": "美团技术团队", "description": "本文对鸿蒙公开资料进行了深入分析和解读,梳理了鸿蒙单框架应用的签名机制,拆解每一步的实操过程和背后的实现原理,并对源码分析整理签名的校验机制。", "published": "2024-12-31 10:01:00", @@ -505,7 +601,7 @@ }, { "title": "白帽世界大会 | 美团SRC期待与您在澳门相见", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493590&idx=1&sn=0281d8d3faa07d26a91b338102cb7c61&chksm=ec180605db6f8f138853b493e0e34cf24d9ccc265a72fc721fba5cfbd25c0854f757b3cd0e16&scene=58&subscene=0#rd", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493590&idx=1&sn=0281d8d3faa07d26a91b338102cb7c61", "author": "美团技术团队", "description": "HackProve World 2025,用真正的技术,验证数字世界的安全。", "published": "2024-12-19 17:31:00", @@ -513,7 +609,7 @@ }, { "title": "年末冲刺!2024漏洞马拉松『美团站』正式启动", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493372&idx=1&sn=f8ed6cc9dc514805d164f9d47277e8f5&chksm=ec18072fdb6f8e39c609c95ac1b0aba49aa2e9f70246d4c7af7ce82ca6d40ee9caa7fef0e362&scene=58&subscene=0#rd", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493372&idx=1&sn=f8ed6cc9dc514805d164f9d47277e8f5", "author": "美团技术团队", "description": "活动时间:即日起至2024年12月15日。", "published": "2024-12-03 18:30:00", @@ -521,7 +617,7 @@ }, { "title": "活动|短视频激励系统专测开启!", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493353&idx=1&sn=60d8aea7934fa17d1e2077e2b879d3ae&chksm=ec18073adb6f8e2cdb2c0881302bcad6094724119dd5f6d5e0ecccc18fc1e2323067d6d00593&scene=58&subscene=0#rd", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493353&idx=1&sn=60d8aea7934fa17d1e2077e2b879d3ae", "author": "美团技术团队", "description": "活动时间:11月25日-11月28日", "published": "2024-11-25 10:00:00", @@ -529,7 +625,7 @@ }, { "title": "活动|美团SRC七周年,多重惊喜派送中!", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493342&idx=1&sn=5aadfd7e004ccab04ad3286741aeca6f&chksm=ec18070ddb6f8e1b739a0a4e922e09723ce21d5d296c78c97d8c69a515bcf67f4c84e27e7972&scene=58&subscene=0#rd", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493342&idx=1&sn=5aadfd7e004ccab04ad3286741aeca6f", "author": "美团技术团队", "description": "活动时间:11月11日10: 00-11月18日0: 00", "published": "2024-11-11 10:08:00", @@ -537,106 +633,10 @@ }, { "title": "活动正式开启|美团SRC邀您加入双11安全保卫战", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493302&idx=1&sn=38e8eb7b46ba68d83932055efcf06386&chksm=ec180765db6f8e73f7e8e9039563065a99de826daeafcb49ee5b0231e48816907e306d43fe1c&scene=58&subscene=0#rd", + "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493302&idx=1&sn=38e8eb7b46ba68d83932055efcf06386", "author": "美团技术团队", "description": "美团SRC活动时间:2024.09.19-09.30", - "published": "2024-09-18 19:36:05", - "source": "微信公众号" - }, - { - "title": "你的中秋福利已上线!美团SRC预祝各位中秋佳节愉快", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493276&idx=1&sn=02f5b0a74938d0be8764ba9658a0c98e&chksm=ec18074fdb6f8e593725883103e1ae90af22dda6af3e178d008da8c28713a6d0ba252605396e&scene=58&subscene=0#rd", - "author": "美团技术团队", - "description": "兑换时间:9月5日18:00起。", - "published": "2024-09-05 11:42:42", - "source": "微信公众号" - }, - { - "title": "美团安全25届秋招启动,心动offer等你拿!", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493276&idx=2&sn=ca4080f1e1607bb22730e538f02ea6a0&chksm=ec18074fdb6f8e5920d56d573dd6c838afb76315ebd36dc1f113f5a747fdf584302ecd8faf0b&scene=58&subscene=0#rd", - "author": "美团技术团队", - "description": "网申时间:即日起至2024年10月31日。", - "published": "2024-09-05 11:42:42", - "source": "微信公众号" - }, - { - "title": "美团安全亮相KCon 2024,分享RDI技术新视角", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493266&idx=1&sn=148ab2c53446796b415384e9fd0dbaf2&chksm=ec180741db6f8e572f536ff844ca8d39d378c9d8a24b6cdbaaad31101f21175ab9637b7f578d&scene=58&subscene=0#rd", - "author": "美团技术团队", - "description": "RDI技术以其高效和隐蔽的特性,在恶意代码开发中占据了不可替代的地位,尤其是在现代C2架构中发挥着关键作用。", - "published": "2024-09-04 10:27:03", - "source": "微信公众号" - }, - { - "title": "美团安全25届秋招启动,心动offer等你拿!", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493248&idx=1&sn=74436f59fe2d7b203814c0aa0c91800a&chksm=ec180753db6f8e45010393fcad6b673a46c7db73b98e93dbdff667495e798104c8ec3b8345b8&scene=58&subscene=0#rd", - "author": "美团技术团队", - "description": "网申时间:即日起至2024年10月31日。", - "published": "2024-08-28 10:27:44", - "source": "微信公众号" - }, - { - "title": "美团安全团队在第五期移动互联网APP产品安全漏洞技术沙龙中分享移动应用自动化安全实践历程", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493233&idx=1&sn=fcbc3a07cee5cf64e3c6b24925e2bd46&chksm=ec1807a2db6f8eb4f9e072ab8c517a39542fe6943b282abfc2271cd3ac558ac504c019e15748&scene=58&subscene=0#rd", - "author": "美团技术团队", - "description": "", - "published": "2024-08-20 14:21:24", - "source": "微信公众号" - }, - { - "title": "新机会,新挑战,新可能,美团信息安全部邀你加入~", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493119&idx=1&sn=ce5d6f489f9d802e5ff5075d90c1ca17&chksm=ec18042cdb6f8d3a4e15bdc3051d92275f75a65008e0b8ce8f0a67746aa967ad5e8cdd1be831&scene=58&subscene=0#rd", - "author": "美团技术团队", - "description": "欢迎向我们投递简历或推荐身边朋友投递简历!", - "published": "2024-07-29 14:37:08", - "source": "微信公众号" - }, - { - "title": "活动 | 开店宝专测已开启,邀你参加!", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493104&idx=1&sn=3f5514acce114a1dfeb40fbba5738023&chksm=ec180423db6f8d356d65dc19e7934dca55a1fb1c9ff7b8428f7962b13e552a13af3920ba89b0&scene=58&subscene=0#rd", - "author": "美团技术团队", - "description": "活动时间:6月24日—6月30日", - "published": "2024-06-24 10:06:08", - "source": "微信公众号" - }, - { - "title": "美团安全团队携议题亮相CSOP大会,共探网络安全高效运营之道", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493090&idx=1&sn=8b1c7315ef4ae4b2331c0f75d181825e&chksm=ec180431db6f8d27893e8aa04f4f005c2dfa6ce34ad5d62215a6ce17fe070977e33e213ec309&scene=58&subscene=0#rd", - "author": "美团技术团队", - "description": "议题聚焦于SOC平台的构建历程,从概念的萌芽到实践的落地,再到不断的优化升级各阶段进行深入探讨。", - "published": "2024-05-17 18:54:11", - "source": "微信公众号" - }, - { - "title": "招聘 | 美团安全实习生招聘正在进行中", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493059&idx=1&sn=362fa696530db9493fa8c165e6f64e6b&chksm=ec180410db6f8d06d8e74196d9ef89d31c92ce0964c8fddc638fe17e2642ff0b9806086b55e5&scene=58&subscene=0#rd", - "author": "美团技术团队", - "description": "一起成长,一起BETTER!", - "published": "2024-05-07 17:27:47", - "source": "微信公众号" - }, - { - "title": "活动 | 优选专测,提供测试账号,速来!", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493041&idx=1&sn=daf61012fec9f3aa6fd227dd1f39b828&chksm=ec180462db6f8d74fdff596bd8b60fab42607b31db7c8a820b9a1007af9036c59da29cc74151&scene=58&subscene=0#rd", - "author": "美团技术团队", - "description": "4月23日至4月30日0:00,邀你参与优选业务专测!", - "published": "2024-04-23 09:56:55", - "source": "微信公众号" - }, - { - "title": "特别漏洞奖励,祝你挖洞把把都超神~", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493024&idx=1&sn=c0b762ef29c35ece879f1fdb7560c710&chksm=ec180473db6f8d65ce15c48fdcd8ef0c2525421c8f95a70f6cb7f7d282ccc304faf03ac0c8a8&scene=58&subscene=0#rd", - "author": "美团技术团队", - "description": "", - "published": "2024-03-26 19:58:18", - "source": "微信公众号" - }, - { - "title": "3倍活动?戳这里!", - "link": "https://mp.weixin.qq.com/s?__biz=MzI5MDc4MTM3Mg==&mid=2247493024&idx=2&sn=9ca5dd0591b7ffb8dd9cbd166d94826d&chksm=ec180473db6f8d65e4e4b185143fe292dc4aac665b4ae9e5607d14a79213d690aec68dce3daa&scene=58&subscene=0#rd", - "author": "美团技术团队", - "description": "", - "published": "2024-03-26 19:58:18", + "published": "2024-09-19 10:01:00", "source": "微信公众号" } ] \ No newline at end of file diff --git a/resources/JSON/xianzhi.json b/resources/JSON/xianzhi.json index 5814478..bd3d219 100644 --- a/resources/JSON/xianzhi.json +++ b/resources/JSON/xianzhi.json @@ -1,1002 +1,1002 @@ [ { - "title": "从PAGE_GUARD HOOK 到内存扫描规避", - "link": "https://xz.aliyun.com/t/17046", - "published": "2025-01-07T12:31:52+08:00", - "id": "https://xz.aliyun.com/t/17046", + "title": "泛微e9分析思路", + "link": "https://xz.aliyun.com/news/92131", + "published": "2026-05-13 12:53:11", + "id": "https://xz.aliyun.com/news/92131", "summary": { "@type": "html", - "#text": "从PAGE_GUARD HOOK 到内存扫描规避" + "#text": "本文基于泛微e9(9.00.210804版本),系统阐述OA系统的安全审计方法。文章涵盖环境搭建、六大类路由(/weaver/、/api/、/services/*、/dwr/*等)的分析,详细剖析SecurityMain安全过滤机制、XssRequestWeblogic参数过滤、登录绕过等技术要点。通过FileDownloadLocation文件读取、browser.jsp SQL注入等实战案例," } }, { - "title": "免杀基础-硬断Hook", - "link": "https://xz.aliyun.com/t/17045", - "published": "2025-01-07T12:31:25+08:00", - "id": "https://xz.aliyun.com/t/17045", + "title": "copy failed 原理详解", + "link": "https://xz.aliyun.com/news/92128", + "published": "2026-05-12 14:34:18", + "id": "https://xz.aliyun.com/news/92128", "summary": { "@type": "html", - "#text": "免杀基础-硬断Hook" + "#text": "Copy Fail (CVE-2026-31431) 是 Linux 内核身份验证加密模块中的一个逻辑错误。它允许**非特权用户向任意可读文件的页缓存中写入 4 字节的任意数据,并且支持多次写入**" } }, { - "title": "记一次题型VM-软件系统安全赛-pwn-", - "link": "https://xz.aliyun.com/t/17043", - "published": "2025-01-07T01:21:16+08:00", - "id": "https://xz.aliyun.com/t/17043", + "title": "【漏洞研究】多层内容解析链引发的 XSS 语义错位绕过及根因分析", + "link": "https://xz.aliyun.com/news/92125", + "published": "2026-05-12 05:28:32", + "id": "https://xz.aliyun.com/news/92125", "summary": { "@type": "html", - "#text": "记一次题型VM-软件系统安全赛-pwn-" + "#text": "在 Markdown、公式渲染等富内容处理场景下,由于第三方组件与浏览器底层(HTML、URL、JS 解析器)在实体解码、协议提取和规范化处理上存在机制差异,极易引发解析层面的语义错位,导致了XSS防御体系的 Bypass" } }, { - "title": "aws之创建后门实现持久化利用的方式", - "link": "https://xz.aliyun.com/t/17040", - "published": "2025-01-06T17:14:00+08:00", - "id": "https://xz.aliyun.com/t/17040", + "title": "GraalVM Polyglot 沙箱逃逸:跨语言上下文 RCE", + "link": "https://xz.aliyun.com/news/92120", + "published": "2026-05-11 09:34:57", + "id": "https://xz.aliyun.com/news/92120", "summary": { "@type": "html", - "#text": "aws之创建后门实现持久化利用的方式" + "#text": "从受限JavaScript沙箱到宿主Java环境的完整攻击链构造与纵深防御" } }, { - "title": "Sharp4Rundll32:一款通过.NET反射实现Rundll32功能绕过安全防护的工具", - "link": "https://xz.aliyun.com/t/17038", - "published": "2025-01-06T15:54:34+08:00", - "id": "https://xz.aliyun.com/t/17038", + "title": "记一次实战文件上传的简单bypass", + "link": "https://xz.aliyun.com/news/92118", + "published": "2026-05-11 07:09:29", + "id": "https://xz.aliyun.com/news/92118", "summary": { "@type": "html", - "#text": "Sharp4Rundll32:一款通过.NET反射实现Rundll32功能绕过安全防护的工具" + "#text": "文字来自本人实战经历(已修复)" } }, { - "title": "软件系统安全赛CachedVisitor详解——记一次对Redis+ssrf的详细分析", - "link": "https://xz.aliyun.com/t/17036", - "published": "2025-01-06T12:07:06+08:00", - "id": "https://xz.aliyun.com/t/17036", + "title": "复现 ICLR 2026 在审《TrojanPraise》:从 12% 到 42% 的 LoRA 越狱调参实战", + "link": "https://xz.aliyun.com/news/92116", + "published": "2026-05-11 06:16:03", + "id": "https://xz.aliyun.com/news/92116", "summary": { "@type": "html", - "#text": "软件系统安全赛CachedVisitor详解——记一次对Redis+ssrf的详细分析" + "#text": "一个越狱调参实验" } }, { - "title": "Lua项目下SSRF利用Redis文件覆盖lua回显RCE", - "link": "https://xz.aliyun.com/t/17034", - "published": "2025-01-06T10:05:25+08:00", - "id": "https://xz.aliyun.com/t/17034", + "title": "Defender与svchost", + "link": "https://xz.aliyun.com/news/92112", + "published": "2026-05-10 18:09:18", + "id": "https://xz.aliyun.com/news/92112", "summary": { "@type": "html", - "#text": "Lua项目下SSRF利用Redis文件覆盖lua回显RCE" + "#text": "Defender与svchost" } }, { - "title": "MaxKB远程命令执行漏洞分析(CVE-2024-56137)", - "link": "https://xz.aliyun.com/t/17031", - "published": "2025-01-05T22:37:00+08:00", - "id": "https://xz.aliyun.com/t/17031", + "title": "提示词注入也能获得上万美元赏金?Gemini App 漏洞分析", + "link": "https://xz.aliyun.com/news/92110", + "published": "2026-05-10 03:25:47", + "id": "https://xz.aliyun.com/news/92110", "summary": { "@type": "html", - "#text": "MaxKB远程命令执行漏洞分析(CVE-2024-56137)" + "#text": "分析最近 Gemini App 的两个间接提示词注入漏洞,总结间接提示词注入实战攻击手法" } }, { - "title": "codeql 之 SSRF 漏洞自动化 寻找", - "link": "https://xz.aliyun.com/t/17030", - "published": "2025-01-05T21:18:11+08:00", - "id": "https://xz.aliyun.com/t/17030", + "title": "伪装为HelloGPT安装程序的银狐木马样本分析", + "link": "https://xz.aliyun.com/news/92109", + "published": "2026-05-10 03:16:44", + "id": "https://xz.aliyun.com/news/92109", "summary": { "@type": "html", - "#text": "codeql 之 SSRF 漏洞自动化 寻找" + "#text": "在野银狐样本分析" } }, { - "title": "使用分支对抗进行webshell bypass", - "link": "https://xz.aliyun.com/t/17029", - "published": "2025-01-05T18:33:40+08:00", - "id": "https://xz.aliyun.com/t/17029", + "title": "ASM 劫持:绕过、篡改与无痕驻留", + "link": "https://xz.aliyun.com/news/92108", + "published": "2026-05-09 11:56:52", + "id": "https://xz.aliyun.com/news/92108", "summary": { "@type": "html", - "#text": "使用分支对抗进行webshell bypass" + "#text": "通过Attach API动态注入Agent,利用ASM在字节码层面改写目标类的方法体,实现认证逻辑的运行时绕过、业务逻辑的精确篡改,以及Agent自身的无痕持久化。" } }, { - "title": "Solon内存马构造", - "link": "https://xz.aliyun.com/t/17028", - "published": "2025-01-05T17:36:22+08:00", - "id": "https://xz.aliyun.com/t/17028", + "title": "AMSI对抗技术", + "link": "https://xz.aliyun.com/news/92105", + "published": "2026-05-08 15:53:30", + "id": "https://xz.aliyun.com/news/92105", "summary": { "@type": "html", - "#text": "Solon内存马构造" + "#text": "AMSI对抗技术" } }, { - "title": "强网杯RS加密签名伪造及PyramidWeb利用栈帧打内存马", - "link": "https://xz.aliyun.com/t/17027", - "published": "2025-01-05T17:12:56+08:00", - "id": "https://xz.aliyun.com/t/17027", + "title": "Java Attach API内存注入", + "link": "https://xz.aliyun.com/news/92103", + "published": "2026-05-08 11:15:26", + "id": "https://xz.aliyun.com/news/92103", "summary": { "@type": "html", - "#text": "强网杯RS加密签名伪造及PyramidWeb利用栈帧打内存马" + "#text": "通过 Java Attach API的底层Unix Domain Socket通信协议,结合Linux内核memfd_create系统调用实现纯内存态Agent注入。" } }, { - "title": "XXE 在文件上传当中的应用", - "link": "https://xz.aliyun.com/t/17026", - "published": "2025-01-05T17:10:20+08:00", - "id": "https://xz.aliyun.com/t/17026", + "title": "HackTheBox AirTouch:一场从 SNMP 泄露打进 WPA2 无线内网的攻击链", + "link": "https://xz.aliyun.com/news/92102", + "published": "2026-05-08 10:15:01", + "id": "https://xz.aliyun.com/news/92102", "summary": { "@type": "html", - "#text": "XXE 在文件上传当中的应用" + "#text": "本文记录 HackTheBox 靶机 AirTouch 的完整渗透过程。初始阶段仅发现 SSH 服务开放,但通过 UDP 扫描定位到 SNMP 服务,并利用默认 community string 读取到 consultant 账号密码。登录后发现目标处于 Docker 容器化无线实验环境中,进一步枚举虚拟无线网卡与网络拓扑。随后针对 AirTouch-Internet 执行监听、Deauth 攻击" } }, { - "title": "php木马的混淆免杀探究", - "link": "https://xz.aliyun.com/t/17023", - "published": "2025-01-05T13:29:00+08:00", - "id": "https://xz.aliyun.com/t/17023", + "title": "伪装成10086官网流量的Cobalt Strike木马深度分析", + "link": "https://xz.aliyun.com/news/92100", + "published": "2026-05-07 15:45:48", + "id": "https://xz.aliyun.com/news/92100", "summary": { "@type": "html", - "#text": "php木马的混淆免杀探究" + "#text": "海量IP地址字符串转码生成shellcode、Beacon木马伪造Referer请求头为10086官网" } }, { - "title": "ctf中的字节爆破", - "link": "https://xz.aliyun.com/t/17022", - "published": "2025-01-04T19:37:51+08:00", - "id": "https://xz.aliyun.com/t/17022", + "title": "提示词注入原理及注入开源模型的一种特定手法", + "link": "https://xz.aliyun.com/news/92098", + "published": "2026-05-07 03:21:38", + "id": "https://xz.aliyun.com/news/92098", "summary": { "@type": "html", - "#text": "ctf中的字节爆破" + "#text": "简单讲讲chat_template。" } }, { - "title": "Thinkphp6高版本反序列化toString新链调试挖掘", - "link": "https://xz.aliyun.com/t/17019", - "published": "2025-01-04T13:17:14+08:00", - "id": "https://xz.aliyun.com/t/17019", + "title": "从客户端加密配置到伪造签名:一次支付金额篡改漏洞的挖掘实录", + "link": "https://xz.aliyun.com/news/92096", + "published": "2026-05-07 00:52:17", + "id": "https://xz.aliyun.com/news/92096", "summary": { "@type": "html", - "#text": "Thinkphp6高版本反序列化toString新链调试挖掘" + "#text": "从客户端加密配置到伪造签名:一次支付金额篡改漏洞的挖掘实录" } }, { - "title": "探究Pker对opcode字节码的利用", - "link": "https://xz.aliyun.com/t/17018", - "published": "2025-01-04T11:11:08+08:00", - "id": "https://xz.aliyun.com/t/17018", + "title": "ISCC2026 web WP", + "link": "https://xz.aliyun.com/news/92095", + "published": "2026-05-06 09:24:30", + "id": "https://xz.aliyun.com/news/92095", "summary": { "@type": "html", - "#text": "探究Pker对opcode字节码的利用" + "#text": "iscc2026web方向wp" } }, { - "title": "Yaml反序列化name标签打响应头回显", - "link": "https://xz.aliyun.com/t/17017", - "published": "2025-01-04T01:27:15+08:00", - "id": "https://xz.aliyun.com/t/17017", + "title": "针对RSA攻击的总结", + "link": "https://xz.aliyun.com/news/92094", + "published": "2026-05-06 08:56:16", + "id": "https://xz.aliyun.com/news/92094", "summary": { "@type": "html", - "#text": "Yaml反序列化name标签打响应头回显" + "#text": "主要是围绕RSA的coppersmith、动态题目、RSA变种展开" } }, { - "title": "Pickle反序列化中的字节码重写绕过", - "link": "https://xz.aliyun.com/t/17016", - "published": "2025-01-03T23:50:09+08:00", - "id": "https://xz.aliyun.com/t/17016", + "title": "[原创]trx ctf 2026 house of fishing", + "link": "https://xz.aliyun.com/news/92088", + "published": "2026-05-06 02:55:24", + "id": "https://xz.aliyun.com/news/92088", "summary": { "@type": "html", - "#text": "Pickle反序列化中的字节码重写绕过" + "#text": "文章首发于看雪论坛 [原创]trx ctf 2026 house of fishing 参考文献TRX CTF 2026 house-of-fishing Writeup · rawpayload前言看了一下 trxctf 2026 的堆题,这题看上去很简单,只需要一个任意地址写将 *admin 修改成目标的地址即可触发后门函数,从而getshell,但是程序没有 show() 功能,因此无法通过" } }, { - "title": "【Reverse-Crypto】深入逆向-密码篇-MD5算法详解以及代码编写", - "link": "https://xz.aliyun.com/t/17014", - "published": "2025-01-03T21:40:27+08:00", - "id": "https://xz.aliyun.com/t/17014", + "title": "2026长城杯决赛game题解", + "link": "https://xz.aliyun.com/news/92087", + "published": "2026-05-06 02:08:24", + "id": "https://xz.aliyun.com/news/92087", "summary": { "@type": "html", - "#text": "【Reverse-Crypto】深入逆向-密码篇-MD5算法详解以及代码编写" + "#text": "主要还是放在逆向上" } }, { - "title": "ORW:侧信道时间盲注", - "link": "https://xz.aliyun.com/t/17011", - "published": "2025-01-03T21:22:32+08:00", - "id": "https://xz.aliyun.com/t/17011", + "title": "第三届“长城杯”网数智安全大赛(防护赛)总决赛Java题部分", + "link": "https://xz.aliyun.com/news/92085", + "published": "2026-05-05 11:40:15", + "id": "https://xz.aliyun.com/news/92085", "summary": { "@type": "html", - "#text": "ORW:侧信道时间盲注" + "#text": "尝尝长城杯国赛决赛,还是挺有意思的." } }, { - "title": "AWD:PWN流程与技巧总结", - "link": "https://xz.aliyun.com/t/17010", - "published": "2025-01-03T21:17:32+08:00", - "id": "https://xz.aliyun.com/t/17010", + "title": "Apache Shiro 反序列化与权限绕过漏洞分析及利用", + "link": "https://xz.aliyun.com/news/92083", + "published": "2026-05-05 06:12:11", + "id": "https://xz.aliyun.com/news/92083", "summary": { "@type": "html", - "#text": "AWD:PWN流程与技巧总结" + "#text": "前言:在平时测一些站点的时候,几乎都会有登录框或者一些权限存在区分的地方,在这些地方大部分又是使用shiro框架来负责权限操作的;网上的一些原理或者操作太过抽象和分散,于是这篇文章就是谈谈shiro框架的一些漏洞合集和简单分析。首先什么是shiro框架呢?Apache Shiro 是一个功能强大且易于使用的 Java 安全框架,用于处理身份验证、授权、加密和会话管理等核心安全性问题。Shiro 可" } }, { - "title": "信呼 OA 最新 sql 注入分析", - "link": "https://xz.aliyun.com/t/17007", - "published": "2025-01-03T16:54:52+08:00", - "id": "https://xz.aliyun.com/t/17007", + "title": "《从低危未授权到多个系统沦陷:一次市攻防实战记录》", + "link": "https://xz.aliyun.com/news/92082", + "published": "2026-05-05 04:55:41", + "id": "https://xz.aliyun.com/news/92082", "summary": { "@type": "html", - "#text": "信呼 OA 最新 sql 注入分析" + "#text": "分享一次在某市攻防演练中的实战记录,通过一个普通的登录页面,最终拿下多个后台系统权限。" } }, { - "title": "某小说vip破解代码分析", - "link": "https://xz.aliyun.com/t/17006", - "published": "2025-01-03T16:01:37+08:00", - "id": "https://xz.aliyun.com/t/17006", + "title": "长城杯 2026 决赛 Shop 题 GLIBC 2.43 Heap 利用与 Tcache 劫持", + "link": "https://xz.aliyun.com/news/92081", + "published": "2026-05-04 16:10:24", + "id": "https://xz.aliyun.com/news/92081", "summary": { "@type": "html", - "#text": "某小说vip破解代码分析" + "#text": "本文复现了长城杯 2026 决赛 Shop 题目的解题过程,重点分析了 GLIBC 2.43 版本下堆结构体的逆向还原方法。文章详细阐述了通过伪造 Unsortedbin 泄露基址、利用 Tcache Perthread Struct 偏移缺陷劫持堆块指针以及栈迁移执行 ORW 的技术细节。该案例展" } }, { - "title": "Hoverfly 任意文件读取漏洞分析", - "link": "https://xz.aliyun.com/t/17004", - "published": "2025-01-03T15:39:34+08:00", - "id": "https://xz.aliyun.com/t/17004", + "title": "php8 首个 bypass disable function漏洞", + "link": "https://xz.aliyun.com/news/92079", + "published": "2026-05-04 00:38:27", + "id": "https://xz.aliyun.com/news/92079", "summary": { "@type": "html", - "#text": "Hoverfly 任意文件读取漏洞分析" + "#text": "php8 首个 bypass disable function漏洞,已武器化为蚁剑插件" } }, { - "title": "Sekiro+Yakit 热加载无痛绕sign", - "link": "https://xz.aliyun.com/t/17003", - "published": "2025-01-03T15:09:34+08:00", - "id": "https://xz.aliyun.com/t/17003", + "title": "2026SUCTF SU_LightNovel WriteWp", + "link": "https://xz.aliyun.com/news/92078", + "published": "2026-05-03 17:36:55", + "id": "https://xz.aliyun.com/news/92078", "summary": { "@type": "html", - "#text": "Sekiro+Yakit 热加载无痛绕sign" + "#text": "2026SUCTF 域流量题目SU_LightNovel解题思路,涉及rpc计划任务流量、ADCS、U2U和TimeRoasting攻击等知识" } }, { - "title": "cJSON库函数存在的堆溢出漏洞分析", - "link": "https://xz.aliyun.com/t/16999", - "published": "2025-01-02T20:58:51+08:00", - "id": "https://xz.aliyun.com/t/16999", + "title": "把CC4链拆到字节码:一文看透Java反序列化从PriorityQueue到TemplatesImpl的完整触发路径", + "link": "https://xz.aliyun.com/news/92075", + "published": "2026-05-03 09:01:50", + "id": "https://xz.aliyun.com/news/92075", "summary": { "@type": "html", - "#text": "cJSON库函数存在的堆溢出漏洞分析" + "#text": "一文看透Java反序列化从PriorityQueue到TemplatesImpl的完整触发路径" } }, { - "title": "WP-0ops2024-pwn-", - "link": "https://xz.aliyun.com/t/16998", - "published": "2025-01-02T18:50:18+08:00", - "id": "https://xz.aliyun.com/t/16998", + "title": "Hessian 二次反序列化新链从零到一挖掘", + "link": "https://xz.aliyun.com/news/92074", + "published": "2026-05-02 16:14:25", + "id": "https://xz.aliyun.com/news/92074", "summary": { "@type": "html", - "#text": "WP-0ops2024-pwn-" + "#text": "记录一条新的hessian二次反序列化链的完整分析过程" } }, { - "title": "Linux渗透实战之Hackademic: RTB1靶场提权", - "link": "https://xz.aliyun.com/t/16995", - "published": "2025-01-02T15:22:06+08:00", - "id": "https://xz.aliyun.com/t/16995", + "title": "Apache Camel JMS 反序列化(CVE-2026-40860)漏洞分析", + "link": "https://xz.aliyun.com/news/92073", + "published": "2026-05-02 10:15:21", + "id": "https://xz.aliyun.com/news/92073", "summary": { "@type": "html", - "#text": "Linux渗透实战之Hackademic: RTB1靶场提权" + "#text": "Apache Camel JMS 反序列化(CVE-2026-40860)漏洞分析漏洞概述Apache Camel 的核心目标是把各种不同的系统、协议和数据格式“粘合”在一起。它实现了著名的企业集成模式(Enterprise Integration Patterns, EIP),比如拆分消息、聚合消息、动态路由等。受影响版本中,JmsBinding.extractBodyFromJms() 方法在" } }, { - "title": "Sharp4UACPASS:一款通过调用CMSTP进程绕过UAC的工具", - "link": "https://xz.aliyun.com/t/16994", - "published": "2025-01-02T15:12:05+08:00", - "id": "https://xz.aliyun.com/t/16994", + "title": "无境靶机 Dawn Breaker WP复盘", + "link": "https://xz.aliyun.com/news/92072", + "published": "2026-05-02 06:56:31", + "id": "https://xz.aliyun.com/news/92072", "summary": { "@type": "html", - "#text": "Sharp4UACPASS:一款通过调用CMSTP进程绕过UAC的工具" + "#text": "“摘下你黯淡的衰亡,换一束爆燃的火花”" } }, { - "title": "传统Office结构下的后门和利用手段解析", - "link": "https://xz.aliyun.com/t/16993", - "published": "2025-01-02T14:54:47+08:00", - "id": "https://xz.aliyun.com/t/16993", + "title": "如何绕过EDR实现DumpHash", + "link": "https://xz.aliyun.com/news/92069", + "published": "2026-05-01 10:04:30", + "id": "https://xz.aliyun.com/news/92069", "summary": { "@type": "html", - "#text": "传统Office结构下的后门和利用手段解析" + "#text": "本文简略的梳理了Windows DumpHash的流程,并通过系统白程序Reg.exe的拓展应用,巧妙的绕过了杀软的拦截点,实现了绕过EDR从而DumpHash的目的,同时根据实际测试,该方法针对Windows系列系统具有有效性,操作难度不大,具有实战价值。" } }, { - "title": "蚁景网安实验室-双层内网渗透虚拟仿真实战", - "link": "https://xz.aliyun.com/t/16992", - "published": "2025-01-02T14:51:14+08:00", - "id": "https://xz.aliyun.com/t/16992", + "title": "【漏洞复现】cPanel&WHM认证绕过漏洞(CVE-2026-41940)分析", + "link": "https://xz.aliyun.com/news/92068", + "published": "2026-04-30 12:59:03", + "id": "https://xz.aliyun.com/news/92068", "summary": { "@type": "html", - "#text": "蚁景网安实验室-双层内网渗透虚拟仿真实战" + "#text": "本文详细分析了 cPanel & WHM 认证绕过漏洞(CVE-2026-41940)的原理与复现过程,该漏洞源于系统会话机制未严格过滤换行符(CRLF),未授权攻击者可利用此缺陷,在预认证阶段将伪造的 root 权限标识注入至底层 Session 文件中。随后通过触发缓存提升机制使恶意数据生效,从而直接绕过登录校验,获取WHM 管理员权限。" } }, { - "title": "春秋云镜—专业徽章—Initial", - "link": "https://xz.aliyun.com/t/16991", - "published": "2025-01-02T14:43:00+08:00", - "id": "https://xz.aliyun.com/t/16991", + "title": "PHP Filter Chain 无文件 RCE分析", + "link": "https://xz.aliyun.com/news/92067", + "published": "2026-04-30 09:42:33", + "id": "https://xz.aliyun.com/news/92067", "summary": { "@type": "html", - "#text": "春秋云镜—专业徽章—Initial" + "#text": "通过精心构造 php://filter 链,在不写入任何文件的前提下,将一个普通的本地文件包含(LFI)漏洞直接升级为远程代码执行(RCE)。" } }, { - "title": "JAVA代码审计-StudentManager", - "link": "https://xz.aliyun.com/t/16990", - "published": "2025-01-02T11:32:05+08:00", - "id": "https://xz.aliyun.com/t/16990", + "title": "红队钓鱼攻击的全链路复盘", + "link": "https://xz.aliyun.com/news/92064", + "published": "2026-04-30 02:00:53", + "id": "https://xz.aliyun.com/news/92064", "summary": { "@type": "html", - "#text": "JAVA代码审计-StudentManager" + "#text": "红队钓鱼-前期邮箱搜集、spf绕过、钓鱼环境搭建、钓鱼文件制作" } }, { - "title": "伪装成Chrome安装程序传播银狐最新变种", - "link": "https://xz.aliyun.com/t/16989", - "published": "2025-01-02T07:46:43+08:00", - "id": "https://xz.aliyun.com/t/16989", + "title": "面向大模型隐私推理的安全协议-MPC与ZK的角色分工", + "link": "https://xz.aliyun.com/news/92061", + "published": "2026-04-29 09:37:00", + "id": "https://xz.aliyun.com/news/92061", "summary": { "@type": "html", - "#text": "伪装成Chrome安装程序传播银狐最新变种" + "#text": "面向大模型隐私推理的安全协议-MPC与ZK的角色分工" } }, { - "title": "绕过App某加密企业版加固Frida检测", - "link": "https://xz.aliyun.com/t/16988", - "published": "2025-01-01T23:59:38+08:00", - "id": "https://xz.aliyun.com/t/16988", + "title": "Agentic / Context", + "link": "https://xz.aliyun.com/news/92060", + "published": "2026-04-29 09:35:42", + "id": "https://xz.aliyun.com/news/92060", "summary": { "@type": "html", - "#text": "绕过App某加密企业版加固Frida检测" + "#text": "Agentic / Context" } }, { - "title": "无限安全靶场-月挑战靶场1", - "link": "https://xz.aliyun.com/t/16984", - "published": "2025-01-01T22:30:52+08:00", - "id": "https://xz.aliyun.com/t/16984", + "title": "AI洪流下的防守对抗新范式", + "link": "https://xz.aliyun.com/news/92059", + "published": "2026-04-29 09:34:25", + "id": "https://xz.aliyun.com/news/92059", "summary": { "@type": "html", - "#text": "无限安全靶场-月挑战靶场1" + "#text": "AI洪流下的防守对抗新范式" } }, { - "title": "shiro codeql分析理解(附带完整ql代码)", - "link": "https://xz.aliyun.com/t/16983", - "published": "2025-01-01T20:07:25+08:00", - "id": "https://xz.aliyun.com/t/16983", + "title": "LLM 能帮一个安全工程师干些什么", + "link": "https://xz.aliyun.com/news/92058", + "published": "2026-04-29 09:33:16", + "id": "https://xz.aliyun.com/news/92058", "summary": { "@type": "html", - "#text": "shiro codeql分析理解(附带完整ql代码)" + "#text": "LLM 能帮一个安全工程师干些什么" } }, { - "title": "前端加密对抗常见场景突破", - "link": "https://xz.aliyun.com/t/16981", - "published": "2025-01-01T17:09:23+08:00", - "id": "https://xz.aliyun.com/t/16981", + "title": "从 SMB 到 RDP:一次横向移动攻击链的深度剖析", + "link": "https://xz.aliyun.com/news/92057", + "published": "2026-04-29 09:30:45", + "id": "https://xz.aliyun.com/news/92057", "summary": { "@type": "html", - "#text": "前端加密对抗常见场景突破" + "#text": "在内网攻防对抗中,攻击者常利用 SMB、WinRM 等合法管理协议进行横向移动,并通过 SMB3 和 RDP 等协议的加密特性隐藏恶意行为,给应急响应与威胁溯源带来了巨大挑战。本文以2026软件系统安全赛中的典型内网横向移动流量分析赛题为分析对象,详细梳理了攻击链的完整还原过程。首先,从网络流量中提取 NetNTLMv2 响应并离线破解以获取明文凭据;随后,利用该凭据解密 WinRM 会话,识别并" } }, { - "title": "BurpSuite插件:OneScan - 递归目录扫描插件", - "link": "https://xz.aliyun.com/t/16980", - "published": "2025-01-01T12:22:35+08:00", - "id": "https://xz.aliyun.com/t/16980", + "title": "AI For Security:AI在云产品安全建设中能做什么?", + "link": "https://xz.aliyun.com/news/92056", + "published": "2026-04-29 09:30:38", + "id": "https://xz.aliyun.com/news/92056", "summary": { "@type": "html", - "#text": "BurpSuite插件:OneScan - 递归目录扫描插件" + "#text": "AI For Security:AI在云产品安全建设中能做什么?" } }, { - "title": "CVE-2024-13025-Codezips 大学管理系统 faculty.php sql 注入分析及拓展", - "link": "https://xz.aliyun.com/t/16979", - "published": "2025-01-01T07:22:48+08:00", - "id": "https://xz.aliyun.com/t/16979", + "title": "挖掘某EDR组件滥用", + "link": "https://xz.aliyun.com/news/92054", + "published": "2026-04-29 08:54:11", + "id": "https://xz.aliyun.com/news/92054", "summary": { "@type": "html", - "#text": "CVE-2024-13025-Codezips 大学管理系统 faculty.php sql 注入分析及拓展" + "#text": "在某次攻防下遇到的edr环境,对其进行挖掘,发现可以滥用的程序" } }, { - "title": "第二届CN-fnst::CTF WriteUp(web,misc,crypto,osint,pwn)", - "link": "https://xz.aliyun.com/t/16978", - "published": "2024-12-31T23:28:53+08:00", - "id": "https://xz.aliyun.com/t/16978", + "title": "THM-RazorBlack", + "link": "https://xz.aliyun.com/news/92052", + "published": "2026-04-29 06:49:39", + "id": "https://xz.aliyun.com/news/92052", "summary": { "@type": "html", - "#text": "第二届CN-fnst::CTF WriteUp(web,misc,crypto,osint,pwn)" + "#text": "THM-RazorBlack-writeup" } }, { - "title": "禅道CMS开源版SQL注入漏洞分析", - "link": "https://xz.aliyun.com/t/16976", - "published": "2024-12-31T21:12:31+08:00", - "id": "https://xz.aliyun.com/t/16976", + "title": "记某涉案Ubuntu服务器镜像的仿真分析", + "link": "https://xz.aliyun.com/news/92048", + "published": "2026-04-28 12:24:22", + "id": "https://xz.aliyun.com/news/92048", "summary": { "@type": "html", - "#text": "禅道CMS开源版SQL注入漏洞分析" + "#text": "从initramfs到系统恢复" } }, { - "title": "2024ImaginaryCTF 12月练习赛——部分Crypto题解分享", - "link": "https://xz.aliyun.com/t/16975", - "published": "2024-12-31T18:14:07+08:00", - "id": "https://xz.aliyun.com/t/16975", + "title": "基于AI生成的WinRAR钓鱼网站攻防分析", + "link": "https://xz.aliyun.com/news/92047", + "published": "2026-04-28 12:20:39", + "id": "https://xz.aliyun.com/news/92047", "summary": { "@type": "html", - "#text": "2024ImaginaryCTF 12月练习赛——部分Crypto题解分享" + "#text": "钓鱼网站利用AI生成逼真页面、仿冒官方域名排名,诱导用户下载携带恶意载荷的“WinRAR安装包”。" } }, { - "title": "JAVA代码审计-某报表平台", - "link": "https://xz.aliyun.com/t/16974", - "published": "2024-12-31T17:15:00+08:00", - "id": "https://xz.aliyun.com/t/16974", + "title": "从2026数字中国创新大赛数字安全赛道 网络安全 决赛 Bridge题目 入门鸿蒙逆向", + "link": "https://xz.aliyun.com/news/92046", + "published": "2026-04-28 09:52:51", + "id": "https://xz.aliyun.com/news/92046", "summary": { "@type": "html", - "#text": "JAVA代码审计-某报表平台" + "#text": "``0解鸿蒙逆向题`` 对于一个没有系统接触过鸿蒙逆向的小白,在线下比赛中做出来确实比较困难,这篇文章从鸿蒙小白的角度 探讨 鸿蒙hap包逆向的完整流程及重点难点\n\n随着HarmonyOS NEXT在2024年底正式商用,纯鸿蒙应用的数量在过去一年多迅速增长,安全研究领域对鸿蒙逆向的需求也随之而来。与Android生态成熟的逆向工具链相比,鸿蒙逆向目前仍处于早期阶段,公开的分析资" } }, { - "title": "记一次渗透测试实战之Sea", - "link": "https://xz.aliyun.com/t/16972", - "published": "2024-12-31T14:47:50+08:00", - "id": "https://xz.aliyun.com/t/16972", + "title": "2026DCIC数字中国创新大赛网安赛道初赛部分题解", + "link": "https://xz.aliyun.com/news/92044", + "published": "2026-04-28 08:13:41", + "id": "https://xz.aliyun.com/news/92044", "summary": { "@type": "html", - "#text": "记一次渗透测试实战之Sea" + "#text": "比赛部分题解" } }, { - "title": "【免杀技术】致盲组件 - AMSI内存修复 (修改一个字节就能绕过AMSI?)", - "link": "https://xz.aliyun.com/t/16971", - "published": "2024-12-31T14:08:53+08:00", - "id": "https://xz.aliyun.com/t/16971", + "title": "interactive-process-mcp:让 AI Agent 拥有交互式终端能力", + "link": "https://xz.aliyun.com/news/92043", + "published": "2026-04-27 14:56:03", + "id": "https://xz.aliyun.com/news/92043", "summary": { "@type": "html", - "#text": "【免杀技术】致盲组件 - AMSI内存修复 (修改一个字节就能绕过AMSI?)" + "#text": "当我们在终端里工作时,大量操作本质上是多轮交互的过程——SSH 登录服务器需要先输入密码,再执行命令;Python REPL 中逐行调试代码,每一步都依赖上一步的结果;交互式安装程序不时弹出 [Y/n] 提示等待回应。这些场景对人类来说稀松平常,但对于 AI Agent 而言却是一道难题:它们原生只能执行一次性命令,运行完毕立刻返回结果,无法在多个对话轮次中持续地读写同一个进程。\n intera" } }, { - "title": "JAVA代码审计-jfinal", - "link": "https://xz.aliyun.com/t/16969", - "published": "2024-12-31T11:46:25+08:00", - "id": "https://xz.aliyun.com/t/16969", + "title": "内网渗透靶场之春秋云镜-Brute4Road【详细解析】", + "link": "https://xz.aliyun.com/news/92042", + "published": "2026-04-27 13:39:36", + "id": "https://xz.aliyun.com/news/92042", "summary": { "@type": "html", - "#text": "JAVA代码审计-jfinal" + "#text": "靶标介绍:\nBrute4Road是一套难度为中等的靶场环境,完成该挑战可以帮助玩家了解内网渗透中的代理转发、内网扫描、信息收集、特权提升以及横向移动技术方法,加强对域环境核心认证机制的理解,以及掌握域环境渗透中一些有趣的技术要点。该靶场共有4个flag,分布于不同的靶机。" } }, { - "title": "初探webshell免杀的艺术", - "link": "https://xz.aliyun.com/t/16968", - "published": "2024-12-31T11:13:41+08:00", - "id": "https://xz.aliyun.com/t/16968", + "title": "我做了一个用自然语言挖漏洞的 AI 渗透工具:VulnClaw", + "link": "https://xz.aliyun.com/news/92040", + "published": "2026-04-27 09:36:58", + "id": "https://xz.aliyun.com/news/92040", "summary": { "@type": "html", - "#text": "初探webshell免杀的艺术" + "#text": "记得以前做渗透,信息收集要开一堆工具,漏洞利用要自己找 POC,报告写完一天没了。\n最近写了一个 CLI 工具 VulnClaw,把这个流程串起来了:\n自然语言输入 → AI 理解意图 → MCP 工具链 → 全自动渗透 → 自动出报告。\nGitHub 开源,MIT 协议,欢迎试用。" } }, { - "title": "AWS云之EFS 挂载安全", - "link": "https://xz.aliyun.com/t/16967", - "published": "2024-12-31T02:20:32+08:00", - "id": "https://xz.aliyun.com/t/16967", + "title": "中转钓鱼攻击劫持 opencode,claudecode,openclaw", + "link": "https://xz.aliyun.com/news/92038", + "published": "2026-04-27 03:34:20", + "id": "https://xz.aliyun.com/news/92038", "summary": { "@type": "html", - "#text": "AWS云之EFS 挂载安全" + "#text": "通过构造恶意的中转站来劫持 opencode,claudecode,openclaw 从而实现命令执行,乃至于上线 c2" } }, { - "title": "浅谈密码相关原理及代码实现", - "link": "https://xz.aliyun.com/t/16966", - "published": "2024-12-31T00:41:22+08:00", - "id": "https://xz.aliyun.com/t/16966", + "title": "2026数字中国创新大赛数字安全赛道 网络安全 决赛 FlagVault", + "link": "https://xz.aliyun.com/news/92036", + "published": "2026-04-26 12:03:31", + "id": "https://xz.aliyun.com/news/92036", "summary": { "@type": "html", - "#text": "浅谈密码相关原理及代码实现" + "#text": "决赛一共有3个题目有解, 一个misc,两个逆向 ,misc考的是流量分析,逆向考的是 安卓native逆向,和 exe逆向\n这个题目全场12解,也是感受到了CTF 线上和线下的巨大差异,在AI时代,线上貌似谁都可以成为全栈,大家都很浮躁,静下心来学东西的人变少了,线下一脱离ai,就原型毕露了 (当然也包括我),还是想要劝勉一下自己,希望自己不要浮躁,踏实求学" } }, { - "title": "【免杀技术】WinApi规避 - 字符串HASH与动态调用 (完美的IAT隐藏技术)", - "link": "https://xz.aliyun.com/t/16965", - "published": "2024-12-31T00:04:33+08:00", - "id": "https://xz.aliyun.com/t/16965", + "title": "Python Class Pollution:从属性覆盖到远程代码执行", + "link": "https://xz.aliyun.com/news/92035", + "published": "2026-04-26 10:17:16", + "id": "https://xz.aliyun.com/news/92035", "summary": { "@type": "html", - "#text": "【免杀技术】WinApi规避 - 字符串HASH与动态调用 (完美的IAT隐藏技术)" + "#text": "类属性污染实现全局权限提升、__globals__ 劫持覆盖 Flask SECRET_KEY 实现会话伪造、以及全局变量篡改实现 RCE。" } }, { - "title": "JAVA安全之Java Agent打内存马", - "link": "https://xz.aliyun.com/t/16962", - "published": "2024-12-30T16:02:07+08:00", - "id": "https://xz.aliyun.com/t/16962", + "title": "MazeSec靶机SDL提权部分复盘:探究Linux跨分区移动底层逻辑", + "link": "https://xz.aliyun.com/news/92032", + "published": "2026-04-26 04:26:53", + "id": "https://xz.aliyun.com/news/92032", "summary": { "@type": "html", - "#text": "JAVA安全之Java Agent打内存马" + "#text": "本文深入剖析了一类由安全工具隔离机制引发的非典型特权提升漏洞。文章以 ClamAV 的 clamscan --move 参数为切入点,通过对比 /tmp (tmpfs 独立分区) 与 /home (根分区同设备) 两个不同路径下的文件移动行为,揭示了 Linux 内核系统调用 rename() 在跨分区场景下的 Fallback(降级)机制。" } }, { - "title": "安卓逆向入门全面解析入口点定位,资源文件,四大组件,native,java层逆向(带实战例题)", - "link": "https://xz.aliyun.com/t/16961", - "published": "2024-12-30T15:27:00+08:00", - "id": "https://xz.aliyun.com/t/16961", + "title": "谁在用你的带宽赚钱?揭秘你的住宅网络是如何沦为代理节点的", + "link": "https://xz.aliyun.com/news/92031", + "published": "2026-04-26 03:14:35", + "id": "https://xz.aliyun.com/news/92031", "summary": { "@type": "html", - "#text": "安卓逆向入门全面解析入口点定位,资源文件,四大组件,native,java层逆向(带实战例题)" + "#text": "FlixVision APK 应用。表面上以免费观看电影、电视节目为噱头吸引用户安装,背地里却悄悄占用用户宽带资源,私自搭建隐蔽的网络代理通道。" } }, { - "title": "哥斯拉流量PHP3种加密方式讲解及PHP_XOR_BASE64爆破密钥思路", - "link": "https://xz.aliyun.com/t/16960", - "published": "2024-12-30T13:24:00+08:00", - "id": "https://xz.aliyun.com/t/16960", + "title": "Agent Mitm Hijack", + "link": "https://xz.aliyun.com/news/92030", + "published": "2026-04-25 14:15:42", + "id": "https://xz.aliyun.com/news/92030", "summary": { "@type": "html", - "#text": "哥斯拉流量PHP3种加密方式讲解及PHP_XOR_BASE64爆破密钥思路" + "#text": "一种全新的AI Agent攻击方式(或许也不那么新)" } }, { - "title": "记一次某OA渗透测试有意思的文件上传漏洞挖掘经历以及分析", - "link": "https://xz.aliyun.com/t/16959", - "published": "2024-12-30T11:46:01+08:00", - "id": "https://xz.aliyun.com/t/16959", + "title": "近期ActiveMQ Jolokia的两个漏洞以及部分历史漏洞分析", + "link": "https://xz.aliyun.com/news/92029", + "published": "2026-04-25 13:53:32", + "id": "https://xz.aliyun.com/news/92029", "summary": { "@type": "html", - "#text": "记一次某OA渗透测试有意思的文件上传漏洞挖掘经历以及分析" + "#text": "最近ActiveMQ出了两个有关Jolokia的新漏洞,之前都没看过ActiveMQ,借此机会分析一下,顺带把之前的几个重点漏洞也简单分析一遍。" } }, { - "title": "RASP从0到1", - "link": "https://xz.aliyun.com/t/16958", - "published": "2024-12-30T10:30:37+08:00", - "id": "https://xz.aliyun.com/t/16958", + "title": "AI代码审计工作流实现-从想法到实现自动化日入CVE50+、CNVD若干", + "link": "https://xz.aliyun.com/news/92027", + "published": "2026-04-24 19:53:47", + "id": "https://xz.aliyun.com/news/92027", "summary": { "@type": "html", - "#text": "RASP从0到1" + "#text": "AI代码审计工作流实现-从想法到实现自动化日入CVE50+、CNVD若干" } }, { - "title": "elephant Datart 1.0.0-rc3漏洞分析(CVE-2024-12994)", - "link": "https://xz.aliyun.com/t/16957", - "published": "2024-12-29T23:05:00+08:00", - "id": "https://xz.aliyun.com/t/16957", + "title": "记攻防中的钓鱼样本分析", + "link": "https://xz.aliyun.com/news/92026", + "published": "2026-04-24 15:57:46", + "id": "https://xz.aliyun.com/news/92026", "summary": { "@type": "html", - "#text": "elephant Datart 1.0.0-rc3漏洞分析(CVE-2024-12994)" + "#text": "一次攻防下钓鱼GO木马的详细分析,拿下CS shellcode" } }, { - "title": "Android Security学习之ByteCTF2021_mobile 环境搭建+前两道题Writeup", - "link": "https://xz.aliyun.com/t/16956", - "published": "2024-12-29T22:32:16+08:00", - "id": "https://xz.aliyun.com/t/16956", + "title": "【漏洞分析】Node-tar Hardlink边界绕过问题深度分析", + "link": "https://xz.aliyun.com/news/92025", + "published": "2026-04-24 13:40:41", + "id": "https://xz.aliyun.com/news/92025", "summary": { "@type": "html", - "#text": "Android Security学习之ByteCTF2021_mobile 环境搭建+前两道题Writeup" + "#text": "以 Node-tar 的 CVE-2026-24842 为例,分析 hardlink path traversal 是如何绕过提取目录边界的,以及在常见业务场景下,如何一步步演变成任意文件读取、文件覆盖,甚至进一步的代码执行风险" } }, { - "title": "从JS源码分析到任意用户登录", - "link": "https://xz.aliyun.com/t/16955", - "published": "2024-12-29T22:30:27+08:00", - "id": "https://xz.aliyun.com/t/16955", + "title": "Linux ELF Shellcode 生成与 Fileless 实战", + "link": "https://xz.aliyun.com/news/92022", + "published": "2026-04-24 04:05:41", + "id": "https://xz.aliyun.com/news/92022", "summary": { "@type": "html", - "#text": "从JS源码分析到任意用户登录" + "#text": "Linux ELF Shellcode 生成与 Fileless 实战,通过zigdonut生成Linux下的shellcode" } }, { - "title": "JS中的漏洞信息", - "link": "https://xz.aliyun.com/t/16954", - "published": "2024-12-29T21:41:24+08:00", - "id": "https://xz.aliyun.com/t/16954", + "title": "Slopsquatting供应链投毒", + "link": "https://xz.aliyun.com/news/92021", + "published": "2026-04-23 10:59:59", + "id": "https://xz.aliyun.com/news/92021", "summary": { "@type": "html", - "#text": "JS中的漏洞信息" + "#text": "Slopsquatting——由 slop(对 AI 低质量输出的俗称)和 squatting(域名/包名抢注)组合而成。大语言模型(LLM)在生成代码时会「幻觉」出实际不存在的第三方包名,而攻击者只需提前在 PyPI、npm 等公共包仓库中注册这些幻觉名称,植入恶意载荷,然后静待开发者按照 AI 的建议执行 pip install。" } }, { - "title": "渗透测试-非寻常漏洞案例", - "link": "https://xz.aliyun.com/t/16952", - "published": "2024-12-29T19:23:31+08:00", - "id": "https://xz.aliyun.com/t/16952", + "title": "【AI赋能】六阶段AI流水线赋能APP安全分析实战", + "link": "https://xz.aliyun.com/news/92020", + "published": "2026-04-23 07:15:48", + "id": "https://xz.aliyun.com/news/92020", "summary": { "@type": "html", - "#text": "渗透测试-非寻常漏洞案例" + "#text": "面向移动安全分析场景的 6 阶段总控 Skill。用于统一调度 APK 静态侦察、流量与代码对齐、SO/JNI 深度分析、加密与漏洞综合分析、验证设计与报告交付流程。" } }, { - "title": "免杀基础-常见shellcode执行方式", - "link": "https://xz.aliyun.com/t/16951", - "published": "2024-12-29T16:44:22+08:00", - "id": "https://xz.aliyun.com/t/16951", + "title": "Letta AI 最新版未修复漏洞", + "link": "https://xz.aliyun.com/news/92018", + "published": "2026-04-23 02:30:13", + "id": "https://xz.aliyun.com/news/92018", "summary": { "@type": "html", - "#text": "免杀基础-常见shellcode执行方式" + "#text": "该漏洞允许攻击者通过 REST API 提供了一个 /v1/tools/run端点,利用任意 payload 在目标服务器上执行任意 Python 代码或系统命令。" } }, { - "title": "从APC到APC注入", - "link": "https://xz.aliyun.com/t/16950", - "published": "2024-12-29T16:43:39+08:00", - "id": "https://xz.aliyun.com/t/16950", + "title": "SGLang GGUF 投毒致 RCE 漏洞(CVE-2026-5760)", + "link": "https://xz.aliyun.com/news/92017", + "published": "2026-04-22 15:45:03", + "id": "https://xz.aliyun.com/news/92017", "summary": { "@type": "html", - "#text": "从APC到APC注入" + "#text": "该漏洞存在于大模型推理引擎 SGLang 中(影响 v0.5.9 及以下版本)。其核心逻辑非常直接:SGLang 在处理 /v1/rerank 请求时,会读取 GGUF 模型文件中的 tokenizer.chat_template 字段,并将其放入一个无沙箱限制的 Jinja2 环境中进行渲染。" } }, { - "title": "基于大模型LLM的黑白盒RCE漏洞自动化挖掘", - "link": "https://xz.aliyun.com/t/16948", - "published": "2024-12-29T13:27:39+08:00", - "id": "https://xz.aliyun.com/t/16948", + "title": "结合代码分析CVE-2026-33439 OpenAM 反序列化漏洞", + "link": "https://xz.aliyun.com/news/92015", + "published": "2026-04-22 09:58:37", + "id": "https://xz.aliyun.com/news/92015", "summary": { "@type": "html", - "#text": "基于大模型LLM的黑白盒RCE漏洞自动化挖掘" + "#text": "结合代码分析CVE-2026-33439 OpenAM 反序列化漏洞" } }, { - "title": "PHPGurukul Small CRM 1.0 sql注入漏洞分析(CVE-2024-12999)", - "link": "https://xz.aliyun.com/t/16947", - "published": "2024-12-29T11:41:00+08:00", - "id": "https://xz.aliyun.com/t/16947", + "title": "js原型链污染原理及绕过", + "link": "https://xz.aliyun.com/news/92013", + "published": "2026-04-22 08:12:46", + "id": "https://xz.aliyun.com/news/92013", "summary": { "@type": "html", - "#text": "PHPGurukul Small CRM 1.0 sql注入漏洞分析(CVE-2024-12999)" + "#text": "一文讲明js原型链污染原理及概念误区,包含常见绕过思路" } }, { - "title": "HTML Application利用", - "link": "https://xz.aliyun.com/t/16946", - "published": "2024-12-29T00:10:14+08:00", - "id": "https://xz.aliyun.com/t/16946", + "title": "用魔法打败魔法:自动化越狱提示词的生成", + "link": "https://xz.aliyun.com/news/92012", + "published": "2026-04-22 05:59:52", + "id": "https://xz.aliyun.com/news/92012", "summary": { "@type": "html", - "#text": "HTML Application利用" + "#text": "自动化越狱提示词的生成" } }, { - "title": "WBCE CMS v1.5.2代码审计以及cve分析扩展", - "link": "https://xz.aliyun.com/t/16945", - "published": "2024-12-28T23:51:27+08:00", - "id": "https://xz.aliyun.com/t/16945", + "title": "qemu虚拟化逃逸", + "link": "https://xz.aliyun.com/news/92009", + "published": "2026-04-22 02:59:17", + "id": "https://xz.aliyun.com/news/92009", "summary": { "@type": "html", - "#text": "WBCE CMS v1.5.2代码审计以及cve分析扩展" + "#text": "第一次做这种类型的,大体记录一下过程" } }, { - "title": "2024第一届Solar杯应急响应挑战赛 内存取证", - "link": "https://xz.aliyun.com/t/16940", - "published": "2024-12-28T18:33:23+08:00", - "id": "https://xz.aliyun.com/t/16940", + "title": "2025ccb决赛interpreter", + "link": "https://xz.aliyun.com/news/92004", + "published": "2026-04-21 02:20:53", + "id": "https://xz.aliyun.com/news/92004", "summary": { "@type": "html", - "#text": "2024第一届Solar杯应急响应挑战赛 内存取证" + "#text": "一个自定义的序列化的题目" } }, { - "title": "2024第一届Solar杯应急响应挑战赛WP", - "link": "https://xz.aliyun.com/t/16938", - "published": "2024-12-28T15:56:58+08:00", - "id": "https://xz.aliyun.com/t/16938", + "title": "在野利用CVE-2026-34621漏洞PDF样本深度分析", + "link": "https://xz.aliyun.com/news/92003", + "published": "2026-04-20 15:59:55", + "id": "https://xz.aliyun.com/news/92003", "summary": { "@type": "html", - "#text": "2024第一届Solar杯应急响应挑战赛WP" + "#text": "模拟构建漏洞 PDF 响应载荷后发现,该载荷可异常驻留并嵌入 Adobe Acrobat Reader 内部,即便关闭 PDF、重启软件乃至操作系统,仍能持续触发恶意代码执行。" } }, { - "title": "2024睿抗决赛pwn题解", - "link": "https://xz.aliyun.com/t/16934", - "published": "2024-12-28T12:26:54+08:00", - "id": "https://xz.aliyun.com/t/16934", + "title": "2025ciscn决赛ez_orw", + "link": "https://xz.aliyun.com/news/92001", + "published": "2026-04-20 11:41:59", + "id": "https://xz.aliyun.com/news/92001", "summary": { "@type": "html", - "#text": "2024睿抗决赛pwn题解" + "#text": "这个题目考了花指令,魔改rc4,protobuf,纯字符shellcode,考的很多,这里借此简单的总结一下各个部分" } }, { - "title": "云安全之IAM权限提升场景和利用", - "link": "https://xz.aliyun.com/t/16930", - "published": "2024-12-27T19:09:32+08:00", - "id": "https://xz.aliyun.com/t/16930", + "title": "2026软件安全赛半决赛PWN Robo_admin WP fix&break", + "link": "https://xz.aliyun.com/news/91999", + "published": "2026-04-19 14:33:20", + "id": "https://xz.aliyun.com/news/91999", "summary": { "@type": "html", - "#text": "云安全之IAM权限提升场景和利用" + "#text": "2026软件安全赛半决赛PWN Robo_admin WP fix&break" } }, { - "title": "cjson&json 二进制漏洞利用总结", - "link": "https://xz.aliyun.com/t/16928", - "published": "2024-12-26T22:55:12+08:00", - "id": "https://xz.aliyun.com/t/16928", + "title": "软件系统安全赛2026分区赛 Web NodeJs", + "link": "https://xz.aliyun.com/news/91998", + "published": "2026-04-19 13:29:29", + "id": "https://xz.aliyun.com/news/91998", "summary": { "@type": "html", - "#text": "cjson&json 二进制漏洞利用总结" + "#text": "该文章介绍了一道 Node.js CTF 题目的解题思路:攻击者首先利用 /changepassword 接口的 merge() 函数原型链污染漏洞,注入 isAdmin: true 提权为管理员;随后通过 CVE-2026-22709 绕过 vm2 沙箱执行任意命令;最后利用 root 权限的 /backup.sh 定时脚本,将 /flag 内容写入静态目录实现读取。核心链:原型污染提权 → v" } }, { - "title": "CVE-2024-9047 (WordPress File Upload 插件漏洞分析)", - "link": "https://xz.aliyun.com/t/16927", - "published": "2024-12-26T20:23:12+08:00", - "id": "https://xz.aliyun.com/t/16927", + "title": "记edusrc的几个未授权案例的挖掘", + "link": "https://xz.aliyun.com/news/91997", + "published": "2026-04-19 11:13:32", + "id": "https://xz.aliyun.com/news/91997", "summary": { "@type": "html", - "#text": "CVE-2024-9047 (WordPress File Upload 插件漏洞分析)" + "#text": "在遇到vue框架的时候,使用相关插件进行接口相关的测试,往往更容易找到突破口。" } }, { - "title": "Windows应急响应之USBDevices日志", - "link": "https://xz.aliyun.com/t/16926", - "published": "2024-12-26T17:39:57+08:00", - "id": "https://xz.aliyun.com/t/16926", + "title": "PWN核心利用手法归纳总结", + "link": "https://xz.aliyun.com/news/91995", + "published": "2026-04-19 01:46:34", + "id": "https://xz.aliyun.com/news/91995", "summary": { "@type": "html", - "#text": "Windows应急响应之USBDevices日志" + "#text": "结合简单模型实验,直指漏洞利用" } }, { - "title": "0CTF 2024 部分WP", - "link": "https://xz.aliyun.com/t/16925", - "published": "2024-12-26T17:39:49+08:00", - "id": "https://xz.aliyun.com/t/16925", + "title": "CVE-2026-1207: Django raster lookups on PostGIS SQL注入漏洞", + "link": "https://xz.aliyun.com/news/91993", + "published": "2026-04-18 16:32:36", + "id": "https://xz.aliyun.com/news/91993", "summary": { "@type": "html", - "#text": "0CTF 2024 部分WP" + "#text": "Django 框架在使用 PostGIS 查询地理栅格(raster)数据时,若将未经验证的用户输入直接作为 band index(波段索引)参数,会引发 SQL 注入" } }, { - "title": "通过漏洞靶场学习Android应用安全", - "link": "https://xz.aliyun.com/t/16924", - "published": "2024-12-26T17:38:34+08:00", - "id": "https://xz.aliyun.com/t/16924", + "title": "b01lers CTF 2026 wp", + "link": "https://xz.aliyun.com/news/91991", + "published": "2026-04-18 07:42:41", + "id": "https://xz.aliyun.com/news/91991", "summary": { "@type": "html", - "#text": "通过漏洞靶场学习Android应用安全" + "#text": "https://b01lersc.tf/challenges" } }, { - "title": "Apache mina CVE-2024-52046漏洞分析复现", - "link": "https://xz.aliyun.com/t/16923", - "published": "2024-12-26T17:30:45+08:00", - "id": "https://xz.aliyun.com/t/16923", + "title": "利用Linux io_uring子系统绕过安全监控机制", + "link": "https://xz.aliyun.com/news/91990", + "published": "2026-04-18 06:20:16", + "id": "https://xz.aliyun.com/news/91990", "summary": { "@type": "html", - "#text": "Apache mina CVE-2024-52046漏洞分析复现" + "#text": "io_uring是Linux 5.1引入的高性能异步I/O框架,通过共享内存环形缓冲区实现用户态与内核态的零拷贝通信。" } }, { - "title": "ciscn2024 androidso_re分析", - "link": "https://xz.aliyun.com/t/16920", - "published": "2024-12-26T10:37:32+08:00", - "id": "https://xz.aliyun.com/t/16920", + "title": "从签名绕过到密钥伪造——JWT认证机制的五条攻击路径", + "link": "https://xz.aliyun.com/news/91989", + "published": "2026-04-18 04:15:29", + "id": "https://xz.aliyun.com/news/91989", "summary": { "@type": "html", - "#text": "ciscn2024 androidso_re分析" + "#text": "一次简单的小实验,文末有项目附件,欢迎交流!" } }, { - "title": "前端加解密对抗encrypt-labs", - "link": "https://xz.aliyun.com/t/16919", - "published": "2024-12-26T10:29:25+08:00", - "id": "https://xz.aliyun.com/t/16919", + "title": "上手实测阿里的大模型围栏:我发现了这些问题...", + "link": "https://xz.aliyun.com/news/91987", + "published": "2026-04-17 13:31:19", + "id": "https://xz.aliyun.com/news/91987", "summary": { "@type": "html", - "#text": "前端加解密对抗encrypt-labs" + "#text": "本文详细评估了阿里 AAIG 开源的独立大模型安全围栏 YuFeng-XGuard 的防御能力、核心优势以及现存的软肋" } }, { - "title": "AFL工具使用实践:以libtiff为例的使用指南", - "link": "https://xz.aliyun.com/t/16916", - "published": "2024-12-26T04:16:13+08:00", - "id": "https://xz.aliyun.com/t/16916", + "title": "AI 安全攻防实战:从对抗攻击到隐私泄露", + "link": "https://xz.aliyun.com/news/91984", + "published": "2026-04-17 05:12:43", + "id": "https://xz.aliyun.com/news/91984", "summary": { "@type": "html", - "#text": "AFL工具使用实践:以libtiff为例的使用指南" + "#text": "本文聚焦于深度神经网络的全生命周期安全,系统性地剖析了人工智能模型在推理、训练及隐私保护三大环节面临的威胁。文章首先从理论层面定义了攻击面,随后结合经典例题,深入阐述了对抗样本的扰动生成机理、数据投毒的后门植入逻辑以及梯度泄露的隐私复原数学原理" } }, { - "title": "应急响应系列靶场解析", - "link": "https://xz.aliyun.com/t/16914", - "published": "2024-12-25T23:48:42+08:00", - "id": "https://xz.aliyun.com/t/16914", + "title": "抢先加入AI时代顶尖安全团队!阿里云2027届实习生招聘来了!", + "link": "https://xz.aliyun.com/news/91981", + "published": "2026-04-16 08:21:37", + "id": "https://xz.aliyun.com/news/91981", "summary": { "@type": "html", - "#text": "应急响应系列靶场解析" + "#text": "抢先加入AI时代顶尖安全团队!阿里云2027届实习生招聘来了!" } }, { - "title": "记一次某红蓝演练经历", - "link": "https://xz.aliyun.com/t/16913", - "published": "2024-12-25T22:35:21+08:00", - "id": "https://xz.aliyun.com/t/16913", + "title": "Tomcat Tribes 分布式通信节点反序列化分析", + "link": "https://xz.aliyun.com/news/91980", + "published": "2026-04-16 08:00:33", + "id": "https://xz.aliyun.com/news/91980", "summary": { "@type": "html", - "#text": "记一次某红蓝演练经历" + "#text": "Tomcat Tribes 分布式通信节点反序列化分析" } }, { - "title": "Java安全-WebShell免杀的多种方式", - "link": "https://xz.aliyun.com/t/16912", - "published": "2024-12-25T21:33:55+08:00", - "id": "https://xz.aliyun.com/t/16912", + "title": "穿透静态检测:EDR对抗技术的分层实现", + "link": "https://xz.aliyun.com/news/91978", + "published": "2026-04-15 14:15:09", + "id": "https://xz.aliyun.com/news/91978", "summary": { "@type": "html", - "#text": "Java安全-WebShell免杀的多种方式" + "#text": "EDR 对抗技术的分层拆解" } }, { - "title": "Linux渗透实战之Nullbyte靶场提权", - "link": "https://xz.aliyun.com/t/16911", - "published": "2024-12-25T20:46:30+08:00", - "id": "https://xz.aliyun.com/t/16911", + "title": "2026CISCN半决赛minidb详解", + "link": "https://xz.aliyun.com/news/91977", + "published": "2026-04-15 13:23:46", + "id": "https://xz.aliyun.com/news/91977", "summary": { "@type": "html", - "#text": "Linux渗透实战之Nullbyte靶场提权" + "#text": "第一次做数据库类型的heap,和常规的heap从利用和调试上都差距很多,网上都是打heap,这里通过连续伪造打的stack" } }, { - "title": "六安市第二届网络安全大赛WP", - "link": "https://xz.aliyun.com/t/16909", - "published": "2024-12-25T18:21:31+08:00", - "id": "https://xz.aliyun.com/t/16909", + "title": "基于ptrace与/proc/mem的Linux无文件进程注入:攻击实现与内存取证检测", + "link": "https://xz.aliyun.com/news/91971", + "published": "2026-04-15 03:27:52", + "id": "https://xz.aliyun.com/news/91971", "summary": { "@type": "html", - "#text": "六安市第二届网络安全大赛WP" + "#text": "如何在不向磁盘写入任何文件的前提下,将payload注入到一个已有的合法进程中长期驻留?\n这不是一个新问题。Windows平台上的进程注入技术(CreateRemoteThread、APC Injection、Process Hollowing)已经被研究得相当充分,MITRE ATT&CK的T1055条目下列出了十余种子技术。但Linux侧的讨论往往停留在LD_PRELOAD这类启动时劫持手段," } }, { - "title": "PyYAML反序列化学习", - "link": "https://xz.aliyun.com/t/16908", - "published": "2024-12-25T18:12:03+08:00", - "id": "https://xz.aliyun.com/t/16908", + "title": "致远V7.0SP3历史漏洞分析", + "link": "https://xz.aliyun.com/news/91970", + "published": "2026-04-15 02:46:55", + "id": "https://xz.aliyun.com/news/91970", "summary": { "@type": "html", - "#text": "PyYAML反序列化学习" + "#text": "致远V7.0SP3基于seeyonreport(帆软报表v9)的历史漏洞分析" } }, { - "title": "JAVA安全之SpEL表达式执行", - "link": "https://xz.aliyun.com/t/16905", - "published": "2024-12-25T14:36:47+08:00", - "id": "https://xz.aliyun.com/t/16905", + "title": "House of storm学习", + "link": "https://xz.aliyun.com/news/91969", + "published": "2026-04-14 12:53:36", + "id": "https://xz.aliyun.com/news/91969", "summary": { "@type": "html", - "#text": "JAVA安全之SpEL表达式执行" + "#text": "遇到一个只有这个手法才能解决的题目,结合源码理解一下这个题目,顺便总结一下堆所学的知识" } }, { - "title": "从源码角度分析hessian特别的原因", - "link": "https://xz.aliyun.com/t/16904", - "published": "2024-12-25T13:46:49+08:00", - "id": "https://xz.aliyun.com/t/16904", + "title": "2026ciscn半决赛", + "link": "https://xz.aliyun.com/news/91968", + "published": "2026-04-14 12:26:39", + "id": "https://xz.aliyun.com/news/91968", "summary": { "@type": "html", - "#text": "从源码角度分析hessian特别的原因" + "#text": "赛场时候的做题" } }, { - "title": "fastapi 框架中的无回显利用", - "link": "https://xz.aliyun.com/t/16903", - "published": "2024-12-25T13:27:28+08:00", - "id": "https://xz.aliyun.com/t/16903", + "title": "红队基础设施建设--重定向器", + "link": "https://xz.aliyun.com/news/91967", + "published": "2026-04-14 09:46:07", + "id": "https://xz.aliyun.com/news/91967", "summary": { "@type": "html", - "#text": "fastapi 框架中的无回显利用" + "#text": "红队基础设施建设--重定向器" } }, { - "title": "Linux渗透实战之Trickster", - "link": "https://xz.aliyun.com/t/16902", - "published": "2024-12-25T11:49:15+08:00", - "id": "https://xz.aliyun.com/t/16902", + "title": "2026数字中国pwn", + "link": "https://xz.aliyun.com/news/91966", + "published": "2026-04-14 08:43:26", + "id": "https://xz.aliyun.com/news/91966", "summary": { "@type": "html", - "#text": "Linux渗透实战之Trickster" + "#text": "第二个零解题确实做不出来,8字节任意地址写没有泄露的ioctl支持解决不了" } }, { - "title": "HELLOCTF反序列化靶场全解", - "link": "https://xz.aliyun.com/t/16901", - "published": "2024-12-25T10:21:49+08:00", - "id": "https://xz.aliyun.com/t/16901", + "title": "Langflow 1.8.3 CodeParser eval() —RCE漏洞分析+POC", + "link": "https://xz.aliyun.com/news/91965", + "published": "2026-04-14 07:59:50", + "id": "https://xz.aliyun.com/news/91965", "summary": { "@type": "html", - "#text": "HELLOCTF反序列化靶场全解" + "#text": "小0day;CodeParser.parse_callable_details() 方法在解析函数的返回类型注解时,将注解字符串通过 ast.unparse() 提取后直接传递给 eval() 执行。" } }, { - "title": "Tomcat CVE-2024-50379 / CVE-2024-56337 条件竞争漏洞分析", - "link": "https://xz.aliyun.com/t/16900", - "published": "2024-12-25T09:41:05+08:00", - "id": "https://xz.aliyun.com/t/16900", + "title": "2026数字中国创新大赛网络安全赛道部分wp", + "link": "https://xz.aliyun.com/news/91964", + "published": "2026-04-14 02:39:29", + "id": "https://xz.aliyun.com/news/91964", "summary": { "@type": "html", - "#text": "Tomcat CVE-2024-50379 / CVE-2024-56337 条件竞争漏洞分析" + "#text": "本文是有关2026数字中国创新大赛网络安全赛道(北京赛区)部分wp" } }, { - "title": "AFL源码学习(一)", - "link": "https://xz.aliyun.com/t/16896", - "published": "2024-12-24T21:58:11+08:00", - "id": "https://xz.aliyun.com/t/16896", + "title": "契约锁电子签章系统登录接口组合漏洞挖掘", + "link": "https://xz.aliyun.com/news/91963", + "published": "2026-04-13 15:10:33", + "id": "https://xz.aliyun.com/news/91963", "summary": { "@type": "html", - "#text": "AFL源码学习(一)" + "#text": "在契约锁电子签章系统的安全审计中,通过分析官方补丁包发现一处逻辑漏洞:短信验证码校验可被绕过,导致任意用户注册。尽管登录环节设置了短信验证码及多项参数校验,但由于短信发送条件判断存在歧义,且注册与登录流程过度耦合,形成了一条完整的攻击路径。" } }, { - "title": "基于科来的哥斯拉流量分析", - "link": "https://xz.aliyun.com/t/16895", - "published": "2024-12-24T17:04:59+08:00", - "id": "https://xz.aliyun.com/t/16895", + "title": "告别正则堆砌:一种基于信息熵与词汇占比的 JS 硬编码高精度发现方案", + "link": "https://xz.aliyun.com/news/91962", + "published": "2026-04-13 14:52:10", + "id": "https://xz.aliyun.com/news/91962", "summary": { "@type": "html", - "#text": "基于科来的哥斯拉流量分析" + "#text": "基于多维度统计特征的轻量级硬编码密钥检测算法,通过归一化香农熵、语义占比及动态阈值策略,在不依赖外部模型与网络的前提下,实现前端代码中敏感信息的高召回识别。" } }, { - "title": "Java安全之加载shellcode_bypass杀软", - "link": "https://xz.aliyun.com/t/16894", - "published": "2024-12-24T16:57:00+08:00", - "id": "https://xz.aliyun.com/t/16894", + "title": "UDS诊断服务滥用实现CAN总线完全接管", + "link": "https://xz.aliyun.com/news/91961", + "published": "2026-04-13 08:55:52", + "id": "https://xz.aliyun.com/news/91961", "summary": { "@type": "html", - "#text": "Java安全之加载shellcode_bypass杀软" + "#text": "笔者将从协议原理出发,分析UDS诊断服务的设计缺陷,完整复现从\"被动监听\"到\"主动控车\"的攻击链路,并探讨车载网络安全的防御方案。" } }, { - "title": "pwn的堆中如何使用off by one 和off by null的详细解析以及每一步的调试过程", - "link": "https://xz.aliyun.com/t/16893", - "published": "2024-12-24T15:41:09+08:00", - "id": "https://xz.aliyun.com/t/16893", + "title": "记录如何通过内存镜像提取微信密钥并解密数据库", + "link": "https://xz.aliyun.com/news/91960", + "published": "2026-04-13 06:53:25", + "id": "https://xz.aliyun.com/news/91960", "summary": { "@type": "html", - "#text": "pwn的堆中如何使用off by one 和off by null的详细解析以及每一步的调试过程" + "#text": "平航杯2026-内存取证,古法处理内存镜像,提取微信4.x最新版本的key+salt,并解密加密数据库" } }, { - "title": "Linux渗透实战之Instant", - "link": "https://xz.aliyun.com/t/16889", - "published": "2024-12-23T20:01:20+08:00", - "id": "https://xz.aliyun.com/t/16889", + "title": "AWD古剑山线下PWN全解", + "link": "https://xz.aliyun.com/news/91959", + "published": "2026-04-13 02:39:37", + "id": "https://xz.aliyun.com/news/91959", "summary": { "@type": "html", - "#text": "Linux渗透实战之Instant" + "#text": "heap是赛后复现,2.23太长时间没有做已经是很生疏了" } }, { - "title": "vulnhub靶机billu_b0x精讲", - "link": "https://xz.aliyun.com/t/16888", - "published": "2024-12-23T18:33:18+08:00", - "id": "https://xz.aliyun.com/t/16888", + "title": "2026数字中国网络和数据安全积分争夺团队赛--数据安全赛道writeup", + "link": "https://xz.aliyun.com/news/91956", + "published": "2026-04-12 12:54:35", + "id": "https://xz.aliyun.com/news/91956", "summary": { "@type": "html", - "#text": "vulnhub靶机billu_b0x精讲" + "#text": "https://www.dcic-china.com/competitions/10214" } }, { - "title": "企业上云的新攻击面分析", - "link": "https://xz.aliyun.com/t/16887", - "published": "2024-12-23T17:43:33+08:00", - "id": "https://xz.aliyun.com/t/16887", + "title": "记一次同一单位的两个小程序唇齿相依的危害", + "link": "https://xz.aliyun.com/news/91952", + "published": "2026-04-12 05:13:57", + "id": "https://xz.aliyun.com/news/91952", "summary": { "@type": "html", - "#text": "企业上云的新攻击面分析" + "#text": "本文章均来自本人实战" } } ] \ No newline at end of file diff --git a/resources/db/4hou.db b/resources/db/4hou.db new file mode 100644 index 0000000000000000000000000000000000000000..91b27aa1d291cf403c606b88401d9bd1cffd33b3 GIT binary patch literal 217088 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Μ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 literal 0 HcmV?d00001 diff --git a/resources/db/anquanke.db b/resources/db/anquanke.db new file mode 100644 index 0000000000000000000000000000000000000000..4cbc1319f68e4df82a943dd9a802dce2a3faa12c GIT binary patch literal 12288 zcmeI2TTdJ58G!AuWJz|Dv`V$ns-hiQtu_%$@QiK1Ru6HAoAoXsY+$t;<)Sh$B~~4q z_)wIa%8tR9AskH1!C+2K%qfd)5+KILa8ap0qEc_N^L;aO74;wV9SLIkMpQzMo)fIwJsZ;}SFN1sWP{SV|6d%BE@$r8; z22_{-GI$17ojAL%I`>ofp&W_<#eiZ!F`yVw3@8Q^1BwB~fMP%~pcwe?4YZs%d7-*m zecNMgx6|(XcK9y)M>l=nOFKGBAC@)VGMn1WM4RbqlbI-4d(mONM}GmYyyUm5KfF*` zsSZ>Zu4#37Y#ngv;_nl0U8Q)IxOkd4IBcDSrMb;~-F%B^xn;Rwx^AFtZ-Qluzdu&ce$?|S*`!y?k ztG@=Hx6N|H{O0|vUe8^ptFXMla7p}b{fCS6#?O|Wv3>l{j}0GXKGL3EIDP6= zSH<5eh!1;C{^Mj*`BwSK53I0IITQnmf&UEyeu8N^rSf06b4jJGYNPFRm&%;S7DZRsY}V9b5vE7Ei9E#xx;y{w%h6U)Y>|0wWOZZH@N8zugm6n;B?q+4w}+Xbu}7o z4XGtajZsS(^(29k1E_BWCFA}o<|Z(HT420x^E6r8(MT9&0^H^@_9discxDq%qzQIE ziJlG#&!*7O#`mqQY-SiB@!%Mjo5isq#4O_75xhAk4^sbLNUafQ-#}I~%>b#tQw1XV zKpywbbMpzle~r&R!|P8_Y=w_M!&`%VY8>>MEQHD7x$AOv+d5F+3pP94Xt#PhX;_a# zVca{yr-HBy2N=){AC?HtvI)KMFTb(W|zZ?|eVUq==gB*l>H~}}*muS3e^;~ahlSiX}4-IuR zrk^rjgQQc1#539L4~XxauFe)0?RMjlF*dg?d20Qp3BOnY2uT=$R{VUxuhX!Zem1iv z*3Yx3JTT3B6HaH;8IGv>jQI-S>hGvj+Rw#U3riDdgTWhlKEEWTB^S-3Odd)ZiU>Vj zW_PDiEQoW9II@kBQ?GX)p}q}nJq+u4e*`!WDrq9kMdqfeb2wKC1=b%ln`-|A00%L-2z;dmT%{&D>h-snXF_S=H2Iz#T=V)(H zOamy69+Vyt_M&`rkAIRui3rp;^dUJ~DUIPMVx3W=Gm;vDTMlE!$7bPY0)^84O6E(T ztdc0-e(v?|^ebOXdiPhp*&-1)_z?dPXLknK%%F%H^YKf5HsceE zIfRr}S0tqB#SX25vZam@o@f35glFDCXtHq0NyN+uv#Tha2Vq<;#N{4C1o-44JVj~H z&ZZC@VskIi$a7g(daZ<|gV{ll^+s)jQPXe?>l|YStnvbuklE+QqRp^dM%f6=GBI3{ zBw`lOO!k#80ynWWchL?HVpaiGN=dZqg9a%Jss5lIbTyD;WSx=H8!3ulGce26g_&*i zbQN;iuV$`QsN5paXXs^uTNy-;CQxz?njQAda=A?y7hE|I&2hu1NggC;uhMh-&Hw)}&Pacs$b4Uce6b5$5KIjwX3b33n_`=aF>@wK=W7s~3 z8N9Oz^n^H<)o30JZPS}8VZ=|K#{nQ zD2?RLnco9hWr0j88Ge5T0tb!8WPwc$o5|rw4)u#Y2TyLZxhG=%ADsnD51~^*LBbSB z?O}Ogm{pJ3=h4Pkv13R{E*Z=?k literal 0 HcmV?d00001 diff --git a/resources/db/baidu.db b/resources/db/baidu.db new file mode 100644 index 0000000000000000000000000000000000000000..00371e79aa1046aa750a7c0e199fcf044bdd0829 GIT binary patch literal 176128 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 X;i4VwKV(CbEh34fn#vd4h3x+TTZ$?v literal 0 HcmV?d00001 diff --git a/resources/db/doonsec.db b/resources/db/doonsec.db new file mode 100644 index 0000000000000000000000000000000000000000..6338b97344e74f5e1b11a1485b87f28abf9e9440 GIT binary patch literal 196608 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ⅆe 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%0DaZP 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 literal 0 HcmV?d00001 diff --git a/resources/db/freebuf.db b/resources/db/freebuf.db new file mode 100644 index 0000000000000000000000000000000000000000..cca064f6c0c50266eefb5a6352ed17c29fcc7252 GIT binary patch literal 20480 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 VFLSQ4dIWi=;CYuWsz=bZ{{yKgToC{O literal 0 HcmV?d00001 diff --git a/resources/db/qianxin.db b/resources/db/qianxin.db new file mode 100644 index 0000000000000000000000000000000000000000..22818e894bf45d010cd35113b0d3fc2f76966655 GIT binary patch literal 12288 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 T|1SiNRUJ50UH%t^>eRmg?weB- literal 0 HcmV?d00001 diff --git a/resources/db/sec_news.db b/resources/db/sec_news.db new file mode 100644 index 0000000000000000000000000000000000000000..86ceac44ea3a06e0cb811df9ddcaf0144a56ddfd GIT binary patch literal 12288 zcmeI&?@!xC7zc2hbS0bkF{#pcF(KVvOarx$I3`R)nlx{-CToRtG?RvSfxO_gQ9}ZW zGgN7s;&o66h{75c%5PFZ*`yMtF`77}eX;*zFDjqyyh7SvuqOe!EfQMZP1>GQZ09ca z-PfNxzp#|+pIi;93i%=u9g$VSGp{l%%e+en!!S01BW03ZMWApg_$6*Xk~|T)xZ>sPg9_B{mjWC(9t~7q93KruROq3f}vqtW*wfrsBQ&wvCrmBv{ zd@k4c_;{xr9*fK2TS{jjGU6JI#8g*s*u`^RPmhP#spYnTU-Rwu{))%#>F#iMb#Of4 zI3MTrb$P$O=wy_^4v1hqT7Yp39roLFYXA6XS&*Q1d^B516zr!9^xl%8Pty7H@zF*t zWApsmq^i%e@jY(Bb^AP=&%$x3TKn2#R<7`?Y(r8bU_w3;Gzapy+l2+{zm(dcbD^PP2&v5Q%wa9Ez2{( z{6zyTK>`#*e?*fjr%c6+IW=F4Q5V;9t`P+51|T2bt-W3c!CEW9PHw<{wgR*EJh3WB z_T3+iT)|8g=-tBe#G08tGzt$Pm9?;LF76x8woENccfK)-i?FN(iDvU=GA&58r8|F- zouq?x?$%iLUw_cb@BeJ`?+kpfpa2S>01BW03ZMWApa2S>01BW03jAjT8dygwd-lJE G`ab|YlUWG> literal 0 HcmV?d00001 diff --git a/resources/db/seebug.db b/resources/db/seebug.db new file mode 100644 index 0000000000000000000000000000000000000000..2c2339a705c9a1577337ba819b9e7a17e5dce414 GIT binary patch literal 20480 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 Xr`tEC{y)h3F#j9+|4O^1vc&e^o&{W9 literal 0 HcmV?d00001 diff --git a/resources/db/sougou-wx.db b/resources/db/sougou-wx.db new file mode 100644 index 0000000000000000000000000000000000000000..089038032b7dba846e8a97f16720d3e1444f80a2 GIT binary patch literal 90112 zcmeFaS&$redM5@_Ls3f#f~1u+)@n!7l!RGO>;m&XAdjic%FMd&yEYW%y6?)Wth;t? zHvl&7leme-MdIRtgCvNf8x6c{IP8}VhyCJ*-Iq~kRds|T9Cn2L;s}Soe`R;Ghr|pu z9Dx;|y$^fsHe; zaRxTdz{VNaI0GAJVB-vIoPmuq@a!|-eerjH_{JMA#9GNzCEILNAYM&0vyFDPmj3du zzhm~xLQtLx3Zhe<`qH-BYRPJL8b0~@uHSp%z{BsG z;NjJ6@bJoC!^6M$OL+J_RL_6;PvGHqx4^?oufW3(UP86`7q1r{tqv`2v0ZuZJdE`{|wCj*-Ni(3hfE(;>kC*ZeDtLYk2zZXz}>);CXnmG{5Jy z;rSmxdRvy;f+o>dhT*zS+$dd&S!JrkYpV+tX_GO+=n~tF2XjnyK;0 zgee~*c-n#a)5Szj9fYH~jH?{*1)UKl-L(e`v3A8Ox5A~UW(gL<`9Q*}aVDH;TiQ-% zASbA5Gio(AB0+Py>XCbD5^qG4oKmmUGdyFDblRazv0>|^7$VY%)Le0u*1D`9aa<_s zaA|76FW9SM6dRCXu^yx=rC7Qb>6B_AfxtcObkap@gL=4+hppwFH<=c5l^|C%=Yp9y z=O$_$m8f%(T%nvS_^af=>`7bHYB}!gy8SWL9F-b!qfZdEisl-~(NebQPp~E}<_<}k z&1X%PG|9pWE?f?g-o7_yRzb za?0ctdMhVxmAS2gvX!TQ(o)OW+D|EpR&bdjc!|KxW`Q;{W|C(JMZ__j!D!jcC>SPU zG{Y+_#o??z`#`_CcXaUM(MJdM$20mTr-l#DEYBPretvL#=hW!kx5v8|^#kYsj`+u! zoufUMhP(Fb4H zyQlR-v%`ZQ2Yk-qXE*iPYp|DSAOMf%fL|Hi+V6=70dLUb#jz=4FU#*A*}i={ff1Mq z$4wYHh0{A|Vh70s-t_Z}fVAZ^3kY@Vj&k;`AN>BNoi772)8vo0ZvNTKoc`q4=*WKf z8D81!0piUO2Abes6eTPQUuW==vl5=o$U?m8tQO2l~F_jQ;4}_Yc`p zKrE;gr(3FuLfn(V*lJ5EY31`ri4ar?>U1hxLW|@$K6HpXuS9qri-Vm42? z)xa?i(>2G6YR_681gqbrwOx98Ww`UsioKjzSU~3T%)8^Kd-Xey#&_NZRF2Ny9$wxH zkc6u|T9`vt_Opf2!lm)k^W!Ur)+2mcKYDz0by|enG`v!!ECm+EF3a{o|K!GFq$C4hl|x zqh8B1jaaCXC+khkr{NwtZ7OToUMnCaQ)Mn|>zI;>P^#;(sJzo9s`qmOSEe#hofz+5mB|=^X2#4{zb#o=Qo{AR;>J%YiHpmq=}fEYkNyn7tk-_IZDhtDj(cYJy0iS>8Ytm%bUH)U6y2?7Jt zyB8dT@#zm=Tl?(z={YdS`ln}>77v3Lv$S~mH^beHVJ?3l-R-!-{zkJxbRx}In{zg@ zd216FC=Ba|B3?7^zzVT2=MnL0UNzTQuOgR27J(b|Dg@pOC#o$+nGSaw`K%)Q2+r59 zxP6XTEW+CQO1)wCrz@tUmX2mPn#tE|Lb;jc8*aFHLnSU47sV85ZsMZaZMfBD-zk`> zw&<`I;+d>wZTpo5<+HR47?p}u5c@R~xq6*r&1S_N9ddz4*qrANpU%Hihj)Ud8=k!L z8mz@j59h|$o+2~%Xy0h(M{j-qYx6e>i$s^tFLwua%xbP#3sfRk;hiOK-W==1Vs*mf z=u*ClLk^W4#gbHv#u%>P4B1U?wOjP7S}J9zjE`4r(dN}tXEPJq<kb!= zFQ5MqzWlY(m5+y)A5NmUx8W!t7W~>HlBJp61W zaRock?;b_4ng3|%;Q;{b=*i+};T`lvw=XV#cxbe6VtC;a00*A09L%YE!+SgR>$?Dt zOAoJ&51vQQSAl1^kpx6RCK5yGDC9|!`qkUx8+*q0-h)_w{c1d`{2t_@wycKo!%LTk zAASsX5*!LRoWp$&;3k44est~$GPe7kj;~yU+v6?pAeSCpT6%aG-8i3Kfx8oKpQXp| z{syE_zmZRA^~4&zybJ+5W}@p%(=T>gQniH@v)x2Lop+WK^?0fg&6Jr6R`a9+o+u;p zeJ{t55}D>2@epZ=1gr$x_4}}3UThStey=q}dc0XFl~!!FN~5lc)W8{b3y!uFvD6xI z!qVmVa=#~a)oACt^eNXnix5jg;&VM9z$IMW;0hQli1C*m-!<}AD>3;bdpcUUH#~3^ znb+CRmQUUu9l0|;uxomF>+101D-h=E4|l_RGzvN%TpQguyuA0&^y+RW$=B6n0$^)t z{+;p8ld$vE4bb;Ov<5p^3yD}0WL$B62g&WA$!EHiv(A?R$Ug=kXD7}AG+_0MLm!_W6` zqQ99Zk#B0wBBGsnQ|S>E%`Kh7N2e@$q^QGEZP{ziUBxJo!fnS9Gtu4S>R z&+W+d2VGjL^@^Da&e_;zs4U=4ch%F3TiRwXZA#H@xf38%H-=f{kcEmk9GQG2Y~q?8 z2ivd3!o76REQK9hKAy2#iKyG$(PFft-EP$zIY-42NwvbkZYJC?cl+MVcUtKBCxiNX z#x$7B^|0oVvrN%D2UVOR`oQB8Hkz+iH7LIytb;Toop~=cSGtaIj&I8_j@6X zQysxXM+mzLgF#$Ks3m_tBnVoq;9}!0lXXz>q*7ATD`k?Ibf;(X@ zw3Q>*F#{+};yICIB|!v7TcSCN6a-Nr2>}-+3ga=ttgJ8tB;%5O>7v6L4A&0d{&N?6 z?n9`b8_5TRj{LMw*sCB=B< zz{*jAGkpHi+8;9O{{ukvn}F&B$^Urs_$fMo(e4||?|gzXzYkC7`#yMUZEJ|iP>l*a z@FxfLhx_!si_?%51J29%_6HEOp@PVfYs)8h4sR_OS&`oWL~E2&(ag4rxz$s1Do0fl z@t%pS3v%9+aa+CNRIbvgx|tlP-gL2gyqtA;eL*aqp&M#aqrDEI)Nth;sf3I{&0nrD zIL@cc9cLTM<1RbrX){>PR}?dpxyYG>ZIVx6PzE#MoJ-FDT&z*#;tl=a~-fw~Xkc$Dw#>T;buxort6~ zv1h|WkV-hSWBEPEG4^8b{{+g_w|i69H98@0@VC(LWDOug_2$X?4`$$GJSVE zvvYXiDFV^S&&GEitnB~HeSrPU=!C!~WZ$OItccnYyncC5i|#jHL&2#Ks| z1I-NN{Y@l}3a=OrWh>-9@0o?bYH9w)_{J_1e5rn8Ztd`9w{CuQQxh=lAn_k>HtNDC z0(^L2>EWm2dpCfPv$m~KzC*_}e-g5L!_$u-dGh={*srt0g-W#%VU%j#o39QmPFFII zHC${`4EGBb&FvdhVnuTif~vZQC^F`HI&Cfsg=VNy>^M?pmh(2{n#aO<>sTgJh-WJn z)vsu3qLhetSjnNagkrFy`eS9gsiRdmyC>0)2GXHMkhKSj9!ju8TnRjYyPH_a?h3a( z6*66oTlkU?h~insW=|%(4PHpc1dYjHfmpB+q_TbIv&jSBE^3EIZY(W4(BHW^zVjYX zNJxyP365atZThi8o!8f2-z0?#}978uLb~y zx88@q>h-T8V;ij9C`j9X2yFtqn8{57co}{C@zTTnfEQFVxP2dX^Yd86crd#NtEcv$ z+huax!}HhC&#LP%yZQHD-BbpgvgD7}c@#z^Y$a`SU`Bs%V>knx2QbBZmgYa&HYrWa zy#D=TluOu)Z7CYR6hPp2t0!#B)o6K6`MmeALLRv$6cd3uRuB`#bg&Y4Y6*Xxu!ilvXwThp2??jAAf~Vg>8mu| zSz0XS;#ONDn(wD`QERA!$B7slDD`73SyE#Gfo!(JY&_fRw9595KjF<3qs*XF_U2VV z^M4nX^#~A^_CkSlJTto^T`Xr4eSPxM@`)#~KJHk(a;b`%-=1z}YTIks)(R~&L6baA z5G48L3Z?nYOtzIQR+?|(Bt}sj30Z+v_>6BqT?U@ZgfNq=7h%_sPSy7T1?D0u4y@a3 z9Wrrl3gdQA6ePRM)C%`zb<5eme-)g8KLtR>NczV>YMoiWetK;`fcbx%IRFH!(YeKc zoH;l>n!SP8VUYiLd{RI83FK#y6+Q9c(){@${Ovd1*7u$J4oYQTXGv{tg>*NtYJ?%f zTrf#z19E|ixa@(PH&8BTa!f94^Ht(eZ>Bj&aN#~*4L3~@;DidY)0$CpSl^UQm8%tV zrW7+VErMzaZix*!D^?({l1{$|V>$(YzgEN5Je6mnF|wTF!g*7*;J1^E1t)k)>JDn< zPB}bqiV3D3tZ6;o?aFjAF3zVBn2-|%H6V&PCTOpkLwG1}?S2O+9iF`j15*>To}#YS-Z|_kT6~`$V+hXhqn$5&wsie zB->Zg_Yx3NDyc$lb1kEn57+kA)us zLZ{)QCz)cir4`dHlpT8v<+YV)%!vR0cGKp+dBy$m`5*khFaGWK9yo3sz;EOknDzY$ z7`wN?*!=_f`j0n*GdaEk>+210Y{4(pFCAPy{{Z==$RoV654bVN(yhWwzXfEc69Cci z;+>_1`@?;w4M%qxqB7ts>c@_Z-}`8E@4fNoCs(cg^P~NLodv{Akd>F2WSdZhfy19> zds++YBuZL9^x10zs&2N?Rx#_0Cb$^aFEVu6?O|+WHZ4n%eVzZ;+w;x@4&U( zF}!mUDxPq`hnJ4QS~kA@WPJOIu?bvoucV9~pB_Is4y7k(7Z{zqgvwX*SC;lYVYXOAp|ph&$;o9_w_xW8F)i+ z(SZX?PtLEifdr&KfwTupH>*G0J={IJ{J~S;YvbG+ENB1KzkGF510elVl%neO#&>ou zJ-Tjiy21HC?(6E`41NMot)O^?{?L67M&}mv#ovIq#}%k`Dv^*@p3q2Jg=(av2v(CO zE9Hzw&2gkekeNQ~kC{VZQ##RW$c12>O2^uXgx_Lqo5Dh{TyxZNgMlqnvRY~YRV77| zwphT<(?wnC6h>NIh!dR%UW7) z;F)TPTpq9Gs##WS1*vpPtLMsJQ(t{vSe-b1Mu@O&l1I9)@4LKw4zfQ-j1uSYv$vP$ zK7D-$;yItZX~1+FAUap9WtwU=+bR@mc|fvL?PTqN*Ad_4=xKYvNHiHvdasjKk9uw052jr{H-bAE<-M0W2(~z3f z_Z&w2fV+Fp`h5zzVctbw3K{pw_W+n7CIM5s4z)mGfiN9K>eTR)U8t+%vs3!pPrra{ z;E%vZ_(eH?_)CC$^(*E4jgROLZVu00`t8p7yB(OTLlhEild0Sn%;At)b>~uDvXa0k z+#^&XWT<5?hZu(?>7y-_#nJP`g7pqmKV>3mw%gqmch{9|#uKK3qZo6FZFhi6L`Ve- z)#Hqr#j0G|QcYOJWZ#AtY~4n{oOib}G)dP>7LTVCdnTvl+qJpBDCZ9s{kzNg8;DuS z`9lFxH+psdVg2w&DF1)#hym$I&L09Li0`3E5Tkx!&Oi2tfa)KDC2o^8$dAr` zhIo>zjsd!P&MzWr!ov%rBL_!EfUtD|{9;Ig87m6vUEFgBZZM-UM}Pk=O2yLz75la?-HhkCOtdHFOU`cAhgqZ9kXoTxx0fsxF{0EL z5-x|=OzmZ;ZJY!lY3)Q=O9kW}YRnXhTT&jH(Y}ky)wgkZ z4MYGah8K>FcU@UpSOiku^0{M1uOVt5n7t2-sFhzQ@G&;l4=w1k3+p#VdHzYI08wNv zTr~E)e14C9{=KD#2lY=b8epbP&})TwEYuEc67^4Z3XTPQ{qWIgC{e86=^A>C_`kbp zbLf@-_T~Th(!YMO`x_a2ZXDDjxv%>F*CD}nCVskiCv>GZ_y?q}kr)fWJ?zog9rU`)%hz}4s)nD=} z-6Y){gld)n3ALd{7zo&YYe5M?KPoKMF)mgmq8+W;%u2CBEapsTzG5a?5Qv7q$rY=a zdc|w8m;)KF+70p*r=9D#*q9dfh>XP?q?4*?U@@nfy>hbMp>|Kn63JIyY;<$Am{naPftxvdZ6}w0HIv9nKRN2v(8tU^SAXu-1;_RFMh0*YmApgzJgY@4+l^?!fDpIWZT~jMfU^hS1 zkF6*RJpa}G>rhL@Q#H+AcLhVNIY|uy!Ms$Bx5M?W8*9WwAen@@at?TP#jseg)FWm` zCqS7811eS^36XCV8coc`K>HqxccLMaJP?FRI&1M_-DEi!@^pG$1vl4gNm7Ljf41#Q zvV6=<2ea*9v{tl5?E!x>;4DXSTp%66!yZp7){e2ALL^7~(jLE~n{$epKE@Wx9##6K zy?oCNwTOpt`2oPuAd;@M_AQbt6_4oj%avH!7 zv}XM%WHq714<77haF*Z@zE8-RKOBon^$0b^|kDGT0& z(-TJ(Fw0v7vqQgied*C<{rJrKBbqh+&_Jw@#J_~tDZ`!`w)KlU_0lEdcKrSkOKaXN z%uZrOM<{FUkZpf5?O;P;hu!Kekrk=jkJLmt5V2ToLOf8FhGzVnel4Ta3kLdWr8#`pjE{F{GH-AG()Q`+hFCx!B7l583lb^o zFFFc0V8w(AD&*4V_Cr>5dGCQ804<>Tqm=5N!{g7-j-TFze$o$7gUG}tuk?_fI1H(R z?ZtXpt>ub&{pcZBhxNl(VADH@hCeZe#k$d(h4aLAoZ+_9#P%N0n2??TPy<%V?sF^E zeBe?OCIY$x*c~JZO9b^O-{Xs$(eb3$0nHNCVq+ct%Y0wvkp?rN;y?G7>$?XkBApDDrG0^z)-WMjT| zUeYXz66`Bf$&|BM9aTp$QY|F%LELXE^EI12s8$<;B!_E)-|i{JljdmM(jO$5OlaWC zr0XS5K9=JtCfxRwORiFB;4{m4(jDxXE!B)GY;U-eO4_f5!qBDPOr=}hVtml=lvK7I z>bt@vSCy^QWmB@}NHj~$oZ1LMb964qL^Rn?YeKA*X7U-V!1hZf(ofKJS0>pEd)j;~ zL}<<&^dD-B2M@%%W?NKkGhTYHqXH6&krO?A5P=bj1+^drOai z7kF#J(K~ZrpE)<&{n_~XPM|p%z5~#zP*e33h*@9&ZVKdpptcVm0ug}q;GNy}r>}1E ztab~me`o0-#CFgMiIg|cK}^^xzdp3TPU!0Eyam6e6ccnUQ3|WxL?#Cl>!K7{^UzKA zpz4k$`J~42aj>Ly3*6ieA4gV&st9)g2n1ExvZX^XgvV*l512Hqc<6e;RMkkAR&Z2Q z&J(Yht*yG7ZgYIl>guV*im6%mRoHl5^G5|G7goH!T)z=+3w1|4sWP%D;C5HaPP@C) zC^%zYAyD!b@_9w*)~g|xTd^{>8Z8&e!80;i&kd%}SosYJq2c}yPN1T+i7{ZEGH?;)n2an&aaKT>Le#_0L;#)~UhH#D%`pMlmGsEz6mp~Ub&zq4m_ zd8g4VGdj625|6ll@H*Nl}UwQiSjvxFt@O0zfZ}l0N-S(G;8kB|ni=SUpf#(EWt2^{d zKteiVR#VAJ3voiqS+GQ4PC;Bk-v@$bXru4nB-KnN*6JfOg`_uMj6_WZ53Tm=QqXT} zRt9OC8Yl*wSWv~Cd z&^BrD78&6OUMx;Ua>;bc$H=J$mn-v`V)r`?ySG6Xus(l%cx(=M6HpHSB838Xxt6tL zRW1L9S5te%TrsP?z8%FHcYr9gcl6O^2vgEcR7E@naSL*?rs0+P>b6EC0%>xfrJ;uC z$*$4o!J&jo5^M@+(V>lF0u}xCRp|IzdVFr_@jZigX#_3c3E~q^5X7HoD8VaQHY>Js z>ko8x$Bzu@r+=8Ze~%E?c zG;lM}Madk+yb$AgZ1kX(Y*-?EDBZT07y^o<0V!6Mm7KL)w9^40 zWh!HR+En&wsaQLprYt467%m28$PKyjOTv)M@xkGu!VCfeHg@T$<6u?v#HrV&@<(Lq!a znxvBSYl~n54cwB5I}c7CWQS-ZGx3X@yuB~}>xq-M=a0S|Ya7%kFtej8Gf2bd^PLdh zfBzu;Mgca#l&eXO0^{Zo6_Yh?FI%HkKiv%U`*b(fi&@;j1aZVjvD}lw=HTvu{ek|6^|*yH;urDm#Ecq!9Mh;b4O)v&fs8G< z_8-FKNAbY*T}z9nR?<0>FdNB)9zBhkKu+HUh#!XSRNky5i%0h7>d>w;$wZQ9m}15(pFz9SdKRK={kQcy*HxBCUV;va_=TImEzaSgkAk zri5DG$giQ;ygQibhO>FU5|7&k85319i?w*AQ37&Rq0{d6EP0}u2wTnJq_?HwZHbQB z@|>gW4m)H@l^||SYHcxJwI*8wDhq|)l&7AkXr7iU?s5cqC6h@8V;O6!8_PwCVpjBs zTJ3vUDkgU!N(Mk2^%QkKt;k|P-fCet3eSxM0EkW@L5qoNuoC_6UWAK|^Z+LA1N!9d zS?DaC*3VxCEsW{mse5p5p_~BFy!K7h*Y;k98)*$G>+g00FQ7V|E;pCoy@6!@j@<%9 zOvpjN$Bm@|fC}oYP;;HMS%G%)GhCb>{VPNEI!6AvAsk>x4^IMrBpYirpwdcrqzA(aGj{%z>$RlVt~8-XT>Q3Pl$id92#xES_?$Y^__%s@IiwlHa8_ zV|1hfamwf=L0-oEdGLmpo*bMunvRT@zDTow=WU}ovm{G)joivX?e)jAgFvi1sNQQOVcxD(=$W}ojfSMEzfCNxkn!CbT#dy2svZWPCQMh_V?X@}xD}8p!*7gF-Fu zro7>LfVW!8mVVip8iayGOv-x`1SkUsvfVZj@fHg{XE)ZsJ(1WitzALS|1VVmU=&`# zaa@o|S{4aOgnwpPkXas=MT(?JQN%e>kVQ}dfL;jF{H03>3oW$qgNwZU&OR`62Cd2P z87F+yqj$ieU3m|B^Fhdb!nNOSJ!j`jG1~1d*Icz? z0yHODicKX$Q9B@Hk|or%+2O~sbY&Na4xT0$NQ~-(ir$_ zmNFTNxPL9`DnrNuK{B!|(YUBcw8)60%yJ6FGB|L};de6!JO=`RYUX5$Lhk0enGh2% z)4=FgFYy}OR{D+)ogN;6niHs`L6gbEg)^`RO@PDwXOU3FrE3N(h9GEi=P`6%k3Ly2 zUO{mn{BEfG0#9~$?hfD>q2&ZPvJ0qf27=3DhakhIKi;(s^8W@>Ck_59o+r$=z@f8R zzxX~X-rff7zm?v;*}!YSTSZzG#Yta3hz^1T{M?67eu5`J0AJe@I$I#7gu7;V@onQ> zz^w72zW5%r!N5VG+ViQq(8vWzI{o2Js5*cDaISWJWix?Q@|HmuOJoujMpT+Tw%!P& z{5F%EjJMoGzZvQ^-CR2hVig&zU1>G4gSI4et0gl}+ml!-XD?;SVcuC$Gm&hLv$(i2 z=XPf+6@O1mNpz~!Z3><+lwk?4EfZ=&%PN<$m7~Shz~iJSg5nd7LJO-{DrGq%Mm?UO z#mDEUt}E)$aza+^5t(GW^vi>(ueH0sBAfxgz!OEb@b2;D6ZgN}%MOy$s3#TW0p>12 zlRsd?fP_)K9o{(#G5bnpV*-^`&lPgbXTgXgO*bS}0ceE@1*?uKl3!t_2#{a{N0nPa z+9b)V-#&|?_%&4j?bNHAx|6mT5CK3{u=(?&xt$aJl)Io$u(qMmL}tip0HNXZ@cuqD zf#bjj&r4**RO}QJEf84l?0RI_g6Vch0zs% zRf}t!yOFCjdvvemC!EfHscCOp+##j!vbfWZ9IWNeC|~dwb7e0s#HuvKIdM+66^i#+%NBv2q=h7ijt zxPo&O1b}8U{KvttAw?2t@Fc(vgG8;!pp|(Yw;tKTiFC=&T}xy$L4ADzuKd0)87Yud z9iDtT+<$*~XykfC}Z- zgMe~lH~Jg`mjNUA6_s3-x5W zkev#s6>V)3q_Xn(@;1L&e%)A5&>wAN0oSG>A+6b+&&%9?F%PTIbI>@`Nd?PPv@OZ* zzB!%iRK9R?TLXv72JyBh(vXTc7fTLunQ+UQ$eLSut?cIpMHrk#S(+_};_wBtMA$^N zY+1ZwsasTMtRrVFYRzilE525+38L7Ptn`^uHXId;PTngGqVB565;hIwde_lN*!oRy zvP-o{z=>yU36*!0EN(};CpDvCww%pbqEbk#hN&v9{>GFo08 zdxcw-g{Gkj;U=1PY@OCfEKX-23Ymix1$kMlhiPLoAI?fRzPMr3NQ!@3@bfJQ6Vb8 zN{VXj2#omuhnqIbuV^pded(nafB0J%KyDoJw|xd?%iF+iCBSZ}6Y;)P(TmZ^4q<3~g`u}G$C*fzUK@n9^R+}A-M#Itk<ee|4coT-k} zR=$(UHQIc(7U}Y-e!-uBIb_+An5aYB=NC3E(T`cnjY{6nIn+d;$JAw}N7#~mnYK|0 zx#E`;y5tr^szo95DX}dL#E7@tbB59bQzVA*$y~*0N_i8kxml>=xhNB?TKKxRSg+=* zc*oxNvz|<^N0p*3v+T{{f+HVfdU7;c4#vW+jJ=$0RN7p(rB(CUsMyc&Ktf0cMZZvv zY6U^7=S%%~!{ww~cGlrH_nCGz5b(;)XHcQO&c?A43fm=t!%0cPL_y*ug@YAYlq3qG zBp%+ua9pGq0mC_rl-4ewAzBB?Ps7PvzVzABqho8G`ubs@0=x?b5j;GAz*muiBCS>Z z8?^LIBKWTgp}=RCcijeg0c2YNao{gPgEgucoj<=`V`T?KV}?J9Mi9=;18EdFr|Y96 zeu}_$kkD++>c@7EPRt>F;&)FkpZ#p@;AXe|n^!lvCVagw6aB41z=}k!CggsD!Tp>t zx-Q*hj$0jcr{gmNiy-H6deeCy+h3P%YV@Gu>T3sEP2fE{yv}qq-Exyo*^RdfmO_*t z*wUt;6wibj5vy8r<^+e3>xZI2+S$y}8JJ?$?)B2?@Sx_xh>V)HI+&DMj5nNFx=WS# zmJ>H6Lb$cqC%S<^g~lsbAB(nNI8dsP%uw-sNs9z=t?f$Js!kQOFw%BTD+K9w($U5$ zuA+o%xg=dlhWJit@a>TMSy~i$Ry5OQ8OLDp#b}J6X+|{T7!4~j{4PioPYM8545L`e zV3Y#X)~C9WMS8jyO7SSVhvL%m-ovPJ3f|TvRkV_eKQ;%95}0|m2PM@3s~2~UKDuMn zk&rt$A*cee5BZ?`?xF?y>LmaNkoKTW012dlSQ>&oqB2Y`?|L7w2q6lnQy?~}(JKJ` z`;&G7{q6;rAYdRB82*r}hh>`BLBTRj|6+#!TR#EA{6}Dz%P0fo^$*WK9Ugvf4a&yt zxC5zgAKD2b@cOl*P#Z=^dlX5y!`}?mXSkE#o_($r(RFBM<6;hTmPtC1DTq?78j8dt z!a9rVbw}}JUu)2oL@vtZu)3w}3{!cw7*!fMQ(egIoSubzGAGDF}oEA`F)%@=p3YK@qXNt<`u2v zF5B9{B#}z^TK$1vCMY5XIj<#elFbHvoVt=NzHTh+eJ(j~&e zH?g=l&EYgA$YvTtR#qfMLZ&5{3quKJOb|tiz!a81!&Ma$7qMUe+Kx`n={Js{pNH4c zj0l(_vH#%q<#!QpY&$T!md~I%D1_$_`@q;0Kr>iVlyHKfnAaA!171;(zq%8M`zIrR z-uVPNUdB5?8xoi~ACC3|L+hjU_7>`)K%D{6X?%R_DvbXbKK@95aA6Ihv)-*MA<@4j zlk0RXAiuQyF*9a;ZX##myo#s=?Xd}jgTcI0>-UtC(aYJ^Vk>pIZlEaH2S zpp{AwFWk}}TwH!{4_XjT-5uRnnS^0bbe`EnJ4-PNhe_qOe>kRSNVVTOPd9NmU3w%79r^IeT>yQy}2`YX+ znX|F!n2Bx;3U#sv%`>UCqvC3})3S%Nq_kcL22!X2d%>EF_>yr;!6RF`WI7Z{wk=pG zK-seGV!}UwcAGLZZxuO94XnE0$XH3$V)b}2XD>`;ZE0(ta~2|ODkN3SX>T$gAfh%k zVRgy^M*D*>K7-4FdWbd5G8pEDMjj_ol)gcD|EppdTBHzj>EQ{akYebmLa2ZA;j~ez z8twwAGbHzbItEv>lN(0l&ADsm;V5lm<+s0?sK^n5D0BLA*#c}<>C;HPf zE2^x9uKWAX}-s&}D_d5Z!bT?Sb!rT#{SYfqXT*d<7?H z{rF8NAsFonKzaf3O}H_P?A!Bl2r8LiT8J{Gw7F5{QUR$|iIa@N$wga)u!)v+nf;g_ zBf5Mv5>J`hfk=Z4D{_UG165x(P_8yJC6`SlQmWAKsDY5ACFNS(TFF;JR5KsP!YSOO zBuwop(PbSembcM49=EIUXs*waX*cD!mdzbg$0 zC(?`}nMv?$Nsg2uYk-?2oT6EQB{@N06^Vh6jKf)qd4_7vbH)Pn&2oI!1Xc7AmJ^^f( z=T)&9;0-O_&5>e39)!&?DvL{jRHp1;n}e{gAvD+Fnxa&1pDcQVn6=xsngiZc(OdS% zWm_Q|2ulv&xJ3PNF;Q?(bXpV=1ZD9>Bi3dvzv^3Wg=YpYs<}*;vVy^@eR#2Gaj&uEN{glI%3)hMWg>$ClyY&a z%xx8vtvtOVgTd1jA%J=!OPP6sqRfPu5Fu$M@gRR8nR(zdQaD2?8~~gKd^5(>OsFuS zt2VoTG=J4#6u`(#V7%yuFXPzOl{P+fspscmN~Uq;$Hx|-*#>-AV;4wf0P$2%*bYG! z!p1~1;IOgXc7vY|zBKp+D{ue&*FkSLFlLZVgobZ$M$f>!&X0jozI^Ee*w+NxILbCa zX#f>mX?6#J{i69mvw!`@tD78?)EEqXg(Tq8B8+Ldjv~P8;IPa=b2gNKksY7k^BaKD z9BZ}(I#jG44)lw~TFDp4wo4&!BP|s%C(4ad#m{D=klYM=Dz#wJYz?AWLjG zX$nWBhNB_n)v_-c@a4@gtPMs1^s0^&WZz;Y4<={$U@3~*ptpgp_wtO;>hZ~LHEv44 zC~FvG;nm{8AW@4IDvA#$?J=8DR3$E%(CU2G&PKVkood&^gMlai%X=K28%m8V*Gfpe zI`+??u|n+?<_kjOjL|O*_*pSp?;J8XS}S$@bvzlUq@qsdm9T8$;{sHXLMEhaPeP;X zd04b3YJ;%KPs;rO!<8lhkjp%JX1Mb{NUE+;`{1sCxi8yCSD%cYTs4d^aI68S1j;F3 zz;t=`6zkdl>TkjDz6yTFKaec=9ed`Wh`VN%jqq#7@Ze);(?CCuK7)26BkY3iZ{UP) zGu-;o^_{To^O_Vea9KULrJHStwJ6B^QO-ct!ceZ3gU2wuti{(Sc!@xk;IfL)?$vBn zF9;3`a>^eJSaU?aT$1fR51H43zLMKQ!CKzWs4bX4)S~57u*AnRL3WUD*+Mo?K1ya} z=O7330UAo1^nhAAG>7@)h`vTAKSzhX5`%rR z2GO@WuLG}e@9R5%h_bpXzS4uU`t2|BX2ZJ=mmbaP^JkV%fI=rqy1_BR48qr5`xfl( zGqo`sK;OrD9$&v(a8#o?RgJm2Ec1mnMw6yOlsDtgD6v|L^+($FJfkL{i^OJj%5hnV zky$O6bOk#^xZ3Ng15dcolbwA(6D(#)-fn3pV;;$wG+Bgb9CMo0Xd>4x<=Xj9UBX}^ zUxn$ZZB@yZ^Ma|L%9jiNR!6g@&8}?8sRH%OUd@zkHa~C+l6>3lk)x7g^`<-as9Xxz z-Au9JYV_PbqR)m+rmWSH>!uub#p$nys8Xu#Z#D^+R3LqEFJTW`^ZjbO<15Fxdb24+ zeC~9!kSr8Ry=>j3$+_e&)5iF^N*hO-aWiK|o-#>-<4v+8hTLMaNU$;wLu*-1Rs_`(54N{ z10)CxN6dc{!A^z_6FX?&2u_9wPhhkLyh;4O>3`U?nR$hO`EP#b1U&t%{5NYQU%sk(n^G)gi0$$M9g-&!g~rK(0co#5bceWn7S{Vw?y(GyE&9mq@LRX zQplWU(#(|@9uCv*oK*h)O-!gXzhRR2zi4TMe=37yPBO!1=8_xm9E)?lr!ZGyg(|Tg0FYLb43U3zAuY z$}^C3NuGhCAB|(6N(S6cS`sEjK478KvLU^(cBLUD0HM~(#XWKmMgPpvsLnyNCDcGndBqU;y_q@T3g} zBMDP!AyY9SGCny1e)Z_e?D*~jW9M*tj&40cQ;a9%OJhZVu3{LR44w=y#UPxd*Sp-t zcE$nk{R8~>H|=_9PvGq?h$C(?zHa59pI!it5L&fh2JY=EpfnC?5*&tm-awViU5|F? z7v2R)d=x0$z6jWc5#dXVFcJ?IzIOoO#ve6>1g2qF`Xp_*;+0MQJjifDtcf^spDsMt zam&BLUEok--HgD+tx`2?ryXRzRZXy=hSdQ)uUcl{>c}p3U?a$^7`L!&tXA&RjdVAV z6qKN?4Q0c;+z_%H7x87yTB6kqg-Xzi>?y=JkDOKUu2$}J$aVuz#!gGBKE4i%F+YM?~=8a8n-cyxW_J*d{(w@ z?mZ*yd~SEa=;mko^=rtDUAzqdHdtf^lY3f++W=;39(x-!!^ijD2d*ScLcR%ihQ9M% zsGb2=16(1%sv%tut~qcgN4HL+iFS7$Zyzn(7%kiy9-MTV0mtmtF$07vb`rpZ@^Y}V zBL|ny9bWrxL`PfQ6p*SPxH63z^>4igLk>qf@9I|%kM{1~{!alakmIkx7-yqi1AZ68 zE>N3CA@BTkxSx%Cz?hqaHid72E#NkVJ9v37Xi{E)_n`S6VSOJ=*n{@$8&KAP3jKBh zBPQ|`=x!vDP#FfRBMP+Pb^r<~nuKPsrY8~7o;pl5nKc_IkbScfLCeY1rxoi>9ZS}cA*=p535N&xOS|za)9_Q@;OKSfEUd*pcv9gYBAKYR8-tT+w9Mk+Ky9&QACo4!+J*Fj|YX zxM&3wfiZWI4#gUBCzx?Cm>I9w;*6T%a2^vqVP6oUdZ}Kq^qPZKKC0F&4Bs==E4Fkj z<%}1wZowCo!#NThvU=IxFxNr^&cIC69OVj>GNx7~TP{{C5}!#rnQ9tZ`H5040^^C) zfZ5fzbea^Csc~{H-+Kmo<$2@Z00ofo0VBXp0^_ZJG6N~6=L8%iZiLhy-UYHLbebU0 zpn(>*udG35nnGiQ7f&qBgHp^q0L}2ypa&2%?qFR2%_3|E&A_-+efFc}GmAe5e#>?M z|BnFtzKM$la!4@Ia;4E`2JSHqlE8x3`lkZr{f$B}_d)}AfNl2B?6R6NWDSXqeCHH)9m3@S-m->GqZ zYY_7E{d!4AnZxaJBw3-e=0T$@_L5}PQmP z3Q)ejfSRNhPk>(lDN^ITiRk1+kQk~$&;|&^Lsb8S5aq^B(B3+}(lljAsOaxq)DK)n zf-<+?gY^ORyTXnkJTYuIXk0TB8;)A3V5I6V@ogsY{|iqxZT{0&>@UkdXu;Esf4?)=y}+g9IX!YK%#|VB%0nc=A5XV*?02$AZnTuzU(J z!BilF`E1(MAX1FAlTwwKAVzv37i{^kHlK9)lg&suoX3e2tfM8T#cFC`4#LVu8*ZOw z4@rSoDOHX_@}v`@Ox~E?BMmZ2yIFDIjzX#nUTWyPgwmMq)$Ry?gr)#|O;e4Yjwjh) z&hYXhq@gsqv_||s4fPoyI8P&1+}wTwTUtB^tB-NL!4RMpUa0j=79;)kp~$3)c6O!P z81w*x=|S}%Wh7jaiGEZuc2YSt*<^6vcQTljO+=6kMvx5dI~oPa_LF5TmTb$LBrmcp zIi0q(c#|yI5-`C075!V4_?Dl#{((l%`QoFVpVLZfGHqGzfsJSTJu*nfdvW7__dEC8 zbMP@6XJCUzAagRWx%<^P3-TVvKO`{pyD#0T9x-kNG96mxJT_KNI)aK7BKed^{HMkFOHc1%C_@&PU!Lv5b^# zXTb+w5B@~~-JW>HEhl82qrIsmmSdtZP6j+yqANQEIUSW_{Y<=^QnT@q)fVQC#xUDX z4V=TUqtR{mW)4AWd*{)b0A<8%D%#Cqvcr_LR;|H+R_d>{%Km929CXfF^Psg5y%~1u z8#U_Y0}AM)XTI1ey#EvdBtU*R@HQRPCS-~8xp zikG3|h$sY9hnf$aObG0M1o9}jq(m>`+6}}BeN*CihJ#+i_|kiTMM&Rr{r6DY zYoSHC_%Jn>`MJtZxp8vfn)X_`a@{egPE#N%rNfB=O#6gMgqbGWA%Ak5C=O%8nH3DB zqfB!ymmwJ8!Pu1KPx`XCS+pcaw8o%U_BG*vQt8yvTyU6jc7as~JQavhqp`vok`N3P zCIN3SF=2CyR!3Winen1N3px@`KD6MwVVzT=kxn6?JLZveeki&65$l0K0-!qMS`z>b zvJST%$4b0L^vYjFKk_(j>j2L>fVjY93LOJQbSw{l^3?!&gx&)CX`~VMz8z*8=iVW& z10U56tQFFH@iI33fc|!%1p4B&jWZzJQ-A@X`8-9ma3}5D0lb3&sUP_q^`uDO>@I*n zh{sLvZ;{n2WKTq~_T>o_!v|D9XzLRIN>2(-togUd#b1AXCz(N>eES?Y_>YmaeWx==`!xijzSF6}==ATA z+bJ6b{TK@WQka*DMzT()i@fg4=i4u@6O8v&c>1A>ew`%M&ra<_2XEu-ix?by`}6%_XW#pir#%5}|pb8^;9d+#Bzd_1LIf zR+}+RnIt9-Xsm>i#kvt`l^Rhs=~i@^jVqajn@u;QA?I!Oys4Z}Df+99t|FNZ(LKr- zyq;paiU}7ht{Riw&3>w(E9PX%)S^zuKoY&PVk^;!a@{Q34f`!`NKFXIe&TDnCigGM zFTDa&iC?U$(>vFhMhfcH-B@7&7oP$*>!2f{C11>IYk8IRgD(9u0_ijcG@s!<0JjEk-HgaUGICUP2&aK(ZqqzqO95zoW=d61L*F2CO^_!*y5lKg@fKQpo{Gc3qUAZ3W$pSV<1 z41MFmW6N6~qX@ty{3ZF{nd`7!w?(1J!19r|aGj~V2`Pl%cz5gb8yhb@2NC#D*Afz=9dm_y?BCx1prV_0^K0E`}!B!0JI#y z#ts-MzcA+}X2X})Pk@1nzX*-D^?(2ChxRlOhXB}qzGvs*&GWBfz8ebifq_|5|LMR< zPp3BMnziNOS2nM|y?N%F2g48)eyy^O0{*HxswxVs1@&6OY z0hMlDdghKC0L(4V9^HAA%2MFyRmj~uOeU*uzDVT$UOP#q0G|Au=$L`ck5In+ID!@d zNQ``7odGb8@be!d2f&j0;^SMlPA$*8N*+A$*&5w>0mer+ma{F_$rxY4Y#5_lUA1=N za6Pvlg{pw~tYhA4&(`Jl(Jfe>JcCnPUV9%d3q(NU{R`VK10=)d5^Q}K5?{g{v-1ux zDaSL(AF&$yEhs0(exc!5p`>Y_6h9bEuudSR6G zDf}oPIz5w|6&v(=b%T?9zHGEs5BR3#)}Zb%`yyjzO=ny6YT0>VkSwtNa@_6mE3K*J z8HIXWj+Ml+iCL>YGmCu9F6>(k<1b(5oofXoZ0q6&=tJ!U0+K7~5}kix`@mDc2)5ri zi0=hZ*C4U?A~4i%5FvzT_VF1+_r~dqs7A>I6*~JsYwaBmz*~r6?Ubg#&}_?9o^(~I z9W@54F#@%9&=$Y6V{|7d*ZCP263FhwT;GVP`1r z$t%93KQ!;;Ck~~rdJ9U<9g}MgZ&Zfv9@NdIl~hZ0>7jTt;}v;*+KzPxJ%8ME3kj!x zCilCSbfa10S4#Una7iU(v;$WW)92 z;6RfU`Pl(%fba;t$mm^=)f%jm^{cio>(e)|vBJ}ttcSL{h;Y!g$Jds})|V$qiyb%= zsEy0>FVXWN?(QKCiz`BNe?1mP|##d_r&m?M1rZKJy1;(5<7-d=Z@y*F$@% zPyX+Z^*U|h}D=3dL~7=&9&wCyQ5;HNq%x+-R+KS<46 z6(QMj6vDxnD>a_DN2XM(27P%(o|q-26IhJ1iGD?&$9j!HFgcr+=EE@K8J5dYtxz*+ z;kMs0nvt2DhQ>gFjn%Wz)e0583pFjzt+J0Xq7z3c)vikY5?dQZL*8DhI_m#vH22$# zWvVWOE&`FGB05;4$8h_`(ajsMk|46xNQz&C#VR1^3X1~N_K%=t20{|zr8J01h(nml z4wQYUQ&70B-eWI)2OwEjP!^-Wz<<$m!&}hz`r@9jKLfQXEgwJuur*bQ1OR|rVYiXd zPB4@G|G(N(-}7+)XaD@K|NbZcRtDNId6%#8m(Zzkv7u25nS|x@*KU3PSGWltsa|_dI`%P?)8cuvy-mHX2o2q;GA~~ zd{(jYA*RDLFjQMe$LDUI4^FbmFqdcL6iAzTEI&5_lcAQKY7wY*mnCUFoi(P(XaTaW z{$4ZhGslZ2rw1y9REIPDsEVfW<``Le4@OK8eW6DOmGV#=PQ0_Rqh=Vz*hEaaBv<|} zU2GV{V=NYWTBZYvQp({gVG><5nV(SK@;4-c7s!{ck&T*62ZZ9w9-58w&hftO&qq?XcRnJWj-k(LKc3 z?bP5HqT%+kXlO$fp4osi)Iq4$oF@K7cFTE%rrCkI{xc5|l3NunJ2x3NirFMUaG2Jw zDs8;-!{_gR+}>-4$d5ac!Yr6zcvh15QIc)Q4p(KW7P7v8Pp!>UVNvbNxnR%iBxlf< zAGJJ#QQYNdtJO}8Pc(YPtUTal&@sBrsJGcn&PNT2FUi8xN_1GuBe&DzNHwAsqhdat zamc*G=juc}Tve+3!m)f-i4H7Y)D6*e&8wxb;PO;+MMv7b$i)nk^)lV+G^396QYx>d zSl6g-MRUpNSICRsW^UiPW?x9f-SKn%v{s){K_P@(y{)grg{Tp>oq912dl+6r1olUZ z`XnKHk)7n(r|>=T8M2jIDbhh==fmeQ@p1ZIM+vf9^kQcaLgRXxD zfL7A=c|70sih+g-u1zemXtcOy%02e`xJG6e^eIxVWYm-5wAJ=BDnX~LS)-=WD`N6B zRS&D}up!1vpwABDTC`rAx_tglMkz(PiJ?`pJ*GRF_?mn!HJPVM9?sPces*7?o!H)8wqOaE0%5vIhwI(t5Xk>AtaI+cLf*vM4&lL@CY9THrtyH7y8D#Ej zq5Mlo`TuI?8d5Ge3eel1zW&SG*N^@2GdTLduV^I#XAK|>L_Pb+fsM1^O8=g8nXWxe zUkqO&=v@CE!G^E}27vL~d-{5y znUA$%<8Z1Fw=zAiUS_l0Fb*m8cHD}`qH(n!F`MPIXEZES+y%B6kSEotGsrs2VuV@D z!gHzAjq~$yyH_sPOpk6BA~S<43#^tvV=Oz%q@0tMFO!u7U#QY3nVj3}Y>Od5uXuef zJrSBQJu^_R`6i=bqn|3eorb?t$*P5r`87IOxJ=&~>bt6OsiL4AtdQeDmkKV{`^}M) z6NSJ1+r882bl+@TZ<=+>+*j>dS`Y5jyyOww?!EQlsN1x9dn@g3wR?!Vt-LyY_&5}!)N#-!CIhLkG7-vQm7hVv_;8sC~d8q%{kl| zM#;F@_9UxMvQo04Ha!`EZ|MWJ*HqMgis|>0j5phdbVeD&Z%$V-n(O-bqP18Ui(og^ zA3F71Z6f9cc`%W)qpW`p_2ddScBowPzUIZdT_@@gNB~xNp&j~g=a7}!8g+Q3ST6QV zRCfYdY?Tq|;L8d^pg$PhZfgbhLR^KQxYy56ngIk=Xe)t?Yyld+dJ*H6M7rX@E4z{+ z6$^rhE9PeYR8ssmfA`QH89DK{BmnUd$j3V;zH#I^Y;owy|KNkL-=9<*(}c<8llh!h zOqU_kU-p=xY|~!|w0sSTnRmUJ_K0x|Tft(;JJ!^2GcY&X<}_F;$Cwo3kMYUw*cFy0 z{qU&d_O~3BXnGVidpVyom`F}|Q<)VMl$Fq1srPfqc&hGIr-P6-OQ$qFX>0{s!DDv8O=!ck$J&tKj>+53yiu)yX1u^$J;Cv3Y;;F%p_@Jpt;zeKaJ5 z51$0}b{`qaeEz~36g^V_c;1;-mR2k1ND zI2w+&YzitwNMC~y03_?!Edorue<3v=8QsoK#8LkLo<0BOpZ{w4um1U8{?{LU+k5}- z`TMQ6gQ!vdH$W3(0!`4_&PPzPlfM=%nZB~iBX}dmI^a07`NE~mqwx7Xi%C0>oj-pW zIRbzG`+w`+3y@GcrC@Ou9bqiY?V68~19!T(8s!b}IR9DC4g1ZBr|%0`Dm6PUvDlYJm5Tdx3=zj}L~qc{`!D#I{3k za*3fL3>qCXRu8eAd_i=0nmVtw-DYzb_5{^g-zzCnRxh&2L>!Ipp`Y(37Cz1Dj{`-q zIvwXbt=fYHBq)OmPDW%@%pQ?M2+%D)ieI8PeE2e8WO6Tmbb(gQ;8>Ei03Ag-`t{oR ztxIn#kADPp4cz{qsL_Kr4jkBg;Th5dv}Zb(5COe;0d2PJmtKQE6A3xIKl&vnpC%gi zpfX=U1i3JUsE5NJy{Q|r7@tb6% z5(1@g0{cqnuKz>ep*`~_E8tc9oFS{v>dfr}krc3XT@4c0cm{D_#(8g^d2xC8s?Ej! zR^YaK!PpDEAZcZxsk(w+z}O?va+YU;&oN;#(`JiHv1Tl9_{)x1W-tk~3i@!8mNFA_ zp$-zkky6bX1)b?ktFf_eiZMs9B{idZGF5M;qNzcj@w-Z{*{B*D#m8AsMrziTj+@B@ zicvw8fn;#G`qWaje%>E*@#UE(F$%l8J(tq#)I!lkCcvk8)2$TzspudS@HCsFQAp{> zMu9+fnqA1|Se~TKh(oL8-C2Ks7U0UmMRDFMa_WMaF_x+DrFKX$29c`Hq)XXGLo<^s z$Z>5o7il#AG>lDeu4_&yCRu-00aLDidH!W`ToiwG>BGrImMdk=VEAi z>(W7hDm46m0~0cg2B1R^=c)aeyt#b~GdaiYS`l==8_$p%ZvDgWp!ImK%n!!>B;!a= z=Ha@VtJJk%B|c^rChU_Kt>%e{aJQ4Y*-5f(!Mmhh(Gs3yzTtE9)pjP>P)nm37tsqX zz9XvMWG;rYCu=Tb8{6%bCeID<&Hny84=l znJzQc$4*yigcrd?T$xpTY+elnLtfRFX{2GkIODaj;>eeST2c@P4>t4PzVS5hkCnRJ zu9S&jr5>K354{XJ=GNPXw%>RLV9bz5x$#!8UU?9a6&KY%e z1g0qVBebRd)u2E0uYC{gF_HBfobW}Bv+FlS=Etu^j9YAfDzroit=c}ZZ(hs%W!b(M z(X@!ru%fkjSYy1?VW%`mROg{;b1|4i5(U#0=?@Y$HS8AP-Ow%dnhR;@9M$U1e7;ji z=iyy4@dmSI-(U4cbTKjtCjI_#ZW!{Gj0(2^rrfXOr;$uf^d+r^$K&!dpwHHOeWl$k z6&HgNGp@UuY{NI`DXD1@f-s$!QPHD)f2^a6)nVJm_vKWg)*8-Zm7Z0xxQG>uxwWbq zZb=K%YPv-!(rK4{W|A+~ovGZIf}W02aJk{vTJBF9&UrTznC|+onMCiGqX^Xd z?Ssd^8bxaad&I3llugeNT?bG$P(?vu@1^I6G6l(?7vCT|r?+0CpGkLE7#(w)C;6mihI0pkhKb(Cqn!?i|5)@{5JqS;-CoJc7pB)Y7Ll4Wy{}1C{Q0)q6 z*Xh#(K(RiB6I^k+Fhqkh{diU2vFH-r8E&8rrU!I)w6yN5(hsG>F<;gUaIUPXj=g$+ z&PKVAQa7b>FVt!{B6+PLR%_8<+dXbFe7%^QhN`(rTpY;}WNEkMlT2gc@I;He0H^Cn zGg|N~Fyd_vxJi6bF|A-l(c{gs2>pptOR3N2!-nMV38Pua?_gSiT&*;Awix&gV{X=* zIjn^qYz8Ye4s5b zK9_Tp8>M1FR`BFU0lposXs(6+J-ItbIFcfU%qwoberofbPe2o;HP7<+We5`4@%jm= z>gis<4lH6*iCTx6{?YP+c>jEU3;jhxZhhtE@*w1jF7FPkeM_6lf<7et&;Wsd=@Yk3 z{+=NB*H8c7S8=P6QQ70?&`!sFML(b38dxKsnd-Kua9z-_SiK2+tiKZObpM~-^YFj> ztN-@X|M|zr?K>D5no16@bEfJ|&=~F}O*jZE`A`#V)S@ot zn^k9`+X;lzg1g;;JX>9Nw@kCd6eEE^4=ne3qwZ@C`~LYjz!xi}L}+AqnL;aAs1>5) zRIaU-+1f%8oKc^ZWTP=3+|0o(W+iUmlIHP@#16W7XHK@*8f(pbja;InEJjQhEcbB8 zayY%UM1)C98fw16;s>KS0Mt5e~l05pG9tPI|FV3WKV_>{a(f^`QZub zarcu)+{l8fXwU z%(Od9R%@iqYM___)0)R|2_%~0fT4_;;kn?1cHqqBr0UhbH zW~V_vdsV+;_;Yu#+BtgNh#-AGiugu{24uBsPi+9FvkxPB6UUz1y#6U>O8^akM^ErF z`&Ews69Aw=?-SUU{L!=^l*Lg9Jou>3bRew6wIWWq7B8HERM!lL(*9&<(JQbap%WWd zT!o=$7-hzQ5LzSArAcPD;~koQ*^?Avl~6h$DlvDCZzLnp99Noq3ejFbt4ZN3^!Tz} zrN;F$YQO4Awo_cZ9}_|x(715Al8N~w?5xc0e4sPlMY7^H{Rwwyk|_=%gL%g{EG%+n zyP9NTlVVt|d4V=4W_K29Eppa_MF%iSc@0~hn=}MK{mH4?-mFN{+AFtcIKZ?9Bb>X- zynSS<31Y3M&(e(##Sv&7wnldBsCLC34e19}F_*Xra?jCR-sp_*U;_ zV{gBvG8cDJI3aw3mjN7D+|RmG$?Wp%;T0Hmw@^Ry@4^W6|JB|MA=EL)MEf6@UV=Im zCPg1veKgsft)w|naFSLR8E>&mQyTt6S@8H3Xw!ZR2-shQ7ns^;QM8(gnRiquq-!mw zruYmt%od!w;#C#iE%H^aUl=-_Va0^C;-KKm2c3nXIagafHPu|WG|^v8igkV%h?hq_ zDW^EAjj-4cXvK`ex+HyU!nCgtGCZS5G1YN*2kErAkmr?N$3Jp~uytxgT4InLiQQmd zZfS+Qpp}zlhug?}ScX0UcS4@!$R&9i5|u%(?3>qyfEN z58>8$=+Ej4-mM$>T?zZ$tK6wg&1}`rm86Jd=8_)EEu{=!%{kPP+H77n3;98z!y8FU z4}-n$=ZmpMv!n7%CR-Rs#vM(ZiCU;L5wju2Q`W-mU~MM$RVg~@FDlvaB2{#1EHmi) zB`a&1z=daNS9zhhJi)N4W%}twT-2+EOB_XPo>+6h1R|7@XSJ%HnR{ApsF8(Y`;)zelGL4xBTSbpvO9EoTMBo|`pr$wkt?lUb z$6P(?S^yZRJ(0FBSwv`b(2IWWGkml4_EUHqDUUY1D8mUE2J+_nNF52yd7Hujlwbb&MjPGW-MIKR7~fok&mZehT#o&YYCon{N}R$Sqi*V#9{_o zQIS>}?GzOG9-wS$B9!%OoRBCKmF_4ZXc!vp_neBBZZ)b*J2;8N$KH@pi7EE=4I1I6r2ulc5KNfo+2H`j^yg=8S9ndNze9eDjcjh~le z&3=}34~%$_4U7Z2T#^G^DahoE0Q}l(MWf&J_Ipt)7N7M^%$qW7-6xn4aVYx)#pU~& zA=3L8(eyg+v`k5R^(`3NL*?%ZaDa_h9>X;Tys&ZhI7|reJxF)J8OS~g8iKa>hdqL^ zjs^a?FK|{Hz9&syV$XM+4*Bm}ad0jl!rDt!)yax|q|6;1EJ5kTf#`v{c>-ti-Qp33^t`! zB;HrM6JMw>_0*k(LXBx<#^Zn^!G%LGGwY622ux2)v8*wWhN-&8(O}t-q*bPkffb)* zrb#havocD&G#|A6Q=@Cebgu6jXM8!mbr(mo`vw_*<7-UdhdWF(ny=TESJpS5_=M!_ zTc42$k2irkANtMelZb)M8sW6uyt=$}3~84zp?4(w0UW;t4MD;NLmfzSdCy_<-rFu&p76u zv8XX)nC26!#VoM5cmWQ6Qq^i@`z_zR z-fp*Dqe?GbHY{P$nP-$3Q;_6AvYwwngI#Gl`qN@bFUQhf%d@#}0sa5+S}%`3vvujk z+n+)0{4^%1VX1Wc`UmKWf%s?#)-%Y!s3ssLv9|g4WrB&>-s@PaNk8_f z-?foKRFP>ss8ZYswS7ShFPini-gv!cst8J2YJf@r$~1Id#r*;_Dg=UWgWqd=V{BY| zXZhTDhz0KcmDYW61o%%7;HGT~bMYNQ7k&K5#$%^(_aUEe-Z;DJ-Pi+nSbP8$`FQAo7C`W=~(8X8Gb`G3m#2NTH-6KDir?%JI@d(JS@hLQK}ju1Y@A=~a}vBpdnU zBt0tir*UVf?}j@CgsZZS2)C#P7^yaN4r;+B6Pvn6YCK2m%P;lW1 zCJigXi|E8s!>j|yFTjS0P*a?3U)qYMq#QdeDeX#H z$Yjdt=3Sa0_b-@FpV)lm0KKZ4PhVQTLBuVQ)V4kWkN-GI4Wf>{bHz~(Y&>xof|U60 z=HrLg$dx7o?w0@>kZcS}z(EupU#R^8R7IgepV~Nji~0rO6Nov)jn6?u#AN9oKm^;N z#$Yam?By?hOw?UYyg=UzYQl&?T5JIDqO@S30Nj3F!qD>Ojb|xjyE_Q!{{Nr$Jp4C5 zi~rR6@#{bOr@vrt`NK=T&wqjS{RQZiAW`)>$D;(~pVl=R2*CLvE^%Y)<}-BBMvkK0 z0{Y|q&r3zQZZ=}BR>#WTm1w{#EEh>7D#kd{lh{hfuW34$%QZ*AMAsEeC$&Z|SaQcB zMVB}2PQ|=b~dVIx8GM?v~+7W5~j^z zHpMm25en#SSoVaaOqsb$UV@wgPt3*r{G(p)qiz>z+j{?$ih`Ge-d@1tl6_uQ^ow3D zAi4yM#2yWuw=0FWDbmK^^$?m#+L8 zG7GjucmYi@dp9qg16k$vjjJ$VBYUXlFK<720^e*N`2@4+p@QvZ0~Ufiqavq+CpcR>XU3RK;r>FTM`1w(Td6 zY@E7z|HJxTSXD$(d3dXZ3i0G1*d9Bx1;11dmKt+MD$13bSv~Iz24e+hDmyF<+4|hT z8W>`#npg5H!c2BFOctZnMW-3oi;bQYRb?ond3~{PW1JYZbIn+$T!Fm51)biZvocGE zN1>t>%6H5_QE2;oC5NKJo7V~^;YaI8mi(o1$EY=#bS>wyl0sMw4=T-mNi5`;Q6ejj z*g*jQcJ9)Jy>H7c^_kyz@6FA(UxR@qSqZQF0oR_?ewUsDon_;(r`C23B72uz1Q;6V z@Mc;)2t|UB;GSi@ z^9d92=d?!-(7=7!t#|9^tsKq-+`Pdo?9L~ zzr2n*5teJuBVtKLzWMTgAieOVz|$n7+DHLndQ}@9#ci<;4gigBm#rjaQ>|Gd;70-% zfbDZcab$Nfxn9U3z8^(=TO_`BKeZa0h9NV6Uszi|apE@{M{OqfM;|XQ-ds%wz55#Q z3VL3MXCm=>{>81UM6mL~Cv9g-2{c{RjK#I}nJ4e>6b)H)wnrmZLSd)PXtbEuXIxob zj9jc`hCyQFS-0VxCFHuREvkH#iCR&nn{p;F5Kt4idD!IS$zYb9^gI=XnQx;_C{|Vtpy@S z1>zVA5kL<#Q|~7e!zTdIK81>mG%|o`JbmcFhjlfh$#Kn}%bD?Vz3j_P#%$N$;=@rR zHP23%Mz-JdIJzFkY|4l{6RG)Bw&>OuL#~-j=W-1;7tqV)R64{cD%V+r8%bwHuVrIC z-7SiZs#ENC8jfHkFq&68&R``mZj`mWB32Ev7mc&w$|4!Cs_lrUKbIh=nj1Tl1)tUE zD_TeLTd9dA#YU5UqZafGYNg2{R4&cxvD*ADCH8%*MRw98y~f+Gz)+b;^)d)z&E!KLI(`ie>?g2D1v&8NcZ3%i~t|L zLF8JG0#P~yfC}i>8g&7qqc9|0KVv(U+wC>dg1`VJ&D59%hBS}e{1>q87q`#d0ttbH z9(p2=A6Y&F4XIVFL4O^(|NrlM9uEHO*`NOY#~=OZzki>%vOk>LxBM4aXMg+99?LFB z(P!Ft{sb_1Iz@nH?LpVx_p?J#Gm@~{%5ay0R+ilFwhQbva6El zjsodvw3k%tTu};nCW~IbBSa&H&y$R#hT(Lg*o)6G1D+5RU2_`lk!)}?c~SQ@e91%; zdd{-PpDeVET*P9BMYdHC7AZ#}k4=zgTFk}!)5XXdRdhG>>)@$Y&-w}(A5tBDbxL$K?w7F||4*=6 z`z`m^*hZcBfHY&z9w4Jxc9Vbi!K4X$^XOi*`qBO0Nq*SS?YOXi3$6ZpQdaXW!>`1> z@$oJ}gZ{uRr2P42E>)M|l{?B8+wnlN)ASZnuK2|8dbvT?kxV3Atzv#&>L}AjH_*dK zUuO_)glFbVmK!N9Rj()Io`ZKpgL9uF?u!MzYAWrqgbqIza?vr{^ZPSit7-(6zYt63v{66lDy6Kx=#KG%*$+4xYOy#C=6C^w(`nT7PZVv?U;|LdYs7}Wc(_^~ z#6s#L{cYiE={Se=M z3jOUfSGP|cCAj=KP*l#4sDrA;rJIgF6(s*LSg*HI)6O;p`*(#BS=C>@2wMLdWs2Zu z%0gM5cnMv9dkz7;fFrkW-a<*bZ*>sG39f!XT3J-W6nuhf7YG`5Y#pcqI#YDjCQVf` zujh25^91dv)p_g=<9Qy>kxtvP>mAQ7q*usAbgUf8x6O#@ zh}NQYtDG>j_;jid*?!qkpR>hry{yN%G&`H5mBuWsI;QbVTL2epWVFMqtVW|Lx#xr3 zV7(ZgWRyXXEhnnEE*G@|F46RNr;WN$YzCc*q6(gj18I7~Bzsw&>oC*!tmJ0cygu*d zgRy!?kGNzuIoG@f3J6mf=i~>}JhxGBSHz6U3*3}6K z)IdAtpW8ljX>IfDXAnZit89kNN7$<)*%Jcm+^VE&opPs`4wE2e@cgOQOTcRaNgkOh0P3CJ3LcEgL zUGILy*2kZ~40QSW$EZ`jd92?H_PSR|(v-3lXQ|ll)k=*{)mv)IbLVgtnLBEoT(gi) z$Ld_Q!wl7~<_%0nVylsrrBEt1PKM2NZ^87Fp-!?EmpOrTWwJ%ivrr~xFCTX*qq5i4 z*4**nyy#^$$*a3(IaL{?)kG1HZZKpj%FL{pWg}IcO=i3i?O5!z?IRM>oR!qoqMWf~oH&8{_9jvd~6xIH@%lT#=VU`pm-Z4zI9g^&xCVik) zsf%DVtA*#D`H0V_jj%VGANx{GXQ!F7%%TzIl&({7H*@J?LM$}VniH}vSEJXp%8{zl z5%P|3*)>i0MxxI-%+|cqLbE-EW)*}_b4P?5&S?{V~>*|3oyMt zy-dFzq0(SLOHedZ;kXB1rX~l>)UPMu&XZKDy6&q@FpbA{DnS?5^i-#Yo@zy_g=%DBaGuBG=-bc4=H=@=U(V)r$oqHkf;LkJ%Uo{D#By_-n0cYczNE zD(=?IQHV*tcGD{booY_O5 zSzKr^j`B{5zY0KoxFxfxOfWg@FPM+E(^{ z@-0TdZt%eethX16qeGN%;m6qbAU8^b0lq8A(fM#ND$W?yz3}zLfFwl+te%N?+KYV=A<*4=mTJ-wxcW~y6m z%@{7>cbKt0pQ?uCKu*)*1vz4Jvq@#*O2m!Ch^Z%Cfp#&Mo+$~LbM%C4B$p9FVJ?}= zgp@qny-TC&z6C6e%H03a@$6;jOYi;9dkLBP<9FaEiCr340CalkqN zZ`ZGG>ZsiXep!^(^c~2^*Ov?O2Oq;`DQ#3VaZnoOYGn`GiIf_#c5yK7^+xWd(yP`i zp+43M?1X7*LrX5S{QgQ=b4@z|fou5E>@>kJM(_Ac-=r$CG>MTT>9e2>Vkk}lbPxg(Zqp!5atYao*n<87B z`l3k0Cd@Ch?#$N`zwTQMuP&Y4x+hl;T&9zUNLTdK6?v}J2ifiz-W&8`JipTFr?1*N zhe&@O^2?ac290Fnsh2>QK|~}w^;CO2ByacH_04k!wl3b>cmX`@_xE8lwec!?TqMzA z>$P$8Ja$~*+H9Zuc>9$%@Pe&NH{eMEjTy8()}Xw!lV~9?!xF1?GGr|U2KBmktbZwR z|K{%>+LO0S26QL@uu-c5at^yz6QF9PlAo>t|APi+T8|HTwOZ08u0I;cRZloo>$>@D zGThciDoTp#ILhUVqF?gFMwOgH^pqV|HUrDcZqQd;@Pk;%o6v%zLM4*K7@^0KgWibL zaMo*iuNE?9jY2nFo>!WSo{^Qj(QYS~FBI#|?r1zVJytUOT_#unuE>gzIw3v(OCP}j z?2gfd-MQZaPw=g`w=TXz+U=JxS9Osr=eyU|gQr*PJrxlA6fsJGuG`n&CS0l~uhX|9 zL1Jqi?IT{nH;|Q&BP@}L@%dEZfAihf_u-BpgaO-xki6pXD_iHT;!YuS8j!?niA-7% P*pRD}gH6<30`>m|Ta!Eo literal 0 HcmV?d00001 diff --git a/resources/db/uni_rss.db b/resources/db/uni_rss.db new file mode 100644 index 0000000000000000000000000000000000000000..03cea570e40da0fe1fee36fb17265ffb1fe2ef1a GIT binary patch literal 57344 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 literal 0 HcmV?d00001 diff --git a/resources/db/web.db b/resources/db/web.db new file mode 100644 index 0000000000000000000000000000000000000000..6aa5bbdd52e6140e84e6056aed58237e3d15840a GIT binary patch literal 188416 zcmeFa2~=F^l_nV41rnk%)3%(>l>IW(xs?RO#v-{~E`*c_Nhpy(sZ^%zbO-{76hxp1 zLP+Vh%>%KBMFs(rM#y4>ZCeDOj1(HfT<#L;7t5;sU5m)Biv7eBr&A70Mu%@OOZ zIr5RyUgOdJFXgfIYQL1;!eaTKqht;X)?fYDqIu2w-)P-W{3>GUPy8if_2I?qA7v8^ zc;YP@55#Z9E8njB-m(>IUwm=Vu@}X{%N*6^-UIw~!(+?l-+lF~e&)Jjvm$cU8*~O$ z*qmivTNw*L_}39q!5osSmabU4cI~429|;Z}usKS+;>+8Q@kjjXt7lIH`QbIqojsaR zytHJ++SgxSRDV<~x!PV_{!x|9;{mrKzfXLO0g-?CviR^!Vfcrhm||PCz0Bo4`ox)u z;3#vaVDa*`>(?*ZFL>iQQ~^izBai)%*X}H~Kk?&|$2j!FAK!A?D(xHa&bRB57p+*k zZr!5#L;RWcVxfLK+W#+p{8O~w&Ql&ouxqXY_!#4v$IEc*K9~F{-Mw!m|84T$B>#ux zf0yh}{w(=_Oa6=GKTrOjlmCb0KTe)Zevmwze3M^R|Em?N403X=p`qqQ%eumYj*5yR zx9ek@^EXo$f~T65;c?~igm2=6+EN>+pY~rkrgl%@8{hP4|Gi27E1wX13q}a*I90JN$=R5WgDdZ zj#8Ub+T!5von@YKuR|)bIsJpjrND3}zr%mIKPaD8ntPO?Cack^3|$J|YEy=;`DZ8b z8vo=mNjY&@J=+vKJ)@rJ$0I_7*xW}PhXn=Y)s+=#<_x1X)tHfGG95Oh&EYkY+Ic>3 zU6x`qAy|7MFxvzwl#|U$$FOp(-QRVCIi?J?sm&+x8}(wHZ*o#;>HE!8o6>tj?Kr8l zH>o%Jl#Az-wzIym6L_O~{H8K`My(wXTy0a&J){>;olzS4eG`q!$OX0cR^aMwrJ+G- zZuDR2^51+&uN*qAG-&(}UcCD2+B&uO4tRk_q^718iajtJ%^4|1Yl?BBWX#%R&e&u$ zX6Nx68$MhP33x5naQuZAEw5t*>b*1m$!7oUVgFE{|72rede}GlFeneIll@p0c6@Ago_^?WJ;~edn`p&rK$LpvB$lF14673-L+pK)EM)1j5V^C#+voig1Ii6KP%o?X z4Qflj(sMO<{<7p7tNnGY%ui9T*9B%rq`+*a+It!NQJXt`lXt*UW$3Ef{K$V|MCqMS zCc4zxe&uvKzVVF>swYmVm;06G5qwbK!6WtTh;pell5}F45MYR#Z|YXC_KGq#hSe&M z`jv)9U{v7K2BobbFg&UZPpQWT0)1_Gbnrrl(ta;kf5Sh07oV)&nNh~BtG&mWiRzgV zW$>JTa7H=Vj%|9Hr+BD;vIBCW_JUu;GJoGtVCWh?IWXMsztO5pbkNhUHTlLS)!qr; zY@aF*t6dL+J&j;TV73>pQBMpg%@1){NYc*SSLKK5u@0P2rKN|2r{STLVmE9sh&UWpFD%ZK`VG5<2~x|DV8Yp(^~aGE73S~37ZzYa5B&}O_DzI z03-&_%wl_aaUe=!a{WWKzR6bl;VH>BrAtQ3CW{G@9VtNd1TxAt@ zX^Y)nmG5wtK$NrdBwe8eyB`J5kH(VPjk?t4+o~NO+oX5gHs?WDpBtoIcBidGDsolY z{2ii&9oE=fyI@RX$U?R(<|HQCzwH~S`Fmap3NFBW9 zn;7tSU54_)8+~K9AY{R=Ax&XTb*T3*;q&9^tJx}d-3hP+f zQYfqyxrWA%u&4g}SCq?_rGmU&c_4-EqNWaI@T9b>s7O*z-1J|OarSU{lkVZ);Nc6(oSv1L zb=VZzGEJSIAJ$i=3`70PygaCxz|e%!ab9h|`kSd{tot`p$NhbGNFh&ORi-*{y=W^J z`Wg4O(tHkY!4*Mj>CPRcVbDL^M0?Lh?M}Kfo6nIbUb(Ma>|nZ-jyCL?(twNY zHa%hBQ&I~pPhKLBoh%_c=1tbDknA)_iy=F>L7F^}9kv6NYXi&tM41&f z%1Av~QP6V{2_P(zXF1<-$6=y2lf!VhU1NWQETNVSgbU6(>@DhC@|aYo9JN^ zha~RA2$@{M2nIj>qm%5MsBOoYvG@%(36ic{uY*nOzc!)Xy8*c-6Y61$zjYMi58`Pr zgyjh`l=k~%Y7gI6&z}e!YgDF2vB%gNXgpZ?(5!0nSV0w}w zW1a2qxexh;yeWdi`yX-aPHm}F--XP`L;s4pCZC!bOhrX1m# zzb2RA>#K4BzP=*=2wx>R3twN7Q}FdW^0)ByMR^6ju9fk{@Vp0Kp8GMr{NB6xlCTY5 zR;J_2iuL%i{QLN_EE!*xuAtof^5ok~lK(9E-z5KE$^R^QEcrHmweW9&0}C8j;J^Y0 z7C5lLfdvjMaA1K03mjPBzyb#rIIzHhuZ9DwmM?iJS*rmvB`#a?Qi4_?mAG`ti;K8y z==YKqEm^lXRL@}e>*p3Pd3|wY!N{WNge6PXE)qpFt5IM>{{ISt*^u-%s|pj=E?1U4 zzu1Z&WBgml|EHxrD|oKe2!!IF3;F+r{QpA!e^hc|#x>z6VK8d22cdP8qoC;fw#9R%2 zdLr0;lPXrbhf!pM0`(a6RT<$5-^jXj|G=<%N#;5(s%sOi2l#v{xW@KLPdpMY2|Rir ziDnAYfv6&Exq&K3RD%SD`m{2rM|W{aO1X~eZQcWtGF6M}Z&Zi``^Nn}LrU+6aH zphwcG-$lnlhLI7+LyzE!VuoTW|%F8UYCR?iP}-;P%N z)o{l*buLu1*NNr_-&j9YP>PyE+Mec%%0O#iXch%&Pi>OPC>c$gtm)V!tsg_2pkv=i z!baueNK!qmRukDXqttic10zf9s0K~+#smf$0|Upoo|GOsJg&B!LlvCb*5sSKrnKBv z+fed%0m|>`+P_#E88)?d*~@LxE?XH2(LP2M+D>fc2j!@*-GKk&YFnzk{X)vkEU89I zh9xs*N0I&-Z41GfXzN8?T0RQXJXD!>3AL>#NF(Oqd~s1MpRB-xR{G}TF)DAI=n|bd zZNBM7lo_HzpWo;kzpQr;p=6dA&o_-Iy$@F@icX@K+xTQ1q9p~l4@ASfG4lMbUJbGE z<{Ii>!};Coth9L!qOD6RbW|L+yWepg`K-3vL#2UIk=yPp@oYjTMzO1eUb6MD&4Vsw z^nDehx7o7+$FS0d`qsQk^pSa7P81i?2}KD$>I*%dlw7;hj*3H+;lE=$XqO6IrPVby zw>_4qn6pJ|?h%l1bSmhizy;MC(Sm+YZc}JZH7NqQZgeg?gOrwn`~4m44}V zm3ToKNYqy&mD@bh0j!|XE}^PXa+ONe<#wqOCtjju9JWivM-SND_$__3N5XpC_F}rY zj@oT*EV9~$%E)S3ev2k{aye)3mTbN@=}?NYcQpRs2ttY^@kf*_qF9kDyh&70ivFPHcFp!;sSop%^Cbkm>Gd#R7%$=Bh%=&i&mlvTLFp`hulAP z7FQsDGPUaT-2jnKOGKt*+_)*7BqC%Q9$T3RX?Ppb;3A!U^^!6*!5u%`bH(jgd{IC` zs1IbIU2S=Q(sfN+>o>-=3n*Gg4;p$V;?@dhhAY;0;fPn_s8&=%ls8C)YhE_POWU*NgMGoBn+bK>REe${+2D&nt?_vv^kL1Fw&^B zk18E4+Ixg9XD!anpz66BPl_y~g+!tLXaYnb4Wh6Eq7b~;9h^KLym}>Yy-~lf zmG;}}`O7Q~zL_3eFw|Ll4HfwPel)3~*7+@r%b)H@TwTj$uQh@~3BmE+rO z#RsMLpc9UIJoXBdiMzcHTS|_t+D2Mp57a;OeRin_JyzLH==Lw@<~A8ES!lJ2p(jW( z#A`y55xG{Jei-Xerb^&zJY>s-|P@+pfMQaCj%$@aSYLk_4M9bNex&t zBlrHpmDqa=_I?%iK6h{So-Lo%b{0|{e5hSuL~Da$PZSOe%Ps6Q|M50;wpP7AiG^|N zgx0zuI$YxGf(-p)$S+BiwtHb1!}zwDHb~oDwnJX*dp@*-3qS9-IX|Hm@qJ$Wke`an zqr@R)S2~=IFGvo|Sy`rd7M%8)kQ^wFGYTp}u<^J$_^Hqa6Va48-MeR+v3b<}`+yq1 zam2w=wP%*D8}yg;HPdm&W}^ce8U}i{_s$c$i(YP=Z0b~s*j@7fzq#lgL$YPf$)rHi z*3~1cm#jLH_`fIaN*GF5vU2~5Tg(6R@}DjH^JPC=+Ogy}OA7GPg?~?R;Mj`qtr90SIN2FEeiv$A;;Yy{eaqj1 z@X}3O_iQHkCML2A^3X|&eoDXa)6u7^whx6aM~VX2oQJ&VAGeE8LKWPGG)GCA#guMJ z&(eZdfHYu_4c{R`0(*K=23b?4bwk z?1+RL11J<^q_&T~Uswol67;F9r~H!_)!ugCQmDcyoEv@V@#(W5EGe&l1@xseeeg42 zE0De0bPFxw(2}I!uHFU+Kw$U`m`Y(iCwwJWm7^Gq;xL;K#`Big@p`m~6RH8ao}ne{ zTfkhb6Nc~Hs0IFk;6w~=0y!W1oVN$(ai=a@;stH%O^*Cj&i z=)I+$XjTz>Y-;yU4{=}ioT#$SVUH;|CMSL`!Qf@0D9(t^{pR!jGyTY{Ao^J7a@!Cd z2wv@kafjwz(Qk;BL)d9K<+keFf}*(*GlvaD3%*7E=6AuO1g0jtqT;Bu57=M@6c1B7 zPN9R4xm37&C%0HKyCgPktVZ7$a3F5ck-6PHH@b}Rx6ZoBx=~JB2f8vpe3Q;89hBhp zv&v|TIyxPgMrR)3qxie0m9c3YT#|xo17ylH(h@20BAFJ7J-8wt!5ILWd&Gut9<|-GT0zz^7wMe;3X+)X!XKH3JF8KhO#A z5#I#95;jVR=&+^{t)@onCX-Qq^Cgh`ibn3^?}Oz?cp`!fAcBNQ^S9QicdiPXmry>~ z2PRkfRI@tP5Ntf99Iu-TrKXMPbEnj5mEZafD1B`%l#(-ZXG%D`69^{rCT6W$iw z-*)xPRRMG|i8cLZ>hfGjHCwE4Ni}DZ`UX6K(JZff5u_$XBNeUIL+1eF61;d*>6``& z2|;G^H1>Pj!iPM}eul!bm!5)1hv1fDyY9|9Toj~d! zFsG9MDVUQ`SuB}xH_gn9K|IzX|Nb|zX>UfO1^Kh=yx_TE;mD7xXw|3a!Ua%=4Fzx# z#{obiq>is>x@o%rv@|CbXtA2&6N|j1ag*7E_>}zoH$dzXzE89`o5(QWUUMH+V4d8* z%4k8fbC9*+M(i<#<&bO=VG+O&DKm2;ZDaJy#F}D;u7eREtSadR5cL9cFdY13=$i5S z&=(^6s2)F|UKyugA8e-wGB}6>OISApkbaGI(?F!s^Nq1gKC3C7I%X09g#+6!Lw@~v zkhqRXs#PfW#~yLBcJ40`3y&%LODzZyAT0q98%O4%t~ig4FQe7my(59}*<_|A~eR zhBZr9{g;HlUistYTbK4OzPm_Sv>CtrO8?2Pr+-Z%R@V6+v9kR3M6Bw|%uuQe-5uTo zzx~}EChYV=cLxSVMQITUg_yqb?hYe1YN5MBD}K^DH)7U^Y8@cj79vOVTiD%^2C-P^ z?wB{-9jVxkh3*b9Zfc>sV`U1YVWGPtiZuLgb$4ulC@ge$U?ftgb0g->{oB;tLH_>> zhDk&6PuBd8YhFq^nY4Iy>8k&J)k}$o68>qz@2xzt;;&ciT|TgU#j^4xKgG-D)4v93 z8^m@Yy0#Eqo5yojav`D%eIW~dA@a-bAOts$`$D#Yy!qT0vIX>gefmOjK<)hN3)wuM z`a-h7qWRbt@<*WS>(v+XBT)P`>I?Zpko)!M3;7`^{hIWJ`~gUv&wU|30DbedFJ#la z>I>O8fBHhQuxVeLzK~21JMa2JGCanm$S0`)2RZ6>id3o7UgJsIXf~O$LNz-CNkv@{ zK&4U|n$c;jHH|Qe-L)B|Z9-05lVCW?1mwDHwu<-ir2<#Q(Xt8`-~{h>`-et@we`W; zF=TKsaEVX!MZw?c`F`nu38kDe|xqnn~Vss3jK zjPzO|5K%0K%wN~GZMPk^?Xw?Xv_^l=U4Py9uWQ?PI*|AQ=n>(u4G%+{ zxDRkmc$_tLf_I-}5em^*>T-K4QxAA)K5DAdUY!QCBey-xnq^7nDY0nWrrx)Pe&zUC z?6MT`D0DGu4UO|tLVjhm1doG-#{}Squzi+Xf1mc&A*t5tHIceUZThJV!HMWy8h9lrh#JeRAAB0 zPgpZFdAAmGq6rxwREN*N3MBM7E;oSRq#T>aj>YgUqi1y^oi!uiu1rdQ6HYy4(7Ptl zD(x4izOFPO(eRT(L;XkC;rG0D8eT6x8wd_5AOro~kSUbAvnukp-t@Pfh`)Uq+V-*j z>TCARv~vFkV?-H`cuMRpWvp4LYk>0b-@d}XCzf99-+7@T$gE~y3 zl_A$qXl7cguW&A@y178V6&dx5(J46V4E zX*Gj=kUz#lRj=cqP?M=n6_Wwh`6gQv=~PA>SQ3LfeZ(?>!^!kP_5tw=b_2V@H+hFf zRL?eGcreruZz;cvx$K(&q}xM$f--(aIe7x>QIBJ*!c2MV-C{ey(ssJ4y`Hye$7#Si zH8tWS`p>ih=#j9-20-$J1O{3#xV!l*j)@bviWs)+!7b`=Vj~lA?j*Aj{g2c;e*G-y z2Ch)(9BJE|5%nCsydu$HD>T&QVt2EhC2p6a#6K`e2bnPz?%eSKit_fAkDx!_bJ%P6 z*YTNe1gn&u9y%gD_i>Q{2t<6ixLvv~^UQ5!^bF(^i{}G?7jw_6gojDNtBuO#%dBd& zhf8Wpi~67=FwhLugnLsxeS!f-yJM(A;ZYqtVJGe8f3>=6VDK^IP7rS$GeY-1lLrvu!W z7z1p>aqzuc+M6e7fM*>ifdq$F^Q`cY%n-gDpa!Xx_L(Z7u5uZ!*SDd3(W#$V;ISXE z7vsTd?Frv_GdlNib%J8_((<3c5x{W}29^M&@!uZi%@=7`h8pTE!$_RyUJysx9)f`Gdg$#>Ism!T0`S4{<7?u>H4N@mPP)7^&@{ zVPf@AA9{kt3fc&ut)qoMUwPKYa_>4`Ty?a%+~wpS@%hkh_p z3($cg5Oty&E$OCzz^CfMg4Xc#O@uG;>=RVKZV80tIouy>LH_3KEqe<$gI!SQWMK*R zGBOZdiH-O81vI|Bp&u}e;JI>b0FWq3V>i%@gICYT6%dmJYbJFL^*qyzb8x^`;`JQh z2h#TTjNyTN6VtH}B=E!a$MU1_;_%C+8%e|gT6DKhT&y$L1AL=gyX>2u)gD2XT`isq zU}dH8K@cwfMyOmilW-q{P}W)i&H_X^3^WOF-PmIt0E&cT@H{pU=nZtG5!}pp z1MNi!;+RD*!N|&sP6;tCu96PWa`@kCxXiTf4-%_+Kpk@uHzcui(#L-M;yfELUZGgHDY-4ZP=dt|--sd@ zmLC|p78sT}@6Hh*B&D>VYDNlTVOAqjPjjMAOO0Doz!^$dW0RxOcj)Z|LoQRNFpB5o z8AJ!SZrQ^DDT_4q|Wi70g8lGR^vPA+Q-!hthlwLHf7CY&T|Q7~hVJLB{4orX_+N;L;*KZH`(iATNI-!ElJ_*#^*aWb}bD z+D1hz5yT)-fIUyN0iz*k4lR6RSbYyC$15sFkPKpW%b9%H5k+WZijM}v=X=%yH zvC@E^)<(*J4xS6N)FFvaA%6i->hDEjx`XN(BFUsUzT4rV(UH5ocCQ_8EwWcuRbZ@| z2Xogd=y;0}mw|!n@XzUx&m4=xOue9lhLb>u3FJ508a&@mFznzJ&=wT#%_(|ED%|_g zPDfdJ^)A<8Z1X-4XWv&9=b?IC2_8zh1qfAC#{J^81j9%C(5mvPED1SKN}O?_kyPUF z*bY?KrBbg`410S#uKR4=k{LcoFwKC@o3+Utz2xVmSFvv|G6BIev&!WY>cwGXWX%~8 z5*k35#at{`71EjKrQDr)n{y;{s?{QGv)ig94x}TZE)^AvqrhVmV>2g9FNMLdJ7C@t z^0GDBj>r*KmM?Znj(~yQ0OroX|3d9A-!eCWIS-9a*^)5lLOgKouBVO+;~ zq;{P`Rbh%NE^>%`RG~V$F2S&mS@R)^#gyirpH#b#NX6BqEcWFtuSX0|EOmIwF%~e+ zqr-m_SE6Ln8vwr;wB*Fe*c{j`l?os6et(Pd@Ih{oIEml6!?d7*iQ zIXU7?*Pt|EUqPIQgf|cmLG@y+n^@jJ;|+emkHPuGbP2Wj5z^$0jvj0fV@Po6Ox+6B zUhxmkC?`>bqMc8*YuJZTZ%v)Ss~7#lD3Kax1xNWZaYNzU;>5-wH-lD2C5}eaL%@W? z$%wA+zCj}nRx!Ce88$H7&ci{ta*zrZ@7Nqr!rvJYhBxDMDVs-?nex8tB) z#T3SycOr4>W734ri(nOv{lI_GY5M+Juu2o4ZJ3T%RBqqwIwEB|+(j;LaXIfI>bbD% zQsJ)r0?ZmY7VN!?vMp4qK+3XF^mFctADHTm4K!l~o60p}r)T1j8CJkq1kDdhQAiiX zBy(ZXK@KyHl$4ZRU5(2KMMrs5sXBO`H#5!y!^#y86f+deQIA#0Hxmpg{J`w|LJh4R zWf7R@5a%i3bA_j*Qx#}*3-?#wNH7#@Pbtio_-X~q`2s;=g3k+GEa36EGr^ma$os}2 zAS{xodw?kf!z5~Xt-Sh$1j8>PB@(qc+c1mPg&{t;GW6Nk*w^6chyGT~gcH&zs^R9~ zWSES)p+aMwQ4*VhF(lEpS$>%&47|kjJaKTT+6?6iCmty?=R|FElYiy}fcygwI-pxn z%9CpsllrI{Y0ieY$)q0^CJ$pitWot!>2nDN?Y`Y&FU2rnyBk~MIb2M$w`1>$NtbpS zCxSUA8)K9q%NuAqfTnKQ1(fn~cJ9$EHmbtwgP~O9c71Gf7PxH=s!OHHJvyW&^Xo9$ zMkFi#AG?O?y*=3y&rL+>rP5KyW>Oq-b#+S><#hkVa1E2-y}xXzHYAs>`MWiZYnCM) zTK$)+D_1A1s!RN@i9bl_Pgu3myW%faY+HVLdE&CNrISmGmW(e+UVMJh-!1w%${(s9 zcmC)0ll=TPut>AW;4WkSgcwat73>Xz!SfH*p$8aR^*~lf?n628AF~SzG&4w)hR%Tz zBpu@3K?oGSMWz_M5>=U2`H74s(85QwF=tX$t z>Crn27QK^TDC0-&bU3|7q^&#Q&XnT>W5%^z;Bn6i2>Ff)!)K~`~G#Wd%;%^2z(5QJfL z3e3*vR=amgg5g~z3r+$12t1BQizm%hi9rJNJ%K+1rJlLT8ujXs-=xl6O;2R!acMi( z^>gJRq!OEeIARLUt6G1LipZ#hn0}>KsH^A1IJNh-rW@DeBFNeG-WJUERmSy^OV4&| z%zDfTA$t=<2Rw?Z&*X1!2Bj}(ESl|9doSzdRoh(^u7eI6Gzdn5!C7UM%B5)RASfpq zF#&4Ms@7=MZUXEbTn3A{8KYiI_Ur^h8WSew-e6*Db)~e;@i9!4*s^O0pIAHw-5!wL zsE?7~rdD08c;UQacB*nbr|8e9ASh<^`c~nnshZkIp6k)z0h9F5wXH8 zJ8@Z(?^%BXcQOaWa2=>8uKI626nX*GWAvA{39WK^;tWmG7Neo!kQi14AQ90am=jTh zg!1#$n5${!0#R-%VVokg4%(e6(2L@7@-3x|UZNrJ*D*WrEMy-Q^J2a@HG!zd2T+F? zhbYa+f+%GO+YyR6`gweVdT=#iqH_#~7||+d0;Ojfjv)eP>=yIy`G(-BJCZhOlYbYA zl}PyaPKB-PJ)5^8_O%auK3#EuQ24B{2BR9ea?&5@aYq`^JbfoJ?#;%b+W1Kpw+-ST&+<902dLaO_eFHq4ZRY=~#DS@g& zi842YT;e;H-A zp}#J=tgYP$s-9!298M$;P{`>xY)`3jyNYr9rc@TA0{~UrH;GHE+0@p46y$OVINGIX z-rntDs-VTymJ$^60K%KZ6zep&z_U^ zvFiC2a~4G}=$4Ky@_$Gzw_0cvx8dh=JU6=?C1n&-^7jl$61@E2xf?u5Fj$LLx_BEN zKC@T=u234!7WIrQ$w)99)TB@h=@IkT;Me0M>~lExWbffaOuq5$ZY@wLY@;}v8@|Zl zN1Aa=A$d`$Sel+-sAMY0)VX|8eRv$LS9=e5oz-4$YCt;*4uVoo@de-HtiKmQF=~*C zLq=F(Fd0x7QE$@&)&#@bOhwVQ{FFVmPh9TJ6>)Fu^zaEoOC9_}oUo`%t+43PHI5!( zu}DI3zlJ*555*LFMd@Mr#M2O6gNYD*dtWezPYq7&J1)0`Yu8KZ3!Gz&vFp774MXGi zPQ$1Z1K+5_Zie(XjxaRlWGz}wU_Zp6DlBxOtq|RAu>wgZP_>LXEdn$7n}yG}XN%~# z5Dm`ijav|PzV7vq4E8><8!iq_VG#_`WQ}T_{K}|@GIs9FmuT^0Lwr|geBpVSXiOZx z>zn9dzQiFQEPPA=g%6^gfts`gLm{&Sj^F)Tu(G*1L1YG+dEOxI`aoMfv}~LQhfP&} zaICDDJ@s)@)ln>^p=A`x|41C`AR~O?@nd3|s%ulQ>DtvojaDbot3AMxOEK{q^H^?h zqpZg8_71dqrsNl3sPBmnc3|rR1E(-Rob13y{jnL45jISjGIY2{wG)!yvVYfb*^qo3 z{(oiCe@ZG_{ohufT)lKv_o`KiO^GWKPOkhfD^IRmx}s$HzgYgmWnIfwF8$@w#3lO| z`xbw)`1wU=7p36MU)(==RVjKbSTc6noMojIt{Tadnw4t7E|u5|Y;F(o$o9jwinrdD z(95?cXKSQWvmVV%v6yArn4w#v)XJDCJoc!}DzhgTEKJOkmt9qjGtPr_B|#6$+GIt* zIqG@%q$I(xpC80U6x@Ub-K3tK7Hz;YDJd8rPOYmDrS6z&6N}W90rzWKVQfToEK7^^ zKp8Ev*x@O5D(x+t?}@WU{mkPzbnhWkAN4XQKcM&PZwn=KJZPM$ zQMu`{>1pFY(|!0W?`5VM3kxiNKPMQCO8SvEA;V`z7$HX5SWf*Jj{J{!6R~|LL942U zMQO)@P9uvlt+ z0KvK@Ac7%qkngAlfcv8aLta?8bC8kRrSCgMXG;z|-jWsNnPFKIkpeSJ$f!FbulOli z4>du*ISaQVc(EJ3^}IMRfJ#)vuvre@gI}ZpfpH-MF0o}KGc1jvV1hBKG|CA-Niftf zB}J~vVq3LTE<_em2M)A0VzPR0B3|5L!uM9a?vubUg@Co710n$ zeS;G{9MnXIdmPHbQqGPgQc}@nYu$cOrj>_*ADm<5ASwk9hZ}>Z`Z@i|?daS06>+5) zDyGm_3ewRek0xqX2l2~lAa7y)2tP;!(qcf|B)qT7K36($INIU*2*$FrOc^}M#Ty#Q z+_~S=37`ZfFgC9?hGieLU>ZB}g;6y^**^V>Jzz9d*xeq9ihSrMl4@d>^_Vtp468dl z2w`4`OLXtx8}DILv^=w33x-d~+$3#5YNpI3xosY*AgllshPTQixtxfEd8%{s3Z=r` zJ6T7wu@Ptex~p%38-^3Dv-P|uoYGdNPx&YA#jivFH^P<; z%s^Cm;K@;wcfTx(L|L+1Kk(Y*2^dkeH@PISvMsfr0=E~WvQY9H%3)UQobG@MwBBs*oDLq)nVN4 z=kIYD>FFa*`06QioHtGd#$I?RON}iT&|JjksOPPEXM!Q0rR!r4)mU9>rE1X8KK1fx zy~>8weVnI;Hy2Mu#E{J5Xl}loyaPISk!J5ro(4LUmSGdotgyUUtd@<^yNH%&=Ra1Z z7hl~1sYcg(#0M||5M|LVm=)V~1GF%gJWMG!ckep@f}vzDyalQk*Gdv1OSRK8GpJHK z4sUb~2udiGg({h-=8HE^SNuEesE`qnc!6Q$Ki&)t?3*1zZfH&n(3Kvgy>Z##zK#0W zB>3*n84ekeJ!^iwCMD^5((2VctN#6}4-(HLOsxFQik~d|KbHQ*lJQ0V8ZY^L{?(P% zEFf!rImlXv7m&4nn~}A=3&>hpwdOUlR@HAWvX<)$N7nknJ8R|VoN#uuL~j_n`eYjts{pDd{N+%69suYN^{3Xv zuBIRm)_TT#GZ*n!^ie58_hLC2CPaBco<1NtDMpIoyy))E?^lARa9H87aw@8FnCt~4 z9yJ}c4{_kbKQN52i*Mq%a&1Bpp=QKiQc@ycLKP*+Gz>tdkrCkdtup?QAO?mTHP%eTY!pIHE*upFWmK3Kt9f(j$9j#( z-YtcJ;THAmAeV-4*#zf9afonJbGLG((SHRfpwu;l9vn`05u~y_>~DO4%oVlpj5aClSJdGy2)4An zQ1bWP@lTya(O~fQdH>xRWrA8pQAJBgo_)=6s16G~8aPosg^r@Aku*7}T#vmd{hj`a z>%lJB-}QjP+JiIx+gG&UcK0MYnZPpwN}W80*aSP-gYT@}?X{Jh`h{G{CGlJq20D$vu>pfYk=_&icxXt; zK0OTCl4{P%GG!h%VRBz})DgMbYeG}#Va7x<3h`3G#^bmnP*aKedMec(9t_;5<;o|# z0Oe)~qv8fo&oukSx`0}%J~*Lt3~Ok%J+p`p^M!z#Y1HchiP}GO4xa{;W+Z6~1vf(m z5FrR4{EP-IBZ~Wk-mL#sK6W=5yIX_ZEj;L`sNl{k+TBxBSjKya@&Z)7VHeSDjc!gt$N4qEW^e*N&)$>1!+|J-dW};_d28^n-ilK zFpT5#-#KflF(b=lin(+8YxJEH0v(MBZ2s__h`pf}g{~X?VuE`B0x<&97wZ_|miLM5 zqxL4+=8FWjLA5I#!|L&yKxF5656a0l)H2YEF`lG>N)wck3kY)qlwN6QfXT_A#bgAF zjb#4gKmvQ15xVh+rzHTHPIQ)|yh)dUh7Wf_0$$5C9Dm_O%j?K>|`hbo78fC{e&L0EoWUw@u*F6AH=!YWtPbfHUbrwW@mJl#1Ck z0yre_0AnCVpr@E){Gr4&u@Wc>E;LZa#;}Q8&6E(kYq;L*Vg9ZLH> z7#;rUyC6}$GlRAo!o3zuWV1!9Wk8Bbl)gvu6c45IEc$MlW&XY))HUFf1H=8A!_)9c zxz^+xn?xZ2+ly+~L(EJ8JGid|H3n1xfjK1tScK;#P=RU-kPu+xK9q7Wnc(t-zps|7 z`1}Ks(c6(L6!&w4Rrf!aqLIdnZ@cd{jsokhc zZN9A<-CEK+ZkzKU+Wt03yX;O|iG;!^+n@H?4}U(o>p+F8EcKAX=Bo6j+8k-NDo2{5 z(pF~oq?Ndey_I%nbsA~*G@~^QhDoWh*k;cvF3GYT*l10$Ia2USXLSln>Z($!N=ieT z3`tb%1q!7?%SJDrzo&(I!-RWFwcX++xM47bf@El@9tRAX#W!|eb6?;(VcttyCweWx zM9q&mF$@$V9)rMQqz+=DzyMOSdSeZQEZC(v&g?wk^Z5YNq>b^`r?!3Z_&@1$n#jKnmSOO&xGtq+LZtl6vAM+$XxUpb^j^a0};3 zCdr0I9=ZVC7GtxsjQVEpu^pB2JO^#m5)FEHl-p=Z(+-E*R{pu(P__e}G;@a0nrcqZ z%FH@!3T>ID&e4h&S{=M-Y9_4DcPHw3X?rD9fXCJ+E9O zk#TPW;0bRbY<;MuJ9lV;#&8qu8R4wd;(PwCW-TP97!tF`UgSDhc+^=8 zd0_*Vs|Ua;Hol;WFzx_rq=Exn!-KdvFpjHTeb}rH4#YKDvrM|=?6cWL49qeQc_Lok`G@oV3bW{ z#Z;lo?LMlsp7P(ns+GIJ&_#{!a3hNyOaxp|*nWbunUO<^yr!lm)#d~=f%BkUj5Mr5 zL1LPtB+X(jnf}6p&}<&4r0p6dL;nI$^Y;keUp1 zl;;Zn;|W&c&PK(rQI__B&hPR5`X*-8D^qwMJ4HkaBC!qin*-BBflKXy2bfs|o8t%Jk_cJ8{`-XCybQ zj!MX=cUe0a+7LsScioiLh-jdEhC`nbHisjfI3z^WODMLd0FNGF!RI4uav#c9dg76I zN#M}~NkksVslkm^}b{Lz3(T)$XI z5~!)!+riq)>QoncRY;(P2Nzyf<30Z%`TN=-6@UQjuYo(fwkK>Fi@<~f3L~&ebho|! zjUw!HQm*0HkKneWFjJA69^E5ic!-`9hqDyl zBf@8Q>$~%h`H+zL%=*rM3-CZ^$?X>t1vMY^{4fW(v_Phq6Uj$};5i>W@{RSAxgkOW zv^~uim4Vj4&@8$jp4ueBSVAE&Y8Z`L@IsuRW8WymM&;v3lJUvWG^J;TdzHC{Rc~iv zD=aX8`IN`m_@ak$e^2dz+6I8$YYdeD$Vdc_RD@a|4;jYV$go|y%U*7icG=2oZrjJU z4HC*ar4P!5k@`V7o2F!_ey+|OnTPYm79^i6Mo3al9>aJkM1&C7!NJ5pKD4wT8^>=11eYFagMCSi=fGNM>=nCV z9CnMjjm=Ms1}d#hR9qi%epl~-Sa@>{^{?Ul?sZn$JO>f|lnNachwbinTt_~u?e-w7 zP=hurfN^=ybU|ns^pdTZKnbuB1W5tEQ0&=&V^~QT&On$&JBZ7P*aV$W_^VPr;7L+) z?HKS12-*_q9iR$Jg|5=-8jQ=0B`W4@FUIM)H%U7*4JsjCE@hV-wmFOOIYs3t=C79W z&<0#l;Xs_B*e(^>ZIx19D*e*!D)9=i*YIkja+^mwfE82%n9?c0DXTH}s}d((ViXCf z_~-#NlT?e3_DEQd+g^+ahIG`9Ce{rSP?pN<1UMyC+MI}OxE;s^&>Bk}PNGWkRNG2R z>3zr@*qn|}1RI{-3X#P{$?xNFqGPLeV>{O4lzMPVbM|h@W&jI_9_t1Q!2{H#ep(WL zM5iHoPuLwIQNbx3I7TNj6jo8DCg>I$yzU#n5{uIo-C2ZJh=l+E+OYxI3n#)#NM>x1 zb~}#JqW62hC{NLxYPOomQ`EKY)83^1nvhb>E!fK}@J*e^I)M{}7#`&!FvJzXM6qn* ziwHdOVe?J4<7KdzaBp+W(KmLQ#vZqw#VhsTc(At?GhOL(PSDI;j%4sFVP*t|5&EoC zMy3%+eM0p?6>zo$wgMC>4mqXIZ(t0pn8S&+8FY-ItY;cZBR zi*)wYOV~}V`a=XLId;hx1tbJ(f*Mg<9+1hy+FHLc#Kds~Y!P#c8#&0d>cX%KN4ye8 zwW1oLyaAwRHo9+j**~_GVAge|$MHo;gC*5uw3;k2r9pp9NE)<73&=4alr?xDB5o`P zLPt|j3W+H+bzC|IUhu`rky>mh(7$NfF3_nk(E4;c#eF&B67ex43|xWpj6FawXbZ(L z*eN8lYow8?gF0HY_Xu5%Cqav|3RlnFcuEwg9{}AD6hsb*0{Q=I0pp+SUh}`M$w+El z{a35at7;Pi={=`S9{3%hoTgS@Lfe|DTu$_;b8`KK_$aJn(dO?0DVq zqQyWdfSK+<_Y66R7r}iB(f9$K(sNmJg2s-c1Ph`~6KsVw&q+VL3V^9_<>)%BMJx)zqHuml^FTy+98I&NbLtwAs8i4Ah|bSgV@CeY zcLVi(gbO@6^~3^2vmcEkFv`yz!iK!a3*?99xR2r(PiHai& z`K)4o9XLvCuf2fifh7}}#=z`F;%Ug3rE;w^jbz@65;BZ?_l?y<&k9Yb6;D#6w2|&$ zIkNHPgXMBc8zUgWWe_$M9!e2BFRqp|s~&7kX+>im#v z5i6B|BuO4QLL0&-(NesZjv<{wx@b&GnQ8nKNC0F?*2WTN=li?UqsR?t1sWzwH_aw_ zC6#C1u%4N~$SB-hKXTn-9WjJr zbCqkirjjGrhFFxqHDR{B^f5?zX@^Ou@17pyQ79vPaYj9P3AzAx3Tt2qmm7|!ajU(s?ct^Y**a(P-NFF@;6Jsq6DTUyQ1Q#w9n-(DWKa>?KnjhKtjHr0Cterg0~udV<=J)YVo!X z;Z8a?>OrtZPsZq5X9ZfGoK_6FGCzEiG97e(V7v^#Th!6%z%(FiDX#DD1{~Y8W$QYJWXc6tjkU+~wg9s18tllBhrxFq$Yd)!6dy;iARFjxT8oh} z6LZ;evoT)EfXPJ>7;sOF@|!l0`%1L@N2H$+BF*1gr{1{=+W|RzqFZ?EvBG zji;33b#tKp*D8(W1-+R~9t5}xO zFbTsa0=zJmyqYc6xTFGg7V6uIqivSgeFRdIqLB(1O_3G~Uc9MvPJ@M195#6xsWGnK zG#g|FWnM{K5L3L%L(P5S@MfN1%1nyK1L7Swe|fXHYaH(QKf@y zYtIDZ?U4SaY9giOCX!j&5rC)Fp`(q)q%9MvILz;97^LZ4*KUf$&|~KZU`j9}fqa9} zGiG@ekfuBzzAjRmjH^iLAOdz*DI0j7YLzAk)QRjW{IVB8r9oUDO#NI04`|&|pzFe0 z`~PJ8?Z8NAL80^@sKG@nW@uQ`$^ZY3;euh!x}je_Z^NMdOR;O<(B0U&xr)@RbhUl4+8|{GGfd zCzHC!HyA92AI{g&Tk;yvs9}oFpV?b-5~$KZ{^$4bEqV2qKYdGH_0^5vk`s0KpD$zn zmYndV4B(PiLf*bc6S(9Rpm!dQ;F6bvt`Kzce3`)|F9T8Ye+ZYnRPUz!lBRIUOTLsb zT=HTaygK_Un!_by64HDc#3dUblJj>G*ROPd;V*a+*Dt|_ugxT`U;ZKzf)P#%%?M_< zKuoTtxoJ~0+Xh`Czz^X0vmtNbnGkg*lZFI_xFy29R6vI!ji}&kiT^}zOU`xMY!&b2 z)8v<9*#xRmF?~opQ$&sRAJNdJG)+(fv3CMxpITc+!x&2C(6I}ms7Z0E zgOcxUd7t6*YqM} z8d^{(I~kbid=;_kS0SQk&fz{X{2d%ZsQpz$mxAZ+bNB%RmFO|Z>|B^ZSUFrvDMs*+ zOrIFRdX)D2cnx|CDD)ia=HtjcJ{NfSZqz|ZIW`(7SjT4#K@l+mfD#rarN0TG4JsED z6PG!!L;nBEhEEL1Eo=UC%@2}pC7D)FuYP$|->NqfTN7VPxS8>vj+Uj}5!-ve2p zFb|C`p9d4NPlGO zNYldurO6xsN9l<(p*alDWkFAksECUWQGY~!QGay7wgQ?3O+zVABY^^XeQprB-*a$l zjp0d9^yrN=A|nP+**f{#*br@SNq9OmmPigsXE7SQ?G)GT!fjwo0!p;9UctqM)Z_Y z!)Da@Op^Rf-ImsJX*sq^dxf+;zmQ7HxHlZ_25*HqZ_LUtzRf!_7w%_jICg>{Z~_G% z=I8`1m%ouio8Ig2?!UDI$Mbja7 zd+lC3-dbd@tg1j~kq50u6?Do)muFyrkP72Z;lU!bQ3O~7D(@l5D9Vj0SRVO#eM}h{ zvW0tT@J->~k9IoB%By#|4r8bH5y`>Ysvbpq zD>-`}Oumx;Xg-a;l7I9i&c2fWFsui@>fu-N5A^^5On@(Z`jz|#y4v}o$6v`m&}~W&oDF5$bn-O~8_~=F12yIa9v`zRVd|^7C>Ac16qbz|RH55L!Fxrzz8n zs^0St)u9LIUI4)3$bEF_@E@sdi;Lw24hEZlu^mmEX^{fQh&K2GnWCOPYMQr7PERmw zWmB`T!d2w~>{B%X1o&opPzp@`jTllE=aJz-fTH_`rou%p0azqk^~;FOp{+aNgOmdX z0pJXFi2(tS)ub>4nu^d$IHz^%aP7c5gm;a6dW^xG-;yoZjbvVVIO-s{j2)r5k10S) z0EmFQ1SkRr12g0PGbk}X1Kc(q-x`Uu6^A|HVR7i}!l+^txJPw(y|P)CPl`p0G%D9- zYvCZ#AwCyJ+pG^lAOuKY?qgbM^s#ww$|i8c6mmN_53M5zA;S*Qgi;3q*8Oudt1|u>yb{*+4bHQ^rZuCFb<2tQ|v%0#0Ol8UbpdW*$7f!U{V>x zHXB$Ohwb^hfoWagI_R*$kw%9I%@q}WTWBUkWd^!G!MDHPL~a}=eY}HN44bAg;8CkI z>~h-UaZG^yR98ydfOJ|Mb8@HIXbB(O&?sqZ)aS@=%c;Ta7KMctRWjo@ZP_*Xg$sU3#{=Z{c+Nc)&F*N&8q)*)yY+h&;{^W!upk;u3Wj| z?DD|!!ey^4aV+|mc=7M%KNKwd3@I^}2?h5i4zZc2jK-WLy$ej63fs|A4}*pXXvYzN zAECU2;(#YcLOWJjm0DwW9C0{P4;>Pi0iLuSg|_Xb?|pP=Z-&El@cpCK!&xaG?<`Zh zZ>ZWpkdmo|IdDBCHl29At}aCX8CaT0gLJss3V*bC@oTze8@MVt42^1){3E@NiiA^S(4 z9Cd7|@f@z+trLQ{37>q90}`acKr0R9nmqsGA0IJi9P+xVe}Fz>!r%mU3IVb9hW~)? zj3xBN22~fld=CwT40uTjPc$D(IoVs#bA&&mB@W1%_<5J4i~&b_gmD=pQ2-0YjS3ue z{&5iwRsV>ZJG>PXY8^Ot`+#>Hym%%2e82nv&7k3*^;#R=8S1%5Nc|Z*W0ld9^pR`b zu|jOj<|^hf!bRD6!JDICE6z2e>%8Ora9!yl)ct?w4@-&>WR zotKwwJVIUNz0KI(Dnf6gPeVYOp=k)hTL6zdfi0s`KvGd96?ze7)T99HfF;D22$$MP z+lq<`P+#{*9j(*r|CnH|*$0r2c&vobtI{w=s3cv(Y8$Y;1gO`=Sw>F49mK6z>J=dJ zjwl^b*b`CaH4WuugUwcaol{(*FB?zBPfjQ z55UWm_H%%Op%2xJA`EUt*5jW(qV6y(mMs*iu;87vEj#k^)3)Si@5zz)1Np4Q*zCQz zrMWq_eFcU4x7w}yOl7-2$v+AZ*JAtTqt*75LVGcq$qDyZfcH`TUGE)22s=NF&Y-_P z%>c6C&x25MgA5}mKh800CK_v>=9v7P{A1jIS^^h4tJSi8#gngO!j1j9jJ}dT(5v;o ztl3vGp~7m(S2~W{pIq>$ zS->*6P>;zy$(yPgXPhVLUL`##Ym*f-<)V6(pU8U>4ExzhVQYuc?0Ad@pj_}xN(#^+ z0A>PA;0RkJ$})97ksglH0yN-9^%G0w-Fg!UEwk9+DRwIDElT4(>~x$}>Lmhr5K06v z?!^){q){#x=+*MuTwafWX7p6M+?9`G7e-l=?qBkw$iIxrP>=ksp1{TAc%UY|mzioT zEU^6jyjs)7Ox@e0sUJXVkCnicQ{`RINNu=v3Lr)gL*YJAB5Pg?v9L$ZC%KVS2FQswHuSoN=0txY_X(6jQtE&sol?#7=M z{{4<|;Mhjl0GDTBpa{U(o|u{f2XA4Zh_{T?Hg)nnW1vWb^ee~?Mp88q((p5*4Y-Ub zG7-iS<}`{JYlX{)ae^2ejfTZdP6cLx;Rp21F4B(}o+6r`fMKTg0mJ`cNHsqL+&wFd zIJ?7+s2j>Ay`L-WHzrSMGmR`3OV(j?2r*V)8=!FRO=83Yjdyu;0}&8{=^Pf=hRvra z0y2Bif2N!KtywYjY@{BcVgUY8Je=FV#vjs!JUosTHvLnT_6`h%K}ZDmxxeKhuCXTq zI+)2zaEOe}FZ$XL!~wPqq8^Aw(hRpy>I#^O41B7#9cRW8%HkyeA2q}Oiv(~7wLIfe zlyaV;y%1XlGDK_IEe<{ejx{P%qZG}$^blaUK$Jv`O>I7_jV(hb-3dY;$J7pl-;@!| zvZKjJ9Is#$Foc=N4iseb943eXXLe}G@IIR+o|FVJniDiXfq4rN1#%VaCrrf-&r4eI zONi)8fIt2@L^OA&BiD;m5`rcgOg@~Ch$)rKDF~(7a*gN~?SksXKEmL`n8MM?xVXnz z={oN5UUzZ14T-c508LL#k3gr-x4DlJ5PG={)~S1glxqjTw_V!ibvsk?Z5X6vKe|E6 z_LNII?KKY1=PJD+(E9XLW9G&zb9k5%q%wG+_X(K-cNu^>FmsxAfF+0^>5ox#>&|rq z=hUuQjDH}2>(M%j*a_$?iXRHu=eH2V(FC#}mmmT>5)y1BixZ8KLw$f9Cmh1&ha{?E z+7ijv^l9aIJGvhM$4xI5kH&teS2}1vF10Ebn^@IgoWsQIXSJuznNLXq+Ky>*7OGk; zA#5`FJHLSK{JI813jF+mb{ZE#R$miMUh?03gr{?QhSAC>F>?~2=a-d7cR4ph2x1KH z+Sm}hGxap)))Tm`d)_y{7Xu#{(S4q0ZI%oF3GhbOGI5BZDIK?HU`!a-Sg>uxFW;s= zb^`NXlpX>wZn`rtJFT`;#9PBtY#$3uPqPlyQO+Q|@@>rgz}Pi>5+PV!8whI{!D7Z7 zCH*te1r-$1w1kHB#H!xgSN2KlRT1_T!Nn%daAQgAuS1~{(Qee zGjRzGk#Z_y^*X4ZZ)^rQZZVedenI8o*h@gMG!VYc^3RV#d@7?M9RpsP!YxA@kSOjO zC{|$GL5gTsdahw29EKMWa`bQ;ST3=oV6p0jb7*>o@(zr&M*@WMfJrIPI*x=*zO9(| zFWs1GF~3d_+yKKwebvo7_y~W`IlL1$o!b0}fo}z7`Xm$wM&3XgV=!R<2d?ZWK(SiC52PoFbfqmTr`StM`rtd+%cCE4NS6qV$I9+RMNr#ULIaU}K^TgE2GV zF^Jl3%H0uzs1WM$t2H3%ZH9~m;G}w`FA~gEtv%rzZ&q7Q;|M5i=ji^&RfKDB5=XZe z76fvMP>g{#8be9vrFKf0LENks1?@3t`=IR5?%2q&XcGtLpmq?ovB=iLAaXy8ek5W# zsRvfJLN@@G(tlydH%`UykYLD7K)&EVc3oE?y7J(=lb8&RU8eye(~24<8K6A|@#gnG z$&VrKVxS%BCrl>!MK8#HEt2eA@8HSMamv+hPzP<{KYlf&F!Wm;^*ltG&?czyIrk8` zcI|4zaEHtHV$f!>Y|f5H8_gollD}OI+FoJWaF@~AL-3c_M-@jA2nV9w_y1?_O@QM( z&pS`>z9rkTqsX%2Pf{dX7C@lUIO!+~L`oDTf}#jYqNF%V184#*0%!;aDJpi1ubUtN zkRW(pAb3eUB?90L0t7IXOlD?xYiDP#s@d78tz8fLK+V)nGO5(AXLf7%_q@;7ADSe( z!6cSMC1fcvL3DrL^Ip&Uoc}+vXxLqiAo=8kg5+RuS|U3}??%hKLmlVkzFat!Xu<hqGIqRdDbEZE%ZD87pFB|7Cm2+)BZwp5FHwFX5 zu61iSzX}i#yT*-ce(5M6_6F?b2QVQ2fMGyF>uu1?e^!y@EmH558IA2(L|gOP!@NT^jB zvpzqeQF(z@={cQgk`TS}g}$NWk3twQcI#lI3#N1V4)nXCEt7c!QciJkWcHcQMX`K1MwXhY2iQIm}vW6p|I<|iX+c&-5GL=3BXo0 z$qxvaJUNlc09V3)Xa^Q#gg8xGW*AVNU9p3$u!bWb05=rrIK_(w?DYd7LMFULDBm8@P1eE=L1juke9n+>5X&29Z!ln^zQhIcG1UrJ_nl*2gttC$Z9}PbJl&hJS%lt_cAiM)49VM#AH*lrG)kh5GZft1#e5uDs zLhg}$@Wn})Gs91(@(DddyI~|TB=-`Q7;VJ{qy!5iYSn z9VOBFL64oyKRK63!M@g+6n<*qN+`s9E*p&!^l+xyBgLd#j+lDf)>Ft1jlUf^7&wdVb73uDlL(+YfViGXt&BLw8&f}EdXrLu>X+JxZ(d!Z5 z!(@7}E=<)7ZVF`L>X$e#xA3W=*Sg|o+eq+%pcUP_QqD|oZI1X9;Fd=!y!4D?sxlJ_2x$kWkI;HIc@)8#k6E!$YJnD6s> zsj3^?GxfB2RZWw1iw!|Wei?OIuObklFhA56x$ZqVZtpcCFq|D-9s2x9AFCNRK3u=KsXADvKk|GO9M4zrm|=Z_dj3&Eq?5D_ zrO@2e;-xsI_7WR*g2u9pMy4AjNfsZ)`0~2dXcT_Taju58{*6VJ(@yQl@)qULjDA}| zXUeND-}85Ps=HkXTH@5eiJIaPdBUz_yL_8Vak8{R6L9FC03C(ZRb!Xikd`m^I>!=uhC1m~@V_rf|F*?Mi9U?LYW znHdP7Mt2b`F%P`Suw)Akb3q2ab-jb7jB23&O8S-^C~O zbqGVS!rfjb@sWOet+U~EV0+nFqU915@NQ$i7fb{w7fb=X-u!Z+O&jX%sqd8gs~`ux ztJV^?GLjmFe*wxY!tmH>7G$<8vP(F^giyf63ex5v7n{%<+-#M(OAvtS=A(?&z%z;l z_fD$8?U(FwDrU+u{)C~eTemXnwP3lmyr$Xz3QU(lg4q={T%}8W6%b$&_f?%Kaq`~n zq&oCx!2bG<)C8Dl2@mc}-wNU5T8r)@z0lNEiW zORJUh@#`=m*7$@CTJ|oM=r)HrI=Q}86JTs{4UkiCiXs>LW@FxBrwSlZFz%JomAi{I z#s8l(Ejwe;f4kt<^S(dl(OE?^e#(yz{!BgtTjttxa$ zZ1zGnd*OBRh?EnJ4;>mmbs~OdD@KIl=5}H~9#db^JvP#FN9NF*rN$)X?i0MJ;rH!XEWVe;Um!{3w@TJ5`&G;CvX!N> z_P7;PO!mY3buoUfMWg08&YGfx&s5#g@N)%tF z@gyA>vPYD6h^KKs-m$!fI7q52rBW`D7!Lo^p2_k)%<^txdCN8gYHHRt1V8lE$@1=L zBN?iTiQ|C{$uhcW58c81iv%eS-q9^J*;y`h7xUfbI$5h%{B>2VTwuM>Wz+C0f3K@* ztZoj#iC*_*F(YF!6cl+pY0t3x8F%TF#yG_!s1C$4r7}R%SCaBG9~LMjZ1~SQqdg(D z5OtxXx}$TOoS2@2c$H!m!&Qf>ytH2x0d+4VY2?GeeZ!QDU*1o*%LQUPk=9nJ$S`KV z%)eF%B!Ylg@9O39io3S}Fv)Q864i0HK;+Uyzde~+tK#3 z96(+@exxhXd4*7GZ1^%ymbSBjGvYd$Nz~+d?BYmdS10Rq_nh)lInkyLSEnp?vX>Sq zo*eHpeSw3R)i>Zd9vc{r zZY?FkX9(Q238x53a_@O&(EMvuk|gtzk}zmY;&rIaN;;a z(H*VK5C~N~4uP||IZOOK$p|a*I&)E6_iwey&;a+R?id8F+MXsZ5UDVoGtJbcyqC3x1 z2O;;Cp`a(8NvXf=ZIp8F5wu&H)h^0$S9^_bv$djegRhQuO$2_u+9$*ZuLl}1H{*S~ zQ5vEalQdagP9EEu*F}0ii;WKP8LkJ3U=tG(NQ<4P`9k8|6aIy-ywRz%%r7d$&P=SC zqtT@(%Nd;#nd2G`!iV$Zn(j%nvzOd7Kfz3Y=-!!`?W$+8Uy?iEsB71*7Q$*U|L%{o$BT}F>?;Daxd#?S+ybOP8x=)xr+2Tri z!EqC#Y!}VY#}fxR9et+PTR0`PXRgv`dW6XLC-!$(w;!bvhDaD4^#}WmhkY|jZMC6A zMLZNOsa|!^5fXAzAvMQ5BEGioI4s@wByFB&YH1CMEG^~vIY0}28);`K@352FHM$1= zyow4gkt;IVz7xhAWi-J^VGb#0mrLs`rR2`!4P#rn7Hzt9CgMHy%xSSU z4NC>~Glt*t36)VVMond6WdYD+Zele}rG(1VZHbyqCL}%+f*coPmHW|jc9pESmnF^v zVIy{SH|8hXTG)#vVSWdnt4t=BFQ@@IOs0@r{!o{g>f`8%TYOO+9Bv@~g*wWY;={ed z(R+;?9@fJNE?>q$bpCl$`bvj@Y)`%ZFApW%ziFqm2Msw9}UO1#^cB%_&AQE<|cDqT51PG~71hhvD1l5EDx`kJ9}*xk%%G zDeE&h0{1lIMN@5!#Av`t$|(+4*$Xjq9>I29ikZWSmv$1fW3A}+)A$)q6v;3Sv6&M^ ze-2)&7AA_Rb{OV+DZ5ArIf;8-Fk#vz+cB}TebHmKCLdjchUf2q+MJVY-SJ9362EcH zGI0d)P!hp>7sN^2nH!hUMwV8eO5h(?5zAxzfh3^YNDB(OX2$ zx@AjitBE_Vtyky+5FMuH)HsHcZ0qP2J!i&thk4=^^Mv+jxUVLh@bI(t0+xEw@{BDn z;)KT!ABou8Zkt^EPsgt^r(GhcdoEhbtAmYAWxh(kRtYL=aIEw4StT;EMnB3C+VWj{J}Xtqp{$TYsW3C$Bj82wL}D(~SGeuQ zYOu!7Qn%Hv)&RV38;jI)LuZ!+ryzo@pmJLXwR_e~>a zJ=X}vzfK+}j7=%7r8!%QOcg-7}p2tL@KMX z$+v#Je2+#kUtQo6GYxm2Q%a5?EhLSflN|TivcR6pdOXiLl?KhFZ!Ig)tCP*A>OrFF zEoa$KmiZ-h>GWh__F?DAW+4`TR=VIO%*I=T__4RcDNLqdz3#Dm$1fv+F(HsiLZVI* zRqr%sT5kq6%c$RN{>=o5CZY$4Gnu`-{Y*lyE?@nYP654VjFU{2Sm&e{ z3^=iQ_I5U!crihGBYImGGXQxz?YG6V?iK!9q zBbFJ8^bZqlzFQe+Cm!|!s+40MyLEtD&?!$NPIdAeLf*Y4Ol@AiY>CA26#xIxj9nQI zuYKtJqF*n1W#PqzKU~l@|9_cZH1E*dU(c-FLZS;0 zLRXF!@maOLwds$KQN`tCiFbEI+CGjy*p*c z3@M^q`;UY|Fyu|sSSL_MpY;NG2(Ic}UATr6Ihx*CGc& zJ_ENfnOR7>?@k>9a;C*pNhf7zoaS&7n+AkW6hvq%c`~}z(hRbobmbeV+SKr96TNfa zHZ+8f=?FC^w6tL}*G|ovlC`%PmPmB!SaQAv=LVmbDm3j3l=KUAdg0+TLakh0x-5-Q ziQc(dAt4OCnQGd94(uU;R5Gq)Yp{AlSr8>U6N~NZb=I^3MLPS`&%m{ensIr6d zz)kez5cbC;#$%&4!%BwC6jS!<2@-K-Z!af05V>(yax(|JSY^qGb)M8_K>=$$aa+LV zj;&Tywfe&p1ID;^SK+&c+VF=u;MEPmDseFYW5%Kp^yO%GkE9w*t^oQUDFBvXo8Xb; zLwo7qbW&j|k!I)8EJW$LH)_+!l~@Rm;WjLDy4hO4U`}P?TaMrhcnit(#YYXkLBjrw z?YkD)FOBk%&J)qTeKanN4TLc!m~b-x>bwb9!B)96<O+2VxP#jsEd5l;}q)~@%6E) zJlv25mJ)*yn9a6bf&vaM-jQ9gvrM*(n_)S7?G)gz2jsu5-TDMBd^HE+7tch)`_l}p z{`F07-X`U31IxwCmP?%f02_W9^|?ZKNo??1^xOs2G0;*G?o^gviPe$qFhjMde-S^L zh=g$@oHXmPEhIEVBMmrND`!Tv-3RNhCEb>;TlZ#uimijNphkP49`_JOehOh1z5ZCn zW8Mt-q@@(6dt|)*YNTTnBI$|ca}>F8Ob9oM?bJOI@4tkX8YAIs29jp_UaAkisSlfY zq+uR6fMGgukK0co%j4RNOJ7Cw;%Ujt_KcWn%_Cecs);Qk!`eP8BwLPlzD3DNSUu?Y z=ta&KI+#wVRr7OeHE2A{xqNgq%9Wh`|| z=O{LOA=W_{>pUt*b9n?6OIEKiTk?=Z4XVpc1C<+>~m;(+>;hKt*x%8E)4+4`NA;AY2Z zMZhSr@1Y)z8QxwLoG#?)$zl6vasyFdCsy^g3)0hJ0{_CJ4bFex zex_9dh;_JR!TLZ2ac~m-OKW_9(DHe*u+c4)atXV4G~D4UE}CxV+VqPVgW*^ zm*`RF^B6FkZT*%+Xzo(JDNnET6kHh|zd4%NbGM}g5E&yc*U(NB+nM%bi2S^h5=c&) zw4NSsX@QiwbzikL^d9 z+NbYDR7q2QaSMw=dd!CRk8j&8St66N#3qXFKgGDfNx%%c$8>70H*ZQ=a{-xw=z;^D zEB^lvGHzu&-0;v}Jyf#jUoR?Jcy8gd3q}`|&Obf>Tk}4i`!D8}&-v>)o94`zy>8Z@ z&HA00znt;^&1j$gPp2=Lc79q8U;G;Xd=#4h)zg25=6zlCpP{)fjPLzH{~4NdztDe% zW^>-Y;q;%OSuT34Tp(W!{pT-2Gv{SEH1+k>^+gu}exZdC>vedW{zu5Ye0 zVeZ@Qw8=1Yp&y-K)1?QKR6aqIlsLflc3$ zSZ|G=I%F+hx#FdzfH38GtylfNdeBnE=*60})>fEqGff#KH2UP?6**9~R705pIuv1U zUP{hgD@2i`{j`clFoB-VvEiNOl5Pl+%8~Poc z$|+`Uf*csBK$*glNXeCC|0tA!R1Rm6atL4$$t|5&WbQP~9Pv#KC&1*0VqGJf+{T1~ z6=eS29&H)YjUcQYYy+*9n?lqH;$2)SvXw$*oNAFjvVZAbBgS+~2&k{Ef@7K2(#tx< zI~_P;Q)VZu-t7C78*8)ur}Hx2(QWlU)sK{U|E#IuW2>TRz3%<$1XlI>Kw~voktyCi zLHSD#of03w)>6K^#{PwiRHJF(HDx7k?w9GNelh*)iYLgK4Z<*e?Vgm#%N6#|=Vd&v zLj~!1sZ6o8$zKjf_7rcKSVZ1J{2(1IH|DJ1%KcQ|!!dP=-aqftqN?#$;~@zJj1;kJ z@wt0U;U|H82IFh|R8OoAll-Qh5Apa&`RqKz@r4j!3V9v$bv6KbmK>qz@uXIK-?ar{ z&LLve^f-uX>b3}=!>+9yOXo*ZE}>mSNQ41PGFQsNdXE5sL9}cNxh6ITauE&lpp#P_ z2FN>rjZ2VsFj>@B5a#maz$A{FA_w-GP30ivp3Vv*r1RB-`n=7hyAqjV}@K)KX($%;@g75}j z3*{;7v=YERfJ&tl%b;w@x@up@-jONfoKVGJjTuIC5CvM>2qicUnij--HWJw}7_>LJ zv>k?HsHCZhiwU%m6}*=?p|0l?Z=6uG2F{MjNe$v(X>XjDk)@lyq_oVbbJLLC6t9^$ zUAzVcI-(FMSqXk=H_ywca9&eZYUxGGtm|b$&|goDTry1a!Tsashv@a5LV}5XsksLV z>QaKn+Y9Zcc^SWOjAlBCDz%gipiZpY3nb)MZt|!MeT%^Q> z7!qKiDU~Skxkk3+<0{Y{=U1R+fGOB{!@%=(5O#=-?4$@Veys}~gCn=xZ#wWw03u1g zh||xP$2~GCUoJ-`rG8m&H@E}~%lzvptnfFmI*l7Eq!MY07rA?0BIvZm6+@1cYR{v1 zKVl*r#jD^L){3Po*Elwuv>%7_xjI;vHX94M&EPq|MP8UO!{jE6sXXzZcDqJOz){lfpS@WTcF z^Mc=>|KH935dOdS=N_IreNNTve?=9*$(jGxOy7**8Q+?IZu-J$zKrpVH|}u%?cWML z%Wk+I$vZ>Od`;w?Au>-1L%3vx=HlGCPikVgP}zUfYkd9Wogv93-Jj&0p{Kqg^3IT? zg}xc&owgOS5Y}-|OMRdCA%Y|CM;@qb*-9=Y@%WTj70{w?=}3$2JQX{C-EhI6Teuc6 zTM`M+{or0}4@X)BljEJB^TjYHFfaJ(Db?L~LO(=C$30zb5S=V?D?}GidNs{bJtyWH z7W<`RQg?QSGy-i?{aRHpS?YSy>pREm(k$U$h@}RTO?hP5S$lnom{GhM*NM8e7Ag(x$W*g`RNZe$s+C z{6%twh+1M+P%6J+t0Kxx0XTUp=LhreRD@5lpw9h;K*mGh#>h=+3)E@|)YVGS=H6KngAbRL@ObADJ!)BNDQbTi-KW|OYR|!|DgMW7RQ$=D-KWTXr zrvMLzB^1e0o`Oe1k|1*E^{6eUPSq5HW(h+Rbsbr?6=3aA33NWG*533oDAXG1d+n3P zu%w873eg-F!pxZ9I;S&;>_nGLstn{IC-!ysaT+a#fe- zGG8%~!hlAUHMPAtGxS?7eIfzK=+K+8yj4!yLbE2|fu2!rM-J-P&}i%^5vkGwE2vtS6eBlZ@&dY60{;DY-ZKROe6ZJj7xOB(R=p7VK|_q({NI0DAUbB9mCZNSl-%dZ36TH z>JsfZNX8w6ee~@VZ+58x=>?PpVeh9LyFc{s?bd6c!peq^fP3KMDU5}JiQ7-#gV&$( zjM1wk5JKuYqe~+KtLxGW4hBr>9 zpMnCH_0O3C0Z2+U`5%WC&C7U8Ctv9%lg${Br}Z2F0Dw$O459nb6t8wqsh3!dsZ305 zf_@xY=)QXOtE(-lC%JzuDpY7ZAYP?@zc|+SqVx*fO)sy8F(Ee%y`KFw0=j1c0l6Jubx0i!S%d@s zI~jqDhyUc^xeqlg`p=7k3;*px|APN%!H4tz%lx|e)8{qL{Xgjf_?tODoBh|b*U$Qk zSwES1bjE+0;h+9*ru(N|nf5})|G<~;<wsqjGv(w?;FO?(C^#&nM27%rHoD5^FzPqMoKZRR3gVrHW6DVaG>|LN$3zbaPB#i07`d@AdP#A z(DI){sW>QbsRJ30hJHG6w-S#f_a<@UYuj~dr9h!?>-e72n)y^P#Mjl`#Em6}v`~2vZ;qQED@=DpcfBY?tSF=)-Qbmact8^A(%wr+CxE z2IftLa{H(8VZR$HWL=yjuX~yEh(fwt0TZkWS`9v$!5gd^=qH-%8)+FOEY{exd_|dc zM-}T7a=9))Ga#@JSS2Y9;pR|*8w+3k&MMkFBcoxbgxn;QBg1=QgIA_51@IIXyHPi4 zOQkQISEo#x{b?vaIrriRLA;?t&ds(HI00@ov(j+z@0xp`V&D@8#bgoXtfaP&r-kz7 zWmM_S>AY!t*>XCPH%uYU#Mwj~$|jH~rC}Zj<<83})G0xl zd^OAr54-=94}uL-MCahiUrKFU#N>Kpu=%XIUco0H?-AJUOy z;xMVbkg8C&t9Cx}*EZ9G6WtEa+W}4XP4OmoMRUP5H#U8m+LA?~#cs%$i0t^qebR79 zEyUH+`ge&mCZIYT{8)=bjoAb6v~>HQL0<)!$v80I<{TF z-Y%Vt9^dO0yQu1);KuTrt2zmz^Z4HB89(}aEc z+2BkkG!s&h4N6yHR3G~Byo{H1rl^8hY7!8J3Dj=0LQ}kQLK&J?DbYWvmEp9| zkKD^h&7qf9zCyVxMJ7TT-`M*wV|~D&pe>G5=t)gI00a6 ztuK}0DpdAOrnm~NVY@t_xVnESu0n7A!=<g@J&>akM)jsCIJJKgT7^&( z0f*ZvucQ)U=qUVj(iYU|;Gu)HNl0dFus!nGpzm|7D@}YPWsD#gDs?OROWs))>G~|vzB_X15`GDpV*)f}EvM)V@)YO0&N~1K;vSJL zPVFH+8d}NxI4N9h7*j@Y1x?gO0xi~{!cV{+M|uTk$i#RfH?IrnUf)({at70O@_33T zvdbcx)bXXsV%sxAue+5bZ!If}_jN=MTyzi|3a#e*=+nYIf4bDp zH`Pt?CbwEg-c&?ZDNPU0C!v?;WxVSIsRkw8rdWc?N@6&$N3ybj_z>D=Xr&IHo8ske z6i8l9fdbWkDbms=LTje^v-WI)hc1p^+q6tvucYVS2{(wPV245ReGr?faB-f^h%v3~GeOUmo zd5d%N^8^4k0q#2KAc?y#Us=XHIu;keMrRLUQ>h`Lc-6^O?)nf??Sf@z9D61U&L+Oj zSA;xZonALk_eOxczWiGO~DQRIt2mXZOW*qaz(m!uxfw~ zjSYS-Z#XNcg|Uu138d&|HVI`(bQdMCfLblPfX(yP@{DZ)BCK|nU{EIU9g2A+CI1OF zB`18Z436+v8LC4EGy#gop8b62i2Y7ba4cR~XocQ4 z)g@9?+tDpsZfC#nttC<>pf4&;YIH}tPORWD9s?Dr4d+7JSG74=*a-|HrKvXDBWq!n z3^5{|SIN;UF+hCF*2t|(ta0?%_2@Auk0=|z9&J0|KusSS(eM_$9ODPCM*88MJ2L?- zPIb)A)8eO)Wj10fV-npzS{)-p#>{0UE#(T+knT@v0vGduZ zj{|i5C+yMXD+9}$eGNiw=GMg~Z&#fv1)h*$@hUo3dQJ*g6r_UCR~y3cblY%(l=ZEK zifSJjoc92pZwi3o4fm!GW^7Q-t9{LwvGBC|LGSikuQoT-WtIBCqW5oxr?s)#TIt^u zX#9YhCD1J-fb(0V&-;rrWKpC0Mxl4$ z2t+T1SS$tB5=CS-zkUUFRq>^$kUDr>2^^VL@m_lYE;vcei5B*_>QOe>@ZLy!XY^sSLxiA6l6kO+26PGa2TI)AWMPA zKiesNM`#&F$PtR22eJjAd};etG&3Qj-E~H=@^4&@UOt0L73h*7P}xo~hVd_M-Hpg~ z2g>W3b-8b+0TiaHOZ~-MyUg~2P5P)xhvypUx*()56G+Hr;`(Fu=km+lVEUVOIrzed zcgIJEqn!{P_B*hPodfaVVO66p3L4wj{v1{hIMR3$2+C5YcDq_ud{R+CgZt1ziCsPk zPV(FDRDF_uSQLVBR}|Y%+qn|x(P0UU8MoR+vc1flqQuekpwQ0A`1E`b38Nhy_{L_A zcZhnqxH~Z#y*E^ur4jQT&xV($5)))1z}o)6_8{g*&g>7JwwC&QWuOe@SaPQx+u}II zqiBL5+3Tma#@n!f9J)Cr9?}UP8$7~?*ETdaHkC96e5Rm`X0wRU*dB`Q$DbESVi)*t zY+wYSw=`o|x4L#?`Z3V!?g7Nj{u4Wg9aNhN8~HyD9|d|k(hJa_bf9qSpk9H$VAoFII=vaPSr~2f$Uy*(QQ`6a&SWf6WrVci+iymX9WC`$=nCfNEcWI; zBe>n5W*YPb9uez4$Tzv~;2?EMGuw7Sw21bg2a64vW(MAUFIbWSR#vQ%1YY%b>};0s zaUDJfoBl@=GJrq_n?|8P;AzzgHyM>yIkvP$T8;x<`f77Iu-VYYD1Ng_o<^$IJj-8C zBUJ(?`6+ubQaz^tvjmr-Cr*xsdgVS*z1Fgm#-C`%UXDRz$3d|JFrc^&hd94SG3@Ar zpfr8_GU@7uXBg z?1k6a3*$Y9$AKL?bpp@>@k?5cNWFgN=g~vQbvsNHpK%v}6blbJ_VfYan-`+9EyoE4 zN52>xzi?2mw8W(~iIZG7;hnrj&#m<~ygQp48~ru7A`Q&}U)E9|{0=zJYv5R_!xdTI z2#0S;9Rx~WiZde1?k$4K*Cj!_TT{57No#v2i6Ii`# zf&mPD-VP@Y^Vx;ic?|!HLX3qYY(5j+Vn`!8FO45Q?*t;uQj8xN5uEy?=iJ?>fynBvX3#;%n$#IwBKZNcesG_gH){i@!h|(zi<1Ec;c#0}O_c$w!~j1~mF$FqKm)cG&(lR!<1#ukDoh*+~hoMY~5S4VGyh zbO-Y<;#M3yH}zRAbQkm8<~mucSNsw}eK)XPXtk(XmA}_jHC7W{UF)m+vebLt;+%pa zk0bJO}e(WmLr~j`oC<=}H$$LPee1|A<7gPJJF}ZI$Sbp)8g8SIayRd2}OIyyEUHK)(wR zpCs4ZEztVDy@W0B^zw}MN8q}XK*^Q;3frNSGur8aE22mQY>e1}-D9_IIe>NMy<>y$ zcuC9&5E8}`9qhx6NvGJ0+|2+eA-P$wL?gZ1B%2NDfND17X*8{T4#}s!C3+@A)YXcQ z?v5U%$|`%3Zag{OciLeHHGxuGPYeN#iC`(=@>A)rfNcpj7jMS42H20 zDS7~Lm*v&LA(W-!0&h1qv|WCXs5C{m^H<(f}g~7Dy(RX`K)5MGTR@IO*T`o6%lE%ewfZ zfG=3vyx14W_SFZn1GT;?e`9uKu%fvZ{>5xb^JnMeWf$al*XLCD{6!U&MZWUlyewZJ zi%-@yWi>VU>KBs@Na!-+94rRS3JFaPcT}vqg9D_7qF5N_BV00(4gz;9P&M)havtBB#Xhhpa^RQS>5pqi0DqxmZgMUAL+%gR;c)X*lKi zv9tXE9o@CAxd!o?f~VZVgi#{?|F<*#IOC!Eh3n?`&i!*b{okB@ZuZPsbu<6T%)A+= zXUv^mHEn3xxA@54=@0ObtBHbqlV~QSX6_q8Ga;39-w2us`w6=gSr?_E#2|qN|9D6D zc+dIB?qT+^X!xPMw419LM*HH;tK)||$A)f1x-KWwN;;yT+@vs6Gugj)6Ty0yxp%Sj#I*DGD}-Q)ozM~SX05tR_>IFHzBHwejJmx~~kR=7fl z+lj-sUL5bf&P^b$zB$L-yNRYH!Cs}4S)%Fo0-M6S#`m8Qb{PVNax1{NiYwR#RcnuA zTF^MAbVzPM{_!a6qZh@XF)U{HG+)KJR(#))AHVzOH=m35Cq|Sc4)tX8pwml~4~^Gr z^D_LY*OFyp2^C5((sc-p71?z#3F0W-)OfvxQ?8qInld#o4SVgM*eh7KAEgq8lv2rx z@q>NFd%hVZ32V4j5RWy*xKZaDA=!D#3MJKl`vmdeUS`dk=b2hs5>k*15UkFzzhl3O zv@?{zD7mi{CZ&eW5h$^)o^twYzAIx^rD!?_a(Fno)9=SK!ic_-}(XDG5m6glO zvX>*(BRYrfUFO^`H?PXoE_*%NzB78_rf{)!oWuZO4h^1}fLnDypZ2NPjl-w#nC@lf zK(v{9<}|BI4P$}*jQt8SKA|$|VFB8kWyOM`gV5ZvYIb5tX;wzmNHVXHA&AEi$L z4yeVRH~F#H&~e$GdbM9303nu7$x)e5~U%b-GE! z7wJ?$UeQ!rBQctM!CDSi*-P=d9>FeMie1WyzY{{yi4Yn33pR5imFNJ9Xzo+Yu)|Vk zj@y-(>`B6C1rug#vbRNvdh{3=DVL2VKQ?{=L+>-5PaXSJ)Ub8OD>>8g8`mroBM|R{ zlB$k#Mx~$RzH>@KZd~R-S(=}+xLa@oF$JNNCT&LKE7C(e>qtV>sz6h9bGf1O+u$&n zX9ooolr(o%qk~B2hT87w(~hS|E|7`Qst*e(G;|4THTiBRzfE}t4ic)6nU}&b?f;% z(KvsDyF7oNha_AR$B(!Gi24C>(CzC&VyNEYp+1dAIYGx(!t4k2jBxqk(`!6kwW+L6 zTTkTd_IU3o)j4;ql3>w;`T%ETPE^AT<_K;1u3f@Pm2xPhyig-waCi!bE|D*THlPJZ zOr8dPAQFt9ZP)TTd8_6=TFypy0L%WF0^O1UA<%PoB~-eVoTxlp<*)Wxt9(^d<$Op< z4n^kHd)21+@V#m+K9o|#FDcv&?5}sKD5vuoXAPN|RO2;Skd>v4lB6&!t~z;~Fs%{P zv!$)`5$autaVO|_$A-5`)cb6weo;zX5@9j?P?`87j}nE06UsAHji+74w!8NRs2CV& z;LlB*;Dz=durHdIXM~^T1iw{R>ucOVsM0D6)NJ%Oyb}EQS1pGdrBKRR+W>1pBS1L< zW-K3hc_Vo&0CLs}bZ$jsCI_)rApBO;)`Q^_tRsvdXVh0$NwpP_y374_!0a~pE3H?2 z8~o(I);E#O@Tc1=xh2g_)xm}(*6WTEwep~eDyiJ)tE=ESYpVfYX|h&;+gMW*z$U8j zTWkHkT5H8(`NxJ}WwYVQni!2$?Q68k89}WdY#;t_z139hw`w`_mLdRK6`RZHYk+%{ zM>krGr@>!=wPkJg)A5jLHTkF$6C?tQybNK8h5(U!8RPmuok(TD%e{WRe2;=M@_V0{ zX}EhWG#e$H!O1Zl@&6yq_`{5cOCP%W(6fuW7XI%GUtDl}LB{;1dH)>bzv4M3XZO#3 zd{*(ywi*9n#v9WQPW!8A@AL6{`a@Yt)j#gCl=WCy_g`6xAF1y1vJ^Ydu0+arwJJ-i z#FQ*lYS&B|sH!PgRbxkb$8Ji~7R6Pl%(#6dw&jfL#kiGiTH1+iA_avZBHUshoAB#U z{O|})Lqade?R!U2P42o+O4C$gnF49)w(<~0s6g(gljUCZ3a_RDFLLTI;!(;LYd@8+ z2UQCB{otsGW=h=>IDGm`i8mj2J1{2^&g*@tWGdk#O;Ke3wq1^JPpWX($ujx`eXDp) zl!>*Tro55hrPy%BU(zyN`Q$|T9+!l)1MC>pI=(a$mzVo;;Z(9ohP=SevVF+*y2{4u zv{Ky=e@T2)k0#@+?btLmGkeOJ93; zN`XoHnI_XG=54g3^_5q$*&; zlTDP>ecS$kC3#FosBc}`u$k+oW=+Z3+YCx1I&~~Lhk{dsuS*B777a>Dr9(K8(g?M3 zdFiq=LM5u|YVAK_+TTny?LUvSeohjJEGiio5-+M2@J^jzgG%M-4l=yEwnmSH#2Gn@ z-E+hc6Ya>09&PjF5X#3CmLS`KVauufHH4F5!d`_->}=WF%L%tdZk&~NkAq#TvShhB zPih&VB2A?ka8cFj4^s?SVt@}HwJ4_%M!x|JMAHBIRp+PCcY**%Y|(6@cXTpvypgIM#Mo&+n(K3P%1|jfN7Y}K9tBzX^s`jv-3NsA(uWPqHfpU4x6GG!24ZG}plPpF3>zm%Z zP0HH_CZKa-&+(uAoc$iFu|juAZ15W3?y6&y_CkSaBu00uOOJ#_O^f)?L?Vm>;iOKF zZK2^*G}3^RiE?Jt#G0kispYoV;~n>8-MTmPQ*0fC^$2o5fl%Vd?;`A?*B{Gx%$xD= zT6RczP4~!n`_)Lt=)Y^}jJTt86uFsw!i*An>>i2tU!vM8_GzmQB+UtXsXq9oK5XKV zLODoZERFvUkmYf$(v5Tz$2={$)}E2*u48BfE*I6r77<~ss}+PeM?2r5j3lg{ zbA0q7=L;RoO`b-iWeuwe(wFBV9-O5>+u>4s>>t?gAl{=IOz1+4`NA)|HjvtRi5PnD1%Xj>T{|V*J!@0(Eptn*J^UFlapu$bJ(9jrS(aJ*+9YYp?x1dkvE`PsJ&zso8A3 z6KtqlEf-_7YY){kI!|{1=vwOc=HRQkPeWenM2fq5dD8NdZ3Bs8 z7ry@^Nz}>mLZ=N@cJ$J4e3(`!@i=f;A_K#YJ@MIDw;O~~6!=x;GHktskHF_KV31M2 z#qqgY`KFY&xDfu+;qjXQaA*?Xwp0KjW8{HUK`yUY{Qt)?mS;S4VBzJ3%NP9X1<%dz zp8x%MAI_UL*Ei?CpYz7-`0S0d{w4nZ$r*n&WBZIBOg}L_bDEv;@A*pdADGDM8TtKA zlpRFI`;REQ4yin)h5`NlCdv-ge)UAzp_;FcC_A*l1ql8sh_XW;ekDZNp#b~s8$^^H zsz%=XkSIGua5Dj}b>9$Wha}{9{}W}0{4T84S45N@s{BfbvO^Uv$yLeMM3fyWzrTpG zLlW4#e~Gd~f9&!SeaS@GAql5_bBMA-f0RttAXOh~v%qmVI1t9pl&bQC%S`bLFpIe~m!*Wnw$pxY@J)(0D!YZsS8P3)^%T<34frb)8FpPg6a&DUf&KCaa6kt;DIiB{69 zDA{pdLXe@4vMAg6(S$(UAL)Dmc|yYCM+d2{QCT9b15|3z+=Wn*VTxN@eu!wFanM0#%>K#a*z8+gB$Tv!qG_b6k}JiKP}qRip-}7ygVf+9EZ@ykX`wek!YGNh4~;{~ zzF!(_APEnqLZhF-Bto*lwE#>f0XR?O^kfLy>qA84epZ$d{(vQZyV)-xZu4*=URl&i z5r$+}(Ox0(c_IsR2cpH|MEY#STduC*uHTblE6W2HYBfq*j9Dm4$E zpU{7oIqf-}X`uLe8^O*UUf^PSO1H=G*Uruzp3l_X zx9r^Ec}VAQO>3t4zF_AL&qXW;bJx)S+&}Ex;W-mCCi?R}VdoCdMyzi%J9l{2eZkHh zp6OyLf1T{y;Tc~6J9l`xYm_RQ@t4fb9iBFEc1Z2qFYMgm48*$M*tvh{1}?rXcJ4p@ z+Ss{&@l~;N|D1()t{JEJI#JH1wF6%tJNKWs6xm-nJNGBZF(YYW+3VYo%pUbfGY|w8{L~W$w$%DJsZ$E*SE$%A2vZ~V!vO1G zerHuWI+iZYlh%{%TZP^C;=y=Fh?GA84skPaLXYCsc1c(ySxzKe-4F=Ek+J#BW`DDv zudemi*4I!W-$)644IZR6EXB`CHSN?Szzo6-NeLhd9=$X|P@~J1E{1H`Tf(|q z_SOe0169>ctAZO@>34*|#gxqhpgo*SG=?o?8!W@^{U@jZ)qHbc#XBT!kh=~f=Mr4f@7PVW%~W4 z`7|XZ?;`y7Co)1A4}bX3KYQr0MVA(RZ{ddv{?meW^Z&>Be?0HMp0{T1KcAa7XLwHL z>_3}bHtV0wdT-``GxL=he=(zU`nBn=PaBygU;TUju^$Z!AEa|D-evI3`YKMQQ!bUM z)4%>T@M?#jbO~hSf>A-V2I_0z)ec)>*m!C|BmbBvkdtaUox+D_z73- zeA&F(;UBmLD(RB1pI1Bl_}9a$9sWM*_x|G54nKCk@M?#D+r0$7T3+q&qpXTk-gw{e zYKMR8tLN1Yf6u*)zAj#E`?td1Wi=jF)66Xw(408s0;^y&%c8Xxbj^lJK+iVBM{dUU z)8n=u2v}voNQQ?=Z}BH813-1b;`a*qL2AbD=I|r#{*-{TAud+5Ag8OrAn&TAQ@q!u zIg|H7*;feJSSt6={!#cl%!o&4q-2HWtu<+{EpTAUXjCH$Q#%^IA`L*ewBPO1%;YC1d{8LqKT-`vNKDmeYW2Ye;ZLBQBf5gu>|*U zqrdb`;8JUX8v;JOWo6D(k5O7!x;iwQ8`-%Pkg9tRO60oykhyezK%Pk_K+3`nfB0Ls z2P?s*XsWed1wpT3L;B_N=7?25G z2n8YOXgX~x{1C!A<>#foPyA*63JqJ8En5lNgp_%hOuI&{q!eW5so44JMm-2?2}CnH z1`{n``vqmYWhg%4f_Y88sk|=zqsT}AM<{4g?*H$E7a^mgpI2`NX8@+68VN$I4%XCA zZ4#`L2+q*X$faYzK!OP!>ps8%(7sANE((`9#mu=hhe#zcuEHgrl&5kL-uriFJ)ZG! z!$be#p`R}5U-Z+3?F%1SaBjhi^Z#uAx_STAyr0g!Fz2u5Y?%G8X8+Nwem?l%&x09w zFar-};2-`B*xwGnfWp4t=(EGWhfv=X`t0ye-8%oTiatBMg!yrz$@dw3cDUFr_4r!p zv%^J9(KnAiJ6z~SU+xe3>~MiwpDva){ng~+1oZ>5t+sCRf`Z3!tvk7kUEvhf7X1y= zXNU9M=;wVvpB>I~qjGo7&2N}KJM8`X=(E>{bKUL{8D>SGv7#>0*`bNObapzN_f8r! z&%qiOP=DQiS2`TEmSK@ys5qGXT#64eVmfp*+W|f=3s^{}K9e+d^Mth8Z|{!Vhp76enm-8( zda^hGl1^+JBPm$V-qgXR`Qe|q*9Jw2PJ_P*!|{5$8JsA9E~0MewtlBR?8=t$qiI83 zNaIwNpjQel`h;kx$xAtJ;{VTFWMw@3dk^hjG{RpV{CO|~4`$%O3_O^D2Q%EEO(??Z0 zivJ^B7lc4&0zFxZ`nUFjJ}tl84FjD?Fatw3ygNQR9PNbgu-}1d>>P*>Lp?9-Rtb3O z7_I5{=P-akOlk@q+KFho(Aw&`Dl~xvTL$+Lct`{oCP6cO`<<#!(hp0>t^`N#X4G52(gsv26#!qdHw_Om9*KJ*qi@TJhNGE)3 z@CYAX+tA$DR6?7H=?;h*>RwpfD2&V!$b_=Js5m!2uOOHD7JZ@RzQda0l>&fbw!LoeObt)pAvX11!eQ5c z2`p{FMBfDhN=vkT8{t9$w=lUAgGF)h&DdUsyVgdOpol_FIL+0qg)=VHgg>#q+qpPR10Lnob zFnN38o+9@XTb9q7pYbR5kGB5wnJ1rt_7x3caBsJa+oO@5 z-5{R#oP3hPBM8eB4_64l2DU}oK93KaAMd{Lm&f;ciQ7E?1-;LXYN78K<@1rj*W-(w@- zlpcNRsd(?@@q?G+eLYV-C3rlx&<)WP^^~yHTpEgYbwO2}8SUdH>x^~Wj9-FqsvRtw z&e#`cz`1!U6G3A`hlS9Vky)|*V6JSB^uQ|IAHQ@mviHoBe|h|H>#tfme|5O!KMr&i z^MAhze`=X2=ib;!-6gX;9v+ULv7;S(`Sjj4OI{(Uy0R`uxza_ix9y^f>nU0Dn^)o| zPeRC*sqYjhUiRR?j_A?u$nHaIa@l3Ax5iJ7=mR2qcIaE=%SNC>JOA?dzT+@$bqenn zpfHg0Y`Y2tCa>Rf+Dcvx9!<-z!W1J0QbxK$@s@CAWVChsFI!&g9;Ep?T}l zXP)%1@i-AMH^q8Rj&I#VzD2O#0R!6E6+1up^XR_5v7tke-kzU3lhk?g=h61GVt z2~@H3d&3U!0al413H6>DKh&DoYGO!u3cO~cRc_AqHNgE-4XkI zyGJr95Ip+;@4=QSuJWBM|!85AEGUI)1;}>}AR&IA@o7HzX5umKvew?bu z$hIL%2X93#bwzIO&y;_>)uQi0jQEW!0wHtq8cWTO%3-atWwLu187svT1YO8Mv1$P- zN~Aa;D$)`F*+IB1FD!{2zbL7fz9G_IJPHj2?satgnP{6Mz7?fWq~DUTQ%K0JP^2d+$cd)F=&J5#CEo#NcK6XS@9=-y~Q^JbgysQbGH71>rRxHeR168W{~SHcH$~Jk5@SC z*nKCX`)(qu>U20Zq-1#4!58ni0vovl4gYgRW2GW`<$7~GAE1#6i;4>h+&xw4ZvrK) zG22s+Q(RP(SD4T1Eqym7|_k5G_`70cA=9zzyRmA*fd{m3OK z+m1%vmR7zdpyqvmN}XkI{#ds>G>puLEXe+?0D$Rj_?!@pd^!+0y)RRs;@fWUT_?As zbOq?BYg@**Il$BCJifqggs&QgL(G4*xMi=2q6}Y&48tw9-?>%I=}^5bGD`CGsF3V1 zghP0R=ug6pFDO_Ka?f#uowm?=^qf>y80UosGjK3A)D_=#T0q*`TT<<`+`H9U>-VOi)=KQhwmpIMMcS8^ z?EWs9HA6k%>@;&z>100{y?#dQ1;g0Lf^iz4oRo`Y#{mw3!0a1}Y)&c!9x}XZH;^Z> zFEP$O4EQkZlXhmK>_SgbL4Iy-UO`cQf!C8?oXv5{_whp_ZR%1f$_hkjA^xMDQoI$zo^A{oO_ z*oyaZjbEgo9>!7(W&^l*n*WdGEHMMKAadM0PV!hW=|@|jH!_NNP`Ipn+h}sox9DLI z6>D~?DpC<_aKAEo=}UDL^~q|kMQqHjel#k(9J(sAcfIj z@C>^;e(eA=3E{H5bT?cd$FWA`?*>Rxn+D|eKD;Z{?#y>K8~*N3W=sBm_Owqk7FEyx zo4LCm`2Y7|5a5CT|G@u$;Qv4H{~!4O*$@2x2mb#9|Nrc#5Bz@<2zucEKk)wvi9GQC zANc=Ax?(*o5B&eXjsI`r9LE2jz9M5$|AKwcwfH9di*igtNK%a9Dk<9$!;$o<3^F2j` zGz-0j-n%22Zp>c=k?i0ODKj7st35~*X^~%#_enOM3MK@S%7no#vS3ectZk% zJI@JiOY3#1;sQ*>(6;N4h`(vFg}e@^yo9%t30EW(X?n3V`70?%lSXXOf7Q%Sc93m+32ba-t(JHQ;pPo9(M*m*8`;Gz=1>uhQ&ir4XE+QM`JBp=;=mRBb_ z`wlU=#64kJpEQ&Sk7-hIL;eC%(m$%*`aHW2RQd7aSH^A%Ew?jbQ=ai-snzJ)_S}+4 zXIH$pS2=9hj#j-7R%P1OXc!anTuCxoSr#d^v70Wd%qP{&zB(!!7JpJ5sMflN`s~~s zPf=b@L1AuDjwdI-*y}ASbYGrSGo#fZf2-G%9Vev``LrLRpCyvzINni#eCG(_v~lP#&Q4IIbdej#J<=E zjsW@eEAgvmCq6;`?bt5n+A#H)v!;h%^cMN%O)wHCM z&+``+6t2(rRjl`UDhhqRoSgFfTz;x3EUw5aH}wqe+bl<*o0pM+9RPU{+fxKe-eqXd zeM3|WT7uPdmIMY{V~^4ZYq}-*!=?la0(-3`p%_567)pjxR!y8JkI|&VMo&AsOh9pW z_6bOMtKpsouj>|y!$}4zoS7Bb+9_qGiV4*rIdCgFbdvw5wvptfPV-O~#RjxP9^-%X znbBPr;asxb3Di{vH#LG~1fSQ9*gnYZrJe%*DytzFY>KtFS+6a#mcO;aTCuFeTHO$| zUTFwa`mCkUcGdVBMH?B;DoHC3?i(Aug!q>G41HC6^bjc-h72VZ)icg$_QJ27Je<1< zth`y?q`ma=JoeIK_JXa&as}4cC+nUiqLPoFj(mEBsZeq#**Tmp1>FYxjEhIFzA4KW zHu(b|2kJh^EdtNHINy7B0Yg4Lsl^3_`JTmz!UbmowVob7cur&~S^au^Cp2DyFr{)? zWc_6EIfVwroNHnH@D6%mk&#cUR%Rb%Itf#OK;P#im#Jk?((m?ta%;LO-ORh(N5fmW z2v}R?u8LkhIUf3S>}H!XTRDVdrW{Z(%||Ki+QXYvL9<=rpWY<>D>c`bLh>P^RysEksjm@S) zFIudbCGVwnXW+b;2tB(qbznU9HDBe&%DBZ{D*KtG)^k!L=Gsqb^ia9i@6TWFsq}dZ{P{)eed~SY@B~y=P?nJE^Z9+n#YOA$Jb6V% z4{64bs%FVGJ9%GA2CwRd7gBQVq$^=+GbNc$^+K}b%$5EaJG+|?xg{@TR9U3h>0=h9 zF|3$VZlJB&U2W{K@tzYFn^tWI*|FfGg@?^Q>8ChT@cfw59E$X%6 zSI=1St2d~7v&0m;dJ205Wg`cOZAon(Wq|#=rJ8Tzb*g`)WRF8(a<`KjIc$t#CtqvC z+)`@jpnkD6fQq3kRaMN7JCAPjn>=Y;@8rTJP$N zUfPDGD7kJ|zfjEK@a!Fr^IYtV12@G0FqbpW6>B}|S@LLwlQhMiSmC_YF?OkrWP2vr z#~f5@`E^S9mFDpE123}bRLx!2pQP2J3za1WVyb2{iqr&Dq}OHjbcj|zZ7-R*(;qQrl4VL;As5xD0LrNFq#;<84gCgy_r38f(4Z zUs(>gs#OyV)-SOz>^D&DUg5Wz>-e7ya-6Mv3lf#44>mT}$d`ps#Cd42t})Z9Xn>+8 zi=K=1freU0c%?dUJq&|ZV{>_J0A3k+*Gv9}4gMPcW^2u|6;_E%%1eGeiy!wr$GUQeMO%`}LANnhr>}g=QKKa3OPkSGE^683T12tY* z^}&isX1cx^|23Y}TY{+zfE*kNg>C7MZ>c{-&(*=E^F6( zvq`^jUrQ$+ZG7~S<)oawz`}(YCH6GC_!*f#hxjNzODgw@vRfOkT=L74#w*Y`f=)fzG}}L2upr}UpZz2g{piy=d5s$aH8qorZB4MQ zs-oIgSG6+WOtbl9sjm(dVATg3n#?IwePDjoX!$A{f}rivzS)exOOZO${Qr+LEgDvw zgI}XMq%r9Q$>QhIGq)sPj#^o@zosT>lZ2illHmPi=mn4WvF|;-37@r*qfqY8+E`zg zwYjR$JIN?YY9P5n12nzSSiv}1fb2=W*yyhiH5KVR8M$#adVnsc!3i^0BR|&arQ!xh z+s{+$Xp|q}8Ty*;{Yw%Y?4}lbmleHyIM%(#!U(Yx5L|sI3=Dmjc*LKb<;T0FzkQ}W z1?VMx#H(vdS0>Gsy$~8$Pp#)k?_(KHZzi1PtIPT%P|2EB27H^FCz&bgS!;d44SXW| z?$1+2j2Ev}srtT&k0*-+iZmEfIr@=gao(G|Amd5DUG|(Tov?k^XKnhVFnGBu)0g6OpYqAkjAStq+NGZX@P-_k7>} z?%M~JFE~&7jyvbtgU66xyWt7%6OTPDCg{gm6&wA;z-SQ5%Pr2EY?O?!&=+jpoITm+ z|MGbENt&lD)$~?V(A<4SVXRudV%0ipf}KqspLmulZ;@PBInZ_$CO&wV!nK=ci`JWE zFE=aVs|(cnvnoK!=Mt@{;bKD@Wi|Odlbxy812w_dg3Zv5Z?0v9QhygfFs9kr!=AcbnUy4W=knXzEe4**sNyp#bijK7~Yv_PGV`&N&L8~xOkHBF0F0|*7{3> z!8(Z#Iww&+>uA2)4%|JQL~6I=L{&xYB@gxgZ|{75nh2se-U=rSCjJGU3YtjW-LlRgcP-x?i z$Za;8G<%qI<}+{K?3?$^oAV><{o~%LMavu8e`>D`jTkIN?DD{Uz!EfpJsG&X;_rN3 zp9X*A^e}F;XyHzsc6tvlAzK?-R>qOn>u)bjo$2?E!P=)4bPaz}4|v5;)1%Gz|72&o zFTQ^UegAH!y@TJfSI;4#bNu?z;Tp;noLPr@deb`}7RzneKY9A>$A_!xbcUIZ9Vi~`7 zPwZy$?}IE3X@q`BqPn3cmiw5i#Y_ zRc|gh7n+G$Qw?`$Ua9A&1kxZ}|Er;r^rHMeE2^WIt1&VU}MUUiW^MZdq ztW+Z9Sdw>?@+DQ!bxzd8QaGwCS?dYTm!5T{GTC@etNL7iXF@8ldT>UHSu~kRW~!dB zv@dC|z+P@P8A`^d6Hcy0d(#@v z&iEO=5ww6>N4&lo*cU zDUp#UISViIvTSE%dWzyWnYF_+ElCp1SVc;3Kpmn1Q-u{HM{nDQ2YXn5bRGS?+`n-f zsU`MT@g_RVGu8oT+ zIepw7OI15tPda;_Kp0@|9Bd#RBxsjb9z)i@8~#&pj02pUz{By0t*oBK!V9QP)sz1> zj^+(;lZy}_1PB2_fDj-A2mwNX5Fi8y0YczE5m>njH2}LIziB`qNn(By^Ivexf3&fE KyuO7?AO8gJ_Fe`6 literal 0 HcmV?d00001 diff --git a/resources/db/xianzhi.db b/resources/db/xianzhi.db new file mode 100644 index 0000000000000000000000000000000000000000..e87ccc24f17a7531d539d2f3ab1d6719ffbc9ecf GIT binary patch literal 24576 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 literal 0 HcmV?d00001 diff --git a/resources/history/baidu_news.md b/resources/history/baidu_news.md index e69de29..ebecd89 100644 --- a/resources/history/baidu_news.md +++ b/resources/history/baidu_news.md @@ -0,0 +1,7 @@ +#### 文章:[title](link) +**描述**:description +**上传时间**:update_time +**来源**:source +**关键词**:keyword + +---------------------------------------- \ No newline at end of file diff --git a/resources/history/github.md b/resources/history/github.md index e69de29..43f67ef 100644 --- a/resources/history/github.md +++ b/resources/history/github.md @@ -0,0 +1,23 @@ +#### 关键词【Keyword】发现新项目:[title](link) +**项目描述**:description +**上传时间**:upload_time +**开发语言**:language +**作者**:author + +---------- +#### 项目 [title](link) 存在更新!!! +**更新时间**:upload_time +**提交者**:author +**更新描述**:description +[点此查看提交详情](keyword) + +---------- +#### 大佬【author】上传了一个新工具:[title](link) +**项目描述**:description +**上传时间**:upload_time + +---------- +#### 【author】为 [title](link) 发布了新版本,请及时查收! +**发布时间**:upload_time + +---------- \ No newline at end of file diff --git a/resources/history/sec_news.md b/resources/history/sec_news.md index e69de29..dac84ed 100644 --- a/resources/history/sec_news.md +++ b/resources/history/sec_news.md @@ -0,0 +1,8 @@ +#### 文章:[title](link) +**作者**:author +**上传时间**:upload_time +**描述**:description +**来源**:source +**类型**:category + +---------------------------------------- \ No newline at end of file diff --git a/resources/history/tech_passage.md b/resources/history/tech_passage.md index e69de29..dac84ed 100644 --- a/resources/history/tech_passage.md +++ b/resources/history/tech_passage.md @@ -0,0 +1,8 @@ +#### 文章:[title](link) +**作者**:author +**上传时间**:upload_time +**描述**:description +**来源**:source +**类型**:category + +---------------------------------------- \ No newline at end of file diff --git a/resources/history/uni_passage.md b/resources/history/uni_passage.md index e69de29..10d083b 100644 --- a/resources/history/uni_passage.md +++ b/resources/history/uni_passage.md @@ -0,0 +1,6 @@ +#### 【source】RSS源发现新文章:[title](link) +**描述**:description +**上传时间**:upload_time +**作者**:author + +---------------------------------------- \ No newline at end of file diff --git a/resources/history/wx_news.md b/resources/history/wx_news.md index e69de29..940d8dc 100644 --- a/resources/history/wx_news.md +++ b/resources/history/wx_news.md @@ -0,0 +1,6 @@ +#### 关键词【keyword】发现新文章:[title](link) +**描述**:description +**上传时间**:upload_time +**作者**:author + +---------------------------------------- diff --git a/resources/log/core.log b/resources/log/core.log index e69de29..73a42ec 100644 --- a/resources/log/core.log +++ b/resources/log/core.log @@ -0,0 +1,96 @@ +2026-05-17 22:31:06 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-17 22:31:06 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-17 22:31:06 - INFO - __main__::171 - 程序正在运行当中。 +2026-05-17 22:31:12 - INFO - spider.common:doonsec_main:166 - 数据已保存到 ./resources/JSON/doonsec.json! +2026-05-17 22:34:13 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-17 22:34:13 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-17 22:34:13 - INFO - __main__::171 - 程序正在运行当中。 +2026-05-17 22:34:18 - INFO - spider.common:doonsec_main:166 - 数据已保存到 ./resources/JSON/doonsec.json! +2026-05-17 22:34:18 - INFO - __main__:send_job_RSS:99 - 洞见微信安全数据为空,跳过执行。 +2026-05-17 22:34:19 - INFO - spider.common:seebug_main:76 - 数据已保存到 ./resources/JSON/seebug.json! +2026-05-17 22:34:35 - INFO - spider.common:anquanke_main:112 - 数据已保存到 ./resources/JSON/anquanke.json! +2026-05-17 23:46:17 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-17 23:46:17 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-17 23:46:17 - INFO - __main__::232 - 程序正在运行当中。 +2026-05-17 23:46:23 - INFO - spider.common:seebug_main:76 - 数据已保存到 ./resources/JSON/seebug.json! +2026-05-17 23:46:24 - INFO - spider.common:anquanke_main:112 - 数据已保存到 ./resources/JSON/anquanke.json! +2026-05-17 23:46:25 - INFO - spider.common:huawei_main:148 - 数据已保存到 ./resources/JSON/huawei.json! +2026-05-17 23:46:26 - INFO - spider.common:qianxin_main:184 - 数据已保存到 ./resources/JSON/qianxin.json! +2026-05-17 23:46:26 - WARNING - spider.freebuf:freebuf_main:71 - 解析或保存Freebuf RSS内容时发生错误: not well-formed (invalid token): line 1, column 13 +2026-05-17 23:46:26 - INFO - __main__:send_job_RSS:126 - FreeBuf数据为空,跳过执行。 +2026-05-17 23:46:27 - INFO - spider.xianzhi:xianzhi_main:67 - 数据已保存到 ./resources/JSON/xianzhi.json! +2026-05-17 23:46:33 - INFO - spider.common:M_4hou_main:94 - 数据已保存到 ./resources/JSON/4hou.json! +2026-05-17 23:47:01 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-17 23:47:01 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-17 23:47:01 - INFO - __main__::232 - 程序正在运行当中。 +2026-05-17 23:47:07 - INFO - spider.common:seebug_main:76 - 数据已保存到 ./resources/JSON/seebug.json! +2026-05-17 23:47:08 - INFO - spider.common:anquanke_main:112 - 数据已保存到 ./resources/JSON/anquanke.json! +2026-05-17 23:47:08 - INFO - spider.common:huawei_main:148 - 数据已保存到 ./resources/JSON/huawei.json! +2026-05-17 23:47:09 - INFO - spider.common:qianxin_main:184 - 数据已保存到 ./resources/JSON/qianxin.json! +2026-05-17 23:47:09 - WARNING - spider.freebuf:freebuf_main:71 - 解析或保存Freebuf RSS内容时发生错误: not well-formed (invalid token): line 1, column 13 +2026-05-17 23:47:09 - INFO - __main__:send_job_RSS:126 - FreeBuf数据为空,跳过执行。 +2026-05-17 23:47:10 - INFO - spider.xianzhi:xianzhi_main:67 - 数据已保存到 ./resources/JSON/xianzhi.json! +2026-05-17 23:47:16 - INFO - spider.common:M_4hou_main:94 - 数据已保存到 ./resources/JSON/4hou.json! +2026-05-17 23:47:17 - INFO - spider.common:doonsec_main:166 - 数据已保存到 ./resources/JSON/doonsec.json! +2026-05-17 23:49:16 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-17 23:49:16 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-17 23:49:16 - INFO - __main__::233 - 程序正在运行当中。 +2026-05-17 23:49:21 - INFO - __main__:send_job_RSS:127 - FreeBuf数据为空,跳过执行。 +2026-05-17 23:49:22 - INFO - __main__:send_job_RSS:151 - 洞见微信安全数据为空,跳过执行。 +2026-05-17 23:49:30 - INFO - spider.uni:save_to_json:69 - 通用爬虫数据已保存到 ./resources/JSON/uni_rss.json +2026-05-17 23:50:04 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-17 23:50:04 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-17 23:50:04 - INFO - __main__::234 - 程序正在运行当中。 +2026-05-17 23:50:10 - INFO - __main__:send_job_RSS:128 - FreeBuf数据为空,跳过执行。 +2026-05-17 23:50:11 - INFO - __main__:send_job_RSS:152 - 洞见微信安全数据为空,跳过执行。 +2026-05-17 23:50:17 - INFO - spider.uni:save_to_json:69 - 通用爬虫数据已保存到 ./resources/JSON/uni_rss.json +2026-05-17 23:50:17 - INFO - __main__:send_job_RSS:160 - 聚合RSS数据为空,跳过执行。 +2026-05-17 23:50:19 - INFO - spider.baidu:baidu_main:133 - 关键词【银行测试】的百度搜索内容保存成功。 +2026-05-17 23:50:26 - INFO - spider.baidu:baidu_main:133 - 关键词【APP逆向】的百度搜索内容保存成功。 +2026-05-17 23:50:32 - INFO - spider.baidu:baidu_main:133 - 关键词【渗透测试】的百度搜索内容保存成功。 +2026-05-17 23:50:37 - INFO - spider.baidu:baidu_main:133 - 关键词【手机银行漏洞】的百度搜索内容保存成功。 +2026-05-17 23:50:44 - INFO - spider.baidu:baidu_main:133 - 关键词【银行漏洞】的百度搜索内容保存成功。 +2026-05-17 23:50:50 - INFO - spider.baidu:baidu_main:133 - 关键词【支付漏洞】的百度搜索内容保存成功。 +2026-05-17 23:50:55 - INFO - __main__:send_job_baidu:188 - 百度搜索已完成 +2026-05-17 23:50:55 - INFO - __main__:send_job_SX:169 - 微信公众号数据为空,跳过执行。 +2026-05-17 23:51:56 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-17 23:51:56 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-17 23:51:56 - INFO - __main__::234 - 程序正在运行当中。 +2026-05-17 23:52:08 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-17 23:52:08 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-17 23:52:08 - INFO - __main__::234 - 程序正在运行当中。 +2026-05-17 23:52:14 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-17 23:52:14 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-17 23:52:14 - INFO - __main__::234 - 程序正在运行当中。 +2026-05-18 00:09:22 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-18 00:09:22 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-18 00:09:22 - INFO - __main__::234 - 程序正在运行当中。 +2026-05-18 00:37:45 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-18 00:37:45 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-18 00:37:45 - INFO - __main__::234 - 程序正在运行当中。 +2026-05-18 00:38:01 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-18 00:38:01 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-18 00:38:01 - INFO - __main__::234 - 程序正在运行当中。 +2026-05-18 00:38:06 - INFO - spider.github:github_main_keyword:56 - github_keyword:关键词【未授权】获取开始。 +2026-05-18 00:38:11 - INFO - spider.github:github_main_keyword:56 - github_keyword:关键词【POC】获取开始。 +2026-05-18 00:38:15 - INFO - spider.github:github_main_keyword:56 - github_keyword:关键词【RCE】获取开始。 +2026-05-18 00:38:19 - INFO - spider.github:github_main_keyword:56 - github_keyword:关键词【反序列化】获取开始。 +2026-05-18 00:38:23 - INFO - spider.github:github_main_keyword:56 - github_keyword:关键词【webshell】获取开始。 +2026-05-18 00:38:28 - INFO - spider.github:github_main_keyword:56 - github_keyword:关键词【CVE-2026】获取开始。 +2026-05-18 00:38:32 - INFO - spider.github:github_main_keyword:56 - github_keyword:关键词【内网渗透】获取开始。 +2026-05-18 00:38:36 - INFO - spider.github:github_main_keyword:56 - github_keyword:关键词【漏洞检测】获取开始。 +2026-05-18 00:38:41 - INFO - spider.github:github_main_keyword:56 - github_keyword:关键词【钓鱼】获取开始。 +2026-05-18 00:47:21 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-18 00:47:21 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-18 00:47:21 - INFO - __main__::234 - 程序正在运行当中。 +2026-05-18 00:47:26 - INFO - __main__:send_job_SX:169 - 微信公众号数据为空,跳过执行。 +2026-05-18 00:48:24 - DEBUG - config.check_config:get_core_config:22 - Debug mode is on +2026-05-18 00:48:24 - DEBUG - config.check_config:get_core_config:23 - Loaded config: {'fs_activate': True, 'fs_key': 'aa04a02f-d7bf-4279-bd48-44c4f28c8f74', 'fs_secret': '4tq65T4jm1MO2IlxvHxBWe', 'wx_activate': False, 'wx_key': '9a3dd6ff-75d6-4208-bc4b-77724a5805d6', 'ding_activate': False, 'ding_key': None, 'lx_activate': False, 'lx_key': None, 'mail_host': 'smtp.masonliu.com', 'mail_user': 'test@masonliu.com', 'mail_pass': 'Test123456', 'sender': 'test@masonliu.com', 'receivers': ['2857911564@qq.com'], 'e_hour': 4, 'time_mode': 1, 'mode': [0, 1, 2, 3], 'url': 'https://info.masonliu.com/', 'debug': True} +2026-05-18 00:48:24 - INFO - __main__::234 - 程序正在运行当中。 +2026-05-18 00:48:30 - INFO - spider.sougou_wx:sougou_wx_main:96 - 关键词【银行测试】的微信公众号-Sogou搜索内容保存成功。 +2026-05-18 00:48:36 - INFO - spider.sougou_wx:sougou_wx_main:96 - 关键词【APP逆向】的微信公众号-Sogou搜索内容保存成功。 +2026-05-18 00:48:41 - INFO - spider.sougou_wx:sougou_wx_main:96 - 关键词【渗透测试】的微信公众号-Sogou搜索内容保存成功。 +2026-05-18 00:48:47 - INFO - spider.sougou_wx:sougou_wx_main:96 - 关键词【手机银行漏洞】的微信公众号-Sogou搜索内容保存成功。 +2026-05-18 00:48:53 - INFO - spider.sougou_wx:sougou_wx_main:96 - 关键词【银行漏洞】的微信公众号-Sogou搜索内容保存成功。 +2026-05-18 00:48:58 - INFO - spider.sougou_wx:sougou_wx_main:96 - 关键词【支付漏洞】的微信公众号-Sogou搜索内容保存成功。 +2026-05-18 00:49:03 - INFO - __main__:send_job_SX:167 - 微信公众号数据获取完成 diff --git a/uninstall.sh b/uninstall.sh index caef63b..48591fd 100644 --- a/uninstall.sh +++ b/uninstall.sh @@ -6,6 +6,11 @@ echo "==============================" echo "开始卸载 PyBot 系统服务" echo "==============================" +# 检查是否以 root 权限运行(部分操作需要) +if [ "$EUID" -ne 0 ]; then + echo "⚠️ 某些操作可能需要 sudo 权限" +fi + for SERVICE in "${SERVICES[@]}"; do echo "" echo ">>> 处理服务: $SERVICE" @@ -14,6 +19,7 @@ for SERVICE in "${SERVICES[@]}"; do if systemctl is-active --quiet $SERVICE; then echo "停止服务..." sudo systemctl stop $SERVICE + sleep 2 # 等待服务完全停止 else echo "服务未运行" fi @@ -35,12 +41,18 @@ for SERVICE in "${SERVICES[@]}"; do echo "未找到服务文件" fi - # 4. 杀残留进程(保险) + # 4. 杀残留进程(更精确的匹配) echo "检查残留进程..." - PIDS=$(ps -ef | grep $SERVICE | grep -v grep | awk '{print $2}') + # 使用更精确的进程匹配方式,避免误杀其他进程 + PIDS=$(pgrep -f "${SERVICE}\.py" 2>/dev/null || pgrep -f "python.*${SERVICE}" 2>/dev/null) if [ -n "$PIDS" ]; then echo "杀死残留进程: $PIDS" - sudo kill -9 $PIDS + sudo kill -15 $PIDS 2>/dev/null # 先尝试正常终止 + sleep 2 + # 如果进程仍然存在,强制终止 + if ps -p $PIDS > /dev/null; then + sudo kill -9 $PIDS 2>/dev/null + fi else echo "无残留进程" fi @@ -53,21 +65,54 @@ echo "重新加载 systemd..." sudo systemctl daemon-reload sudo systemctl daemon-reexec -# 6. 可选清理日志 -read -p "是否清理 PyBot 日志?(y/n): " CLEAN_LOG -if [ "$CLEAN_LOG" == "y" ]; then +# 6. 可选清理日志和数据 +echo "" +read -p "是否清理 PyBot 日志文件?(y/n): " CLEAN_LOG +if [ "$CLEAN_LOG" == "y" ] || [ "$CLEAN_LOG" == "Y" ]; then + echo "清理应用日志..." + rm -f ./resources/log/core.log + rm -f ./resources/log/app.log echo "清理 journal 日志(保留1天)..." - sudo journalctl --vacuum-time=1d + sudo journalctl --vacuum-time=1d 2>/dev/null || echo "journalctl 清理跳过(可能无权限)" +fi + +read -p "是否清理历史数据和缓存?(y/n): " CLEAN_DATA +if [ "$CLEAN_DATA" == "y" ] || [ "$CLEAN_DATA" == "Y" ]; then + echo "清理历史数据..." + rm -f ./resources/history/*.md + rm -f ./resources/JSON/*.json + echo "注意:配置文件已保留,如需删除请手动操作 config/ 目录" +fi + +# 7. 可选:询问是否删除虚拟环境(如果存在) +if [ -d "venv" ] || [ -d ".venv" ]; then + read -p "是否删除 Python 虚拟环境?(y/n): " CLEAN_VENV + if [ "$CLEAN_VENV" == "y" ] || [ "$CLEAN_VENV" == "Y" ]; then + echo "删除虚拟环境..." + rm -rf venv .venv + fi fi echo "" echo "==============================" echo "卸载完成 ✅" echo "==============================" +echo "" +echo "📝 提示:" +echo " - 配置文件保留在 config/ 目录" +echo " - 如需完全删除项目,请手动删除整个项目文件夹" +echo " - Python 依赖包未卸载,如需要可运行: pip uninstall -r requirements.txt" +echo "" -# 7. 验证 +# 8. 验证 for SERVICE in "${SERVICES[@]}"; do - echo "" echo "验证服务: $SERVICE" - systemctl status $SERVICE 2>&1 | grep "could not be found" && echo "✔ 已彻底删除" || echo "⚠ 可能仍存在" -done \ No newline at end of file + if systemctl status $SERVICE 2>&1 | grep -q "could not be found"; then + echo " ✔ 服务已彻底删除" + else + echo " ⚠ 服务可能仍存在,请检查" + fi +done + +echo "" +echo "感谢使用 PyBot!👋" \ No newline at end of file diff --git a/web/favicon.ico b/web/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..edab23335eaaa20dd24680d1fb718bef94e5a7d5 GIT binary patch literal 38700 zcmeEt1y@zk7VZWFl#~WZ$wLd$jWkGiBi-GNNS8Fy(%s!C-65UQ9n$^wx%b`oE1qLG z&KT@-_F8MMncw_on1Y-HD$+Y7002;>Bt?|~02TuNXL^kQ{v}c6A_V}*04Y&n75DU` zl{Y#GGxvyRyC29ParlNw7OR~WNhSrwO~$FxNe`G7Ctv+FlcY|xPGkx+ZLM=Ci}REU znopZ$iY+`DhZ*88F%S{{Mgf zlYjy3NTyb*Q$=7dP$m1g8RIp5yhLKX(epv)lmCX%NQHn>IT{QS@K(^VCkg?LPgYKD z9~U!m(K>8{tky#=-=d2oe@N@G5`j; zuN43ye01cC{B|#|@7(WYBXjcdF^IXR0+=M7y??pir#YVaqq9D*5G#XsE;NQz5cUat z4-5>FKimc)y8A>4vv}+zL|$O-Mt~(DF3vF9eCMb- zbShAJn;(m%dsiC#IR_r7`tS+@pau7rSIVSy5JPgl!=9!@2o@Az9?wsP_~EGIJ-q@L z-hk`mVo;EC+O^1P*`%1MppA=kx5S78gm+spK_-P_H^rp7z}O#TaE(lDL4tGd12o$v!#vqv1X}T6_5J#0t4WHw`>q{J4UQ(UiCuT;yIIs-9FKL+n|x#2Y)>+ zACrp?WAIAM3i=X>FMn%Q5oqG#u@rm5-|Ptj*|6XNcz+uidYkW#t>$@#*6B23zx!Z- zbdL@c`GZGa{T4Kur#;A2@)gU0CXtsHi`}Lr3?9K&1iCP&74sO+lj#E3q-)aq<@Vc~CmMKwqgN`oHH9dwWvOf9DpZ$Hgi8 zp4VP746}SVV4e^Fl~4Y#28g#wqwMA@Eq{l`MJfBPk9moGz$Z@P$Z+!kXQ2cMDSJ{# z^lnYH0ej86*Ht&G5n{+TiIDQk*ER!rk4U9jSp&+Y{LsmO$2s=j#lIs5TA{F2xwz{gjtx7?+L zn6up@0UAi4#0Yz1h#Ydq1+#<-*ozWYRvnyV3Q70{Ok~rjb1MP=eCP{QhjXc?d)KVK z53TpCe^$BKhqL~-CALQc7)TXuz*Gr)Z}z2LUIqWmv&=WV=yZ3doLuk5nuHn~^Z*f` zM9ikI4oRf(;G7-aTdsP;5pvm+-oFMk-a*&@O+mgm@$AE&KvJ(UvimcH=}S8?P=yN` zQUf)gH^NGL>2-FmCvOH%P<4Y1)`TF?^$vO+Z=btEe(&{@5@MNII?8j=oEVdpT)Fe5 zaiS|P!uijTN#S;hpTVtpOyKE98s?N~sQwFUs;8J;+Mh%3egkOWfJYjOqDt(9DR@m5~1V%7j2hbhB zDyn&36tqrJFe(QR+-#fA<_~jUz5%K@z^(K2<1wEIA)>pIC4TJV;l@y{bchZ{>9*_z zvXMaxy<}oFM942FL6-YgW1?KFUddgin5%M$2u#3H4#Mu?lk&P!X7H=a&tME~X#@ro z>9zY(3UBrXj|n$YBT3$VC<%P~bthZhbCcfC<7a z@b|G0`VOBZv6+Fe5q<|3*}@9lq^cxl>Kt^ye-*-rQpHvs{n~%@W)nW^GW!kITumLD z%fkmQj2W-%54`SG#WfiK7k=N-0maOLeFUPAT}}>l{I7LUI(>m32xyPM90_oV1p1Qb zvzt{y`CY$?(#udColtM@hN`YEo2F|ZTYW$nX5vkURWfI}F6UP+b=T9xi1&NaiI@-w z2)Ny0;S_@?OT$Sr`2uz$zpfAfZGUY( zK&@|gv387goLbISwJ4IeG;%Fi-yZ4}yX4;~oa57Qx4){KC?u zV#!FKq9H0Iv_4N>z@Qd-$f+8W>Ak7^cXZb&KLWN7Qspvu#A`qswYP!kQUh(gyP z6uZU1chbFkRCKCF*8w)qe_Qc1^XHr6e_LQRaN~^YgNU#J8O?V*+OKG&Z+1>HKRrFj zceBF-+99CFhIMyuVm@A53sgbV4!?5E^z$Vo6yQUf!v?I0LHm^n4NZ}DJEdzY9111z zK6?ibAKiEL3h?r$)C78O^Q3<7fvG~tHMx`gP}AFbtHwB&eNVJGEZ_(R46@i@rqH7N zc|=2+vt%huGO}E869p9hKRr~o*5IXf3$-ccW?0{xG&Ds6vq7vzHt!MPg%Yc(2*|k<>pcjf z)!oU$U}34(-@*E~cQcXz@VCE$GWNT=$E25LdxMI$Bdj#D1VS88VY*g96;pUmXUUqs z8c(RkxB^=U9AZYnw{LVMdOFL4LMo>}ejiQzENF5C?gKyz`0@%~NG5i;fDTn|pl)@{ zA12;m1?b9rF9b93Iwq=IUb_K>93IYNnJ7K<%GEp7+OWG@+x~ywkk**DmX>x@cHB%z z!!)8-mCiO8!AAzJ(ZQ`D+&#ed31s~7Ka&!S9+V@gw&?Esu_3S&KfstM`z(1%`VNKV5-bbWE z57=WvpUGw|HRmFsUJHt;S9->O#Y;GvW*QTfO|$v3)X<)Dz5^p9f-gJ?O{JtM_`Dmq zxfH*GF8HiXSOm6jg9pZ+Lf9Wx;S(QqUx@3`k&SOd+^L+2PN<%z1&-I~>8lDXfD5zC z6h%Sl=a*Vq?gg=h>F4irql>IV3M_$&3RRNq zCV`kt(az@*YOcQpw8#8>apq_1Z<;uO^&-&Bu;JEfni0yiIn!05(nDVyT)_}(O+m=# zj$VNZaM6LL+>1fN5{QY#KSR~WnlrSTO#3>l8d#r){uV>OqmAl#al7!6sa7)b_z!Jl zy_Flm96Ufo5N8Y%zSx<{&MUh1vYyL;J~kM3t1RDJYt*0F&kj??FBvz3I}`~M?mwQw z5-OK@rie2&JkbK?R0m6L)D?&T0E!psR9zyvX|gMzaDSsWHE&PscSc5-R^5CThuz6n zdRT+B4_|W_!I*+gO=np%wEnFpZ7~pCFE_i(p$QiN2%tOkw_DbT=di|?rVAm|)d^j! z*X?a_ai?2^SFbDE|0R>le# z|6`H=78c(TpSux3ZxMqkrHMTrMgkh@;}g_V3Xy~?E7FK)w{%|b zxp=YcHfp1e=bvkG8`=Haf4>fI_#Oz07Qw7B5g1K$uIlov)26OkWFH6{LdJp%WT$}X z1kqeg(O^PS!O114D_V`wCceHj6T<)yjz|Gn|967OQ@C zmW+*qN#{6!W6bf|3%Mtr|EAD?bpMCbsgK}4Oo$}YLNhNq zz<&yKNoWE6q?`)Qm+qQsWe3mErQrUK@cX=dm~+)(fCMyHYWTY?t0HQIna4x z0R9bcv;BRv8m!;xwx|TEFpg8sE_v+yfU};;`*2AH0LP%TTYq!fmPrwEpioV3#A@wk z4wMU=31Qwn$P1mq019wYH3okFxANHFh>X*e7d5mVPO{SM^hKQT0)RhVuaV|)NJw^M z9&T>P*u{DY2z_qXPZ~}kY4gM7M zKQ5zx8Z|K^M#HYq_1K-mY>epg9RSpWzjX~D2)n(5frX3#WVohi-)P_?}@B{99@tBT2Z}$7i-ki|x zkLXbL&Hi6Ybp}Cz*G8^av6e32MJ_d1FQ{OoLzEk=>8?D9Re8b91=EpKX?ia=VSt{3 zU+Dujq<=%y@CeL)YgvqPCS?GC0rW)%@wcn(dUc*x5G9YSnomK5*dL6EJYNI;+u*G% zVPkLyR_GMx9L?*3JG3Mo*7M^h;eQ2m{R6Lb^sm({TOOnKJw2~2jkrqv0Xz~KlJF@2 zRH1EU`yXSN^ftyVORAoPfg<&46e|;ppu7Z~{UP+Su%8EM`1ke{^_6haxd=itz5jhk z6Yvr6L;(D+z=*triNpS5Y6_dG&ygHG#`qoI9^54eRUZCgB&i|*5eJ40L49@2ndn+% z#o7YG6u&Mx?Ngk`voDOs@b{DKw*5(<~Q zdgV-;geyA`I0JWGS*BcgA&pMbC1*gbS@p(ycZ`nBeZr!}b5sWOz>j}Jn5U)`AJz&NMiD3maZJvoS)D@# z1*lGz2OH}hgGrY!1-aMsYl9ybNVGe=kz9`6{ydJ=CKdD^$oTckY+5iZQ>Cj&(iBBq z(rt_T<#1$w$NO?m(fZnYL=HvaHFysv=P8K-bv|DD=N8#p4`JO>-nIPQ0uR<-buSSx zMpl}QAbal_`pxKbm%F8A`%NC={{zxP`tmlDG&rcmK3G|4R~1W33dTDTf6WWyW*`) zHSf1!SFZ0kmIuY#2(1qJ1N!?3_b$f!<0p%lxEw$LV$qr6aPHKUDj%BQ1*KfK z%WhE*ke-toIt;J0KDk?4`z%=y0mGmnQAi{>Qn4Q0>hEa>ZrAUQ?hel;U-2@8X?r|x`7 z*<$~*p=Og_Ik?CsZKh1S@ngd(@_)dgr~ALsZW{;Ee=2lQtk$06rk*tLq2L@gAtAZ= z9|nx{fwqJ?ww%*WyWhK`7t^Xnz}{={=u{mhGA>%A$#(&z+lV0$iCr)(Xw_d}8`B&f zf0G!=?s-V0k#1_m0%KjV>bP=HZ^Z5th{oWqogOdQVq<-r-FSen!g#G9lm!Y@apQ&0 zN%gz=SByl)H0jFr>o-;#@rH-|{t^$eQnsP1`K^r+7u!3bLhp*2zKvkWjh-b={VH}C8~2&WYUMsv^&Ko* zVAx_^5C--{R#nvkgV^7$U`RYM-#pU}-``rZ8$6Rr7^^6(lX|7Fk{Rh;clKkaWxW$~Gz(o<;$kq;T`yT6aVI<>nn zsi_&FB9E)L4laTeJTX&cvQ*e%g`gJyX&*%l{Ve z0b_VecMOqh?zp;~f|lB&LZS>dku_;pb?6dSh<)(B_o)#=BGY49xl@(xo;s#Bj2#&v~yWK$N{eafSL!p zb}MVMcqU6mE2*}%K?=s~?J*)on$luscaQCu}A*G}06_-DCTRk8gg z!-69Pu!xFEvo^FtTQb1I(}~PnZnk+sUubnhtuq~!^u4W0n~BMXkdvEDH9K8N7GBT~ zwAsggYjeo$ET?%7XAVN+8v5?HC@smU&E)L`J*^$dbL?K4b|HS3ilq0?4@r3;=$b}6 zlUaVV1)-q?vjPdf&c+4pdsC{eDN6KoTWwN@qjPhptr``9 zr9c3_jE3A0Y}phBpB`~1&?kRt_Zt0z`mSK72Z&KE1oTh>V_pje%oLlY0;pFeB&P2aE_$^TROnm51bj#&NV9Z<*cN?>{^F8s!|2CE0|En`19O zy^QxFeX*@xB_rFD8?ABX(=y2iXJ39hXMIC~_7bYNI@}e_c-*t$ir@XB-~9BaMU~-j zhJKZ)!d7GNvvjkO!u87MSI{KLQ`03pf|BHcc|`h!LVuBUjjNjYJE*R;H%z(>AOd)V!T-X*P5Pr z36f?5L6cr5F--^he7OFc(I$_hV(gK_%e^|$q|O6+L&7t|woV0E z=GH_zr|DjkE2mLYdk!mk1Bjq%Foeete1!I!Dv#jQDH&Z)J3`yfexbHD)lAY;SAp2= zl39V5HS3LNU@5t@@y+RJUo!KYNf^V!?dHD9;ki@(VrT@>PwjrsYraIQ2g3}oIem6@|`}qB6+Lz4`1~iVz56GcIP1d>6H_@dNWvN+*O1!24>S_4&byUNGru5 zf|;|FYCNz9x{4|ymdmW~3SweAVQs>S(9(;Dt(T;tXk=5P(YC3i#&AJTE;#aZPdw`8 z3sY{&FHeuw8t)(#$Vt{!3(&bWurHjmb#jZ=E(Zp7t_9+ z{r;(CgDG?ho9@fvcG?=-y*c(X^WDQ4f3cd1I`C2o6{kdNrj&0}C__izB^7`o&F< z-ejCmohmM0w;ZvYG=DM5i0$eh%SN84rbCv%M`Vv%pMZeP zqEA7_Hql@o?{Rl~(ebMYfC#q25;iY(A0}fdI;6$rdO~b|u!>f8w4}E`{-bJbN;O=( zU20@U-(hWT!K}B-I)8bm+OtC`p{#U@VY4!u<#(01$d?+2nF~=Zp~T)_FcdpNKy@`` zq-R1ooIOTqzqic8tu;3I^*=5E*3*XzW83uahHf2IF5J9$l?Zw{5PH+2g=?ib!DN=g#^yNXh&&x*`&$nkqVpR!pvk6@;b z%Ubg`lq1N6+@a-vAZIyW`;Phfk<)m9ORs!UY}EFTNgeG_boYC(D9FDZh}{H}(V22* z`jC~i6cbK$MTXZ!HD&X^DZ&uY(tm-7Zej#Pt+c@P5AA53+_+hmi*idAreUqw_)i`J z98SK@05natWuBy~0bMm6{MkASRwxwd$YJi(=4ecpxHk}c?Y%#Bt&L+Z5$PwL3; z;Z{H;LI9PB$I$#`k)4_S(2Rv#eq0m@r7niR$Sur(DYr~R_T&vki3)81EL^|wL;3BQ z^@Kr8oNj98`JqonX5(5k1!jU~DX;jhU^ioU0pqxSHz#0cu;)olE#3V^#& zELF2&=QmXxYPVgn_dUyQEm(q|cmt|TFg|~C#!=1|g*;`STB&OX+wT)k@<47ywXzax zi8}SGgWdTlDvxN6YOviUUD<}2Und3j#@F7=SXk`o9Vsj%P(LKkM;(=QR<7WzqAi^>vHEHW~E9$L=9{G!5IFdyUX zholmxyJN0zQdHfSWRgyiw zb%*nLzH?_0DGrB$v9%}nY&n7X!TSaAw#~!0rc7hdo089{Jfp=0y-F(n7m_EX)hu7w z{Z$4vy&CpFx`|pDEfxm1Y>c|x&X2a|`+j44>XLPjz~EQ7on=i`J`5UXF#OL=ZH&cI z-^n=~o?7t4L=Cawk3gJhV)j4nD}5^~L8CGYw)FrcDK_`2Cl%(YR2EKpQ|n zrSnXbv$qc|n6BL=lTZ?M+&!3i|5zk9x9{O~%ggGZfpNX+RsARL9G9^nlbe-Fy193N z%AXj_wHDtXr-{8hZWiZ>iIqDh(j{*p77?$vx_S(A8>%oN>}@BOmNiWj-rZ$nqY;xQ zQXR!v$o>#ynwdOIWi`wox&DRBnQ+ph!kxcxEt>ZH=;R|{IwCpR@W#LdR1hq04;A{w z_I`OytCp4mMTooiu(de#XKzI` zN?w+!9=?Kx6^$_|8Gz{Qd*gKt4c)sVr>O}@bQ>4=;w7DNaX zYOYOse+&(=9^I9F`F$B@`!$Mycr=Y|A%{UzExlRtgwL^#Lcgx4wq|87r7h}D=}kW? zFc%KlUTt5BsnndFz*xdQiWuS@#qDP&pby&k9v1y{pHaBRJTu`b?d8F(n;xcTjnmKJ zJH0}}gz~Z#Pr~M~p;cfhEL5%K5Qy+F-{HfYwXZS$ni79nE09j7`i*o`Qe2^aGp8}_1{&K6Eh_%b}>#p|Z`t2W8QYBYVB+wuTot@|E{xOB@mOBVT*y*Yb9sR68 zQhY99PCK0kje^4YP&o4MOh17P1l0Qv6kpVO@sY;y#iS&Qg3H%r>mJ@BTb^$_cFTu-+|b{l*t=z zmg5Z}(0_jssmhK19B>SxC{z@)%FSNtvYXtzSTmKKX;H+5u0guUu{b!|jo0cNer=L$ zIJvSgRP^*rm@LAX>iL8^ttKZmSR#m=cAg5N-D14rquZ@PHSe8BVY=&Vw|}l$oxZ6I^X6k>UkvLvLB86VYAIVWCM=ZJ zrNHpm1%rOS5mCLf&s;ys|9*pssi)_YO}iIqeF!}To;|N;9cu9aKgLUnIz5S?fYRpZ zE_F#DNoD>D=VRGORuL^Nf>ym}f)36SOtoUJVbK>68$9bakLh?2AmTCf`f3A;sh46X zocTpl^%W%5PcF=E7hTXh7I8_!uneT-h2$J5?_2ibYOQF>J?@+e3h%U254Tm8e>_``Un!1fsRX0rK;Fd9>ww%`ovA=@#q5Ob$2oK$xR@uA*F`ySsm1ttMjU z5G%I0?Do8Wyegh1Yu5F!mk(DtYr-?9W8^qOvAzZD-$_KXDOP!;brG`j*jA*_+YkR2!c_1m*4m^)7{lV&+(M_Yu)gsN!8c3un1&o1Y)2M8;cmYh=*2 z-$DsOYL!XI%@+F9GCjTJ;p+NPh8;8oS@PPabBfmyg+6iy)_omOUzAJJY;LtC~6(4fW?xVrB7s9RojZ)_^*u z<$xls1UuWUPl*N#ZLOm8bfz&KuYgMlRTg_`=kEsE`B$$X-eCP1Uo)eR~9eLz8-&i&>aj;C{^4njdXEE9aS*+;&@IWM2 z-%V6cD%B|0zyjmUz$hdCrU6c5K9tqUHxoCm=B53KdMh}1Y)9WuS7O^YJc8XK?vu~M z7 zmc(d8@@9P`Y;RIxTv~VZq(tu$|p$mKpWN7<)8wsLzZM@DR}I&Kk8TK?-oq+g=7ccM%(35Qf*S$Lrwl|}Ohgr3Ce30hpZ9y3i_ zRgNa-PtY|m`?A`~ygHLjv$SlsAt6`@c0D;Txvz|*oEjG-t!z|Hg!T#d@{%}Y&Bhp2!F+p&dr2kaDntidwp||-qT@YK=&0ZHgYaUEPd2xekahc zaV_4^NTi3;hCO~BL@!T=8#MNN9^qW4WXjo_QDZB4-IgJi9>syW9ZnKBTD3f)JB=xL zbR#H=T$5LRZI@i(zjnqlr0T6QCanXPB`^E)dFmLZ9Mr!ftbn;XW)^QFXK#PwA0A|W z3YH`cRo^{Uc*LlNwAtv;bWN^>c z-68E%50%~l1u@EzzW&C^?XuE91o?!B7YnhS8*7rDM%!ZB?T>KZK}N^mmzAPz($r2d z%WwyB^*QH*Wsf&r#j;=d>p1iqD>73AKP{k%a@$1pk5vUB(?FI&4F74}9I&g4{j%P9 z9imZawsQa1`$b?p&RT-H&vtD!1PQW`*eMTUzKzij&Ik0qOrQeRk6N;phep)C}nKSq9>PU8*;6#=#KbXaCX0e=I@ddl&ZBvsl(y@ zQ86mj9udf306sZc99@b{#LvJwygXVx?w>2O)krTKdbK+(i0flRdfwe`qfOe;;{Ko* z<#OsPzKryzj&rqTTaI4s^VGD*S0ixVVDHx_!JHSWq4$oXh30sN$845$KT!R6$85D0 zRMg6>J0um=`0TS+RCosS%=OpI<9x_BNl_a!&;7t$Z%DD6e1o?^J)hmm`0GcU`n8B9 zQqBr595X>&ENB(2-l}mw%f51iamQac&bAvbNL1451RwGh=nWWLpm00BrocH|3Pbhu z(9O*zTVb?SS7LpCQJ8f=k1Qwp%gBk4fu8BJ!i0H=)|F#lZk<*8$Z{CiQzMnDgLX@3 zr?8TlotVOMYNM8+ zR+xTp`Pjk1;&6NP4oWCJ2+B1)@m?j-N+IQ17q*&>RQXsPVgb_&C9&FvKB@5hsKV3# zoX5GEB86b)!Yd`^@RPX%Uwi)dZH-B}`EEs={1@gOWX)PnN@y#NfpfCnoL(g$qJ=Q=qKR?ef{Z@?4h{$NM7f& zQsY4>gx>dRMsjxSrl!V610#*q1Ow!u2`ylRBGpCU9sX-vO;uap6#Z0=PYi+KZXw%g zZ}x63*!j3%`DNgHwMv6^3vSwwj+(*J?6dc#xNI^G00D_-XrZJ68{+ipa^LL^J}+@A zZ2QSh;918HO(IQ~UO~vgql=@>+1~Of3_cPY=Hk#Tlli@bT~C#G55_?` zTDy_)%0iSJ0?KxzgoQ6N;q31VPAb)8SB{!?z(oDGPwkW52)>ncc|I~o#n7CV>ggRQ*-CW#|kp#<|k!_ zWgs^cn5ITXBH+kKu?K(RTkWcKIM2s(r&Md1vMC$vVWh`KjI0k|n%Kt>i9nnH@z;L{ z`cEqf=`8UPOR@Z;f4gbq@Z|(EiYu)V9qTtt2{m4x58@$5-h7cpsKPPDsZks zs3>~%NAHYUHhQ91IZ9Q>xtVO8A|@1|@=woDmX#?tc|3m3{deRz;_Wr?cxvoB?-TY&R!pr z)Ou-$`RCKkJDcz4T#N7nz-aqf}1v1$N`3DCF!`!b9@F3)m+_P^7>49R;x;c0KLKkUfZO8Z3-$UkUJqVWshp* zBw_B0h#4ZQluCI$X2Xm8R??rwcVZ`gqYq^NJZQ!mXl;2i(_=PoNNE}1-HIy9eKB`iZAeqJB9_w=IDvn1}{1Ke*3Icjz2E4Wc5i$w{Uy3S@HM)F$ zFzOq;Rq9f2F7q2c9 z({7IDk0GTJJ&^*rWklRu?=P^AL2CFMoBFS|<8M4GZlOH&R2crmIXq6fvP# z)Vt%lAfxRaQpNIX!_sV$|2)=Suk+9Gx7G{uXrh)+^17G_d=B*q{*oc^-<6{1=fLitfBWVC?Ygr14}e0s~N{n3yc?VK5ojB+U8f zLw9%>Hj%koDUKC62tPgT3f}A8X{qS(U;X*Q;Z!inDAN@T#h{AM6NG@4LT*MeOJG~k z7FYX>RJ@$*ZQ+#5wcocIgtvR{+;r?%mTgi;S==;~0E1UJCLBxvBr_j3+@l)g|$JzW@Rz!ZTcQCJfQ6kWf}hZ zCMjVTm1D5dn)P!m;}@HDlsa-n#r~iAL-N^{EA}TMmBA|UD5c)zk2=H6W<5D!VBW{* zNxuFT+#+H1hsAPj2>mQ_Y~$Ov{+y>9Z{s7vX56nnd?VjMFIL{gPy1*VjTSAAWqrA4 zUOn=adI|G|!j|ggpNtO)=2u^|)KC6~61Qz2hyJpN`OBp!DM(zr*df$d>p*M7H?XMM z&5}=UB-hdXXdAD&&t>dbR!-BmLj!V>bjp+zpQB9W{)0<$!{MfsXiqz0goTbr^(U zEDz+D8^6N&ukhDyR$X5;cE@&$W#*_-D=3szDk?;ETNq4imUL%bC=y}4_VcZBS|U@# zkLg!^pWFAPhLdC)#s~u1h5ZfDq2q8b&%0EsWcFSXAY8?37{CExZ*ZUFD$zYe;bd$u z$B;wFp|K=2A@wo7X{4Vo(~Ec8C+ z57!;W(p~`l$AOv+AL~C5*^^Va*w0EhR_hw!5_iV$KG=uH_DE%2hQvf_L+^J$glaWg%N zN(A&mjeHc;%D81HM^-D_JlE)U&1DS$qUK_z0_XU9;3x@A$2l9h%QLOqwuvbM$AdtWoL0F1(L@t|x8Z>h1ib z1kG#-%B<#`{`@rh*6bs*(q|~5Ua6K}WnbosLKO`3szG_KzEAZWBKC$pK6Ns6;GsNledWro4Uj_h3b53P`wbqAH)KC#j349^(zmuFi(o|a}C z_E&o#LQM$PY~^we4!`ZSC1{3{<&(mKvr+UL%5cDuphWDEI0gxnWsocn^h-sK!d;w8 z{q*%I81&apW5lGQ@|dVG(KyDJegzZG2=b4_!oo5kbh9wADtEt-^%pj+b6d!z_m!1U zq&?d-xGJUM8Cf;|bXT8ak?${q zS8E^U{}gBOIP(@YusL%)JvBD&?5mBi!Cv2P(##iT8A^Rk4@M!7O{BNNb6;zhsPniW zgHi~=ww5b8sPF3%F)b5AiAJ=H#6QDuOqeKl_dP_$h+&2Xdge2Dy#|jz!V{=(59KSo zJfmgcr;+X)dj0Uc*2$L2O`D^=U3)1}FyE7~jK)6#DI41FS(hmEz5mAr_{*$Y60m>d zBD9R_eg_Urma4ab!c+SBla(b2Tjk`tFj!5S{toHiKS+1^=JR;&T%!8$*&;@=&1~?7 zk;QEKXCSdL39%3cS8nWO%>U*_JeILIIvtXYU$wD~*Q<~G!RPCg7j@8H7kuFs>F$0X zy{blcUTsuE)n~aV(Oa0`_&KuIlO>4Y`I^`J<(WiuB;_tT_9}{^b1v-8ZU?#lb1noy zglFY(Zg|KHo&y$CpWCOKmW?GnJ&B>yP782iPNbpHv2QBug5k#n!;-eov)#Ssnu~k% z+BP2fwm{9p!|>fQ-|AmSV!yH79hX1Nt1!qOw!ZyY^|Fqcyu;5gOiZ*jWlf3{$0bB$ zjed5Xlf%bGr#BJ5DvaddFVzE;=|HNK;%xD>N1b;!l%p$ z?x)f`)`on?C6&lI=P{n9Hp?AHfd)wU!)=^V4f}Qn3IYYYb&755%2!!ooES6*zZdv~ z6pf(JDhL@c&uO-c|L=UE=hG*(g?o>ja0!t5?;IQw+)y}~%Q?N$`mbwZ1*WTln;WB2 zag$F>TwvJSTgm!P1p^#f;f8o(VX&Zr!@683)r;p)+TPjOLet)NaCDdWFO(pGSiinCN|GP3?xAO|0HP5vf565SfJ-JGd7HiWDvO8x zyYF3dMJ_m?!vz7~JehlZH$_D}0q+k!mh|=}G;AUQ*4uE z-GsrTe=SUR^}-G$+7rIWaTm?KzAHHY7U>3!?YVEV%Jn&I)3qW;_mPGo>w}=`0tFcB zg7UyYE?|NfoKpe-Xg&mf2)Tg}836d7fE)zy^Z)5s*djP*6F@3xo89U*%yL0Qrdi0j zt}|9{_{?7z`C{5L)w{Muk&!;NfXuu+&>{i#DJ_oMFA%C;{)=RW;aBf>d{P?h?qiOy zLh*aoxD@aH%@sRt3l8*BCDN%h4S_emmCI>YA6dlf<PHODWY^S>KE=n{#9g$#!b|ollSy{ki-6uc;#S(UzTZ=pd#(YWlOrY8 z9Wvaow}V+nF_(!zpMhk4VU~b_F9qG}wYp+zT@aYwiJe|Q^Bj- zsug9sT=aQgoW^h@WqZCh^7X$myAy=-pF)|La|25cm>%l)5$*hZa?ktFnS*O>zdJ6x zWEBnvLk%gfSNd&Dfz39xM8N?=Ei1;#1q?$s9wF$>(~B;@2hE-T4*+06pT5dG-W(f| z=aTjJrcT1Lz2S4BGG*>ir_M`Rt5%66J&)qxhYq^avZ$%D54LX~#kzJa(FY74KYj%L z{dcv@b2Oi?t4j*isvXZpj$BpfHl|Par>lQg&-N)=&_g^<<%Mw+tEcybGw|6WbFyI5K_~12~Hf<#tjm`6T&6~HFeLq>xCF_6ZdJH4- zD8Gl_OATV3I-Tdc_juEkDPIuh^>`iuN}k6qlqqw9Z`rbqUVSxEY$va#2e4V<#b9ec z#!o)!VQkjyJ7e|g+*rLDH&%O;8z0T_Q?+Ww&m-dJ5pI0s;f$Y$O+R(&{9@d=v1VcC zZj6d*X>8Kuh|#+;=ic7($C&k}Ql%U}UYvW~|B;Vr*>bno*6o0RdBz7H%y@jWX5SUJ z-Hl6^wl~(Q{kyS31ulO00}sd_qxr|H5;q10&dq%Mf(6}-4^-ercXw`dbK~62m2>(3 z89&B6e)9aA*mn2sUu14~?AQ^;a^<-EdGNt|#Y!)~@w?UdLhd_P%3Wy{cip z&wIVsvOJ$x$WNZH}2h+@m`@pAIo;$uBP9Mw*O>74|zVv;|+4Z1w1d`Hghk} zjg1>0G0vRX-xlA`L0cF>u@bS?1jWXN(E9bmDKXKr=tq%bqG)GlqUWAF#X5AjP~fu` zF6>N;7tf>Leyf@F3tF+}J#=&1PfeQ+5dUh}wabrg-xkBwVu7z>9KUJg$MfB*Mm<{ytA_a&n-W54(A zxzL`yJ!oV|q2Jc?bTg@<{5Hr~_G!F1ccb)lmpt2I-aJ3ry0w2{=TMMbQ|LeNz&|D2 zRI#O}r@1(bWf{`aiB6no%{OkW$vSo{urKEF`R5ZTIXSa^vbBTwvVAkji}vsDMp;JF za{21(VRYk$N3Q1=L1z1jYbQqL^1%-sa;LbjhUFg3DB3>dV_aR+d4~=W+5XVfXA}MQ z>+s?nJ1bzX*?yarM*QsAj9)(AkZAjkA|G#&lq*a0DOQD@gGjKq0XI_u!62T*fk`{S^;0V(nk&xFJC^Xc)^KT zmY4Pe58R-E1Ev)8XnAYollhBt1}8-&N3O*OyO-A$Hfz=;zF>j7OF}}`jE!@md-vRm zysb5B8q&OZi|OLUn&u@;a~+e|S0%5@tY1HQ+lYsTwx^RPTWa#ADgr7GkNdYj&i%Jh z=D&*%*|TSTO1y0mgyc2VwVPWaJyGXa&R_Grd%Y+kVg}v0W61ra63RHg8=7se5H6k- zugY+Y%av$7XvK=j#d$ve`l~v0@L=ZxA7o4?x^$^dfsgt2+kn!Zi|os{Z+r07s~hI| z_f@M#(Vu@-FVUvOKTeEzwQA?s)@|P_JGyY24TWZ0XX`*`DxH>(~+hf+pV5I_$MVg_+BARuVmf!Op80oq9+TKt{rdYd|66>3rE0N$7!v{A zHS+PA+7y_#=ez&~Bk zgZ{WwLz6QW!S>Ok?Q`uzjCg+YO(1b&-p?x(%g71w^^M8-NICjhv*sC1jz2FV@JdT9 z!~6qw(qoUEFX`|}=F`OM^QpS=G;G*=Z1Li8tV13nX1#jNp-PpCod=cey--|t@%ji2 zol7%jtl&$R=DIFm-w>c!2;aWFDh~*lM++7#q+c%7Ht)4mBO0C+ZczXJ`Hr6OkdU#o zc*#8a=O52fk3N(yPt>_{M)KgPlg+XpjIq!W0KR9B7kxZ8lun*(Z2k(D?=iWSNu_q} zqBH;7#U&+kS0y;~%;$NOPoXYdmM~x6%kmHL@xGLvmi>|UQe9~8-X6u?$(b`v(=VDZ(mm`>~+9p;OL$2-`A~wD`(r6m>5Mnbt-p&8WS^t5)!Hud~>A$;`LhP;S2Qo z>vQsaP+;I_s#WWp=r7!qc$@RblpLSEX)^!G{rJrHiSp$yQN;%nA%G$I^ptfySm-IE8O-c&U{{0HpRw{6t@pby*q<}s8(%ay?Ukc zfrAFhQpl_)QOG+GKXSy4=FJPGBS%`95<&8B1M!E74_;w|2k*)Jo$t%hbnKX~tdL1F z1r+k#w16EmcK^r4g{WG!bJVu&N;Yra^vuT`JJ#<037EdOiS2*?eVZb*N_Ic}AWq;&F!{4M^k_x+wah!j(p!fPu8+!!MB=3 z|GatAz0e~T*ZIyJ_dNf!c5OX6b?OBz&RTB6m`*&e+ew=?`BQ#@iMg+3KeDV_6}cxw zty{;k=bz6#k|rMY=9`;%`SLet$BsU9{=W_B#=nilC}l*e!Eg2E#h4Rr?3> zd+lS^q)DL_gY?E5Gi4B-_>X6v4JWqgBr2m#eJ8)%9&-Zf)vMmLa^)!c{`*$^^yx)x z%$R(GEwB#=P!!`6Cl06B*b#K;{tz@bIAwh3XTFEA`=60S+5bJ`0a+#~Fn@@9CD4EY zALcxIITXEk@qGD)dhcGTKK#rTgyiaaf?j>4yZq(eJyG(jRB<*eMvZpu${dx*?=w_> z4-|n{y?Xnz{+{{0c7or#8z8^gCg1kt_wKsMQI0?Uki-5t?~j|dae$s{u!o#jy3EOV z^2tN2Z{O_6cIVDE&UGTC>I$e~SS4#~&MuFDv}VQ!T{^a@P4*z`h_rQA7@3FJJzltk5teLCW_p z_wuRKqx+}i>3Nkhe<|NoGQQzt`}CH9!2O%v=D&%@dU+*eed7`Mwyo7^(c*a|-h7P4 z(tk5&=Ar2-zp>Gyf8*1pK0$x~ZQ5Cuo5cl?BRLy4`cry(zMrw#c38$WRea;i^_Ps` z;{Kc{jT^U=RX{nT9WLMaQt6F1=CEPIHsrS_zGHh;x^}H<9?_uqw(dc@cJ-o;9jE8_ z{9OM0vv!`pcXm#px^*+>h~Xd2?IXS=vz*@+oee|{8f?q+L(JSaC`TX2{+NvaFIUcT zw|7Xkb&7f4nZee*dqkqjizwd!h1SOnli!GoDm~qu{*Y~)8KCe32R!Jz@49JzPIvEm z(1{bRvgM125xDc`>gMVzPI8puG7Ad}(Q5am$;xugC&RaF=}$kL$dSaIrLHX?U}uqb z(4)tvv}<<{nS7j6dOA^Zaz-^&QASA$)8~zua#SeGh)rhC7r}eIXO6OQc@xmJoXw~KN2 zZZBgw_q^wbc;u1m*&h4!(`WNMZck5c96x@zp89Z+&i%kaccX_#?rTu7Vw!QngnZ9O z&fQbUJQ>-xC)#J?#9_JmSJ|?f^!04}^YGxt-n}ET?WHp^0U&TBm?c0}VKAU{^<>$8|-`835=3f?R8(q78 zmgno$%j=$T&YV7ac|Cx(kR+=BfA78VbmT}I^SASi?>J6G4|-iAfBy+u?~%vE_|WV* z;dJnzulRPMT^2${)eBp?G-E!J|NghBc~C{}#NeE7-UFXGV-T%aF^T@ay)%K2qR9UE z>x3K-1HlNQ$R)yZD4-yqKsW+OKv6u9OHct_@xX(Xzj*8lD5B!EitE8C_vwNVHi~k{ z6+ln~QAENi5W^J$fh5%b^Qvchx@W4Vd%_GL{=WOk%FOgsS0B^$>eYL{mmfk3EzhXx z)^*lAShF^ba&y(O3*1JftA289W9_>3QpqPr$3$>ec&F?&q$%o~F~MOIkj+S>lm85+8j$l8&)kH-xMQUfyYw>MWABbjdxo0kRx_ z(x{QMtNVu^ng#tlFE813HqTF6Z&bd|?tkx69(k65?9!##u)6Zf&;-sd0JKI8i=@oG zIa|sbG`cgZu6XC2z;ifT%KBTXIk*axJ?zWm5o5-rQdX9FS?z4m)0!(;TB+Y)iA)n# z!Kuls*K~^X)sW>2YS+$Go-MwwzWJuB>&9-o^!Xqqa_1DOHN2{@;>Ku2^v|5g9XBd3@fC8go4yX8H2F=)i$; zAsHu{KA3yeD1)+LLu=cQIcW3dn{8uH$Qww!e}8b@jMD{d2)TRUZ`*dg@_jvk(&rVi z^PZ42P;%*tz;xt41tm(HwszAq?48Vyp}BJ(vwZT^R~2aU7E2t3)BRy+V*I|(cg?>4 zKE=o!iUj%j31+W|*0N;|l`FSb*|)+%y+7xIcI^UmR3v;ZcJHnsX3wtYrWacC7DuS* zO<#~-zLDv8T7>mzdiEMlrOV_6yw6^gUw^GDh7EHLnC{c(9jaJyWx)HVPZ53b#X~IR z5Vrn;3j!D@VMKiVaeG>#7}Vn8il|GM544+a4*Y?h1u_tK@mKCMAwq$Tsw!1Td-&m# zV({SRbo8iwK%=EdACVFHABx4q9)w!8GMzRPGiEfPg9j@pKh%w!Z0(+VY=!G28#lJ* z45y&*lFhbX)rN;Z{sjWf$5hpn!LxIxdOPlSTwK1^^ro=hALk6NnrlXQmJ0Nxk{iWD zlkgqurX(bU9>~iB@VCQ)TfO|qecQD=xYBL7NKKt2 zmw8kUL{9(z;tTi7JYDYiKzAEfQM~X%_`E1wM6!7^^~51RzXr{nd!J()DJjRO zOP7fh6}=~*zXuOil&Z|&q5=j=I2ki$n7{6bh>j*vv*vnj*s%A)zQ0MIJx_;^B)Zr# zB&4f8Huh&~+g6`NrKfY+Z#CEU2B$Y_YGElAp8c^-#7xJHmo2+n4t#zH&$*^+uG!$& zM&?>)MM^#0G)a8;p|k7$zyV7cdjn1K78!k2rms$G8_saP35%;2K z&70?P<#Ods#LGNu*0@$%m8B%ExkhcwpE?~)i_|eh#inP^S43iBe!vrf4ZN(ZnqtTh z=cS(4U;jwdxMqv+D~K$Qefjb(V&cT$OSj-p1q_rhA!i#u{@6I+xsi~NCxgVoy}yi% ziuC1IJtJ~3nkRMg)mOh2pMFx3cIFhyA2y!Thu>$_8dWF6z+Z}3JT)I{P}v^Nu^5LA}30x>E0iI&)D_Xe>wSuiF|<#NHjW)jq_Ja%hpWHf`~w3e3`k{AE+pp3}68bt1%(v@^|d8kGF9Xf3j{}H0|DP@5wNZ!840i$)20pwyl8?3*p~jOw19> zOh5aedX1b76h(Z)p9WK=l9JrqB(waztUYtnO$$OkyrMJlv}bn>qmAhB>9bkz{(z4h zDKGCiZ@)RfJt^sk^3FMnI22g|W9YCc;-CL~)YTW*kWbXJVgi0kr%uJ#Wlt&T)M*S| zdZ}9RH$Oj~=FEA_v5io;@4i-hoa4HzilV9b~iv~OQU%Y!RQO19_FgAcwK?%hd|v9I*l6Bk-(p>s*XA#KW( z_vQE2t?T42jM49c#!(zkBUJ954Zl@*hsy$G$3oB9Pvtwi?wTG=-9DKm2Jor<17E10kTYty@6r` zU9Mi8#`5>Z2V9e;WXYfgX#hL{*liNTyCg9pqI8<~-etkI@4vUkp;WJ~UJ_v=b??3! zq3%l-z?(Pk5!$@DA$|CtH^mbJ9jifWH{Fy+*Il>5@}7~pTc{7xYcpLH@RVX~%>s>j zc z`~m~zERk!To}zD-F^b*$Tzlj0yTdO%K5pF0bR-h7Cqj?os9946tBL^w?xx&aXSGkW z+AVoJDBeP4<;xS@+m(Dlsal}9laP=@sV>rsmoK+h4ds5U4b2 z^vz#?y-xW)8y%Nk>RYzq0MFB>)l>c`neFqZOEETxbMTgd!+}wCQj^$W9&7AR+)DUu_Lx=IUx-3VJR-gq7`?)^OJMVmtW5AS|`^S$b$(l*w zc#i9s(S!v(zE$Oq*9D{SUzI|6xvu0lf9>0udsVg3P3`;#10g$>sTR3w3 z`0@CFM+K+o-qf^MOFN#~b~0zfa6JplXRQB_kOowW5;)8OJ9D;83CcE z?nUVa3MD4yQMYdYq`Gw%)4T6(uoYIj=9-PJWVQW+7R|6hcvJA@9m$3btsJ*8!^>NG zQ9-r9o~p1Md5n&V6@5m>?p?KQ(_(e$?qn$pr)fnB`7DV>-Z~}T_c>dpC|YJ%aWTEb z#3OR)<6Of91Dz;1P4tbFzxSouck4Dv7J=lHZoUs{*JeY82N-o@GS&EZpDT`wFnUt# zBLY`8-n!K)Sk|yn2GJ)kspC)zVq_dj|Na@Sx-((?%hGdVgcM8TB9X?79VWOCC|3lw zqh-rkR5s}&I&?TOpcvJuQ$!hG_NIUR>q9r)U}I5?8nvE&{4ube6bGL!TXwg2|NTX> zrj}&DjUV^huEJeh$fai(jC(ZF3oUL&9a94_s&Jc$V4bkqscfIjBS0X*07o+qv6^@}YJpU_bx>AOJ~3K~(97 zd?3r^os_u_E$W8Z;llySuEv=wS@H-qZQ>l)kY$tVYln2*@2x2oFRtJ}U`S=yLx-+V z_KDAB)vCVuldPS!Y;8&&1it#}Rob-aRes9ac@TUvT+#n{=yo zbF*_>k0dz%Gg*aDhzBuNY^Nf z2Pvb{T_w2ikNc{tYEk9NhVrZwBHFY`dJ!U$zYr6%kXoeZSuk_wzDQ@zR4&$jSnJ~E zo9Ag`#}1UQ5JE56UZFyk@$j=jOqtx2CGtZ)o)agM zq`pmRsx?)dvpn+i)ocA6AYJY1A1vG2oy;ORQ`i5BiL`+a9ZI3x<7GK4wb%_62Pe@x zFD!r01@Altisas|qiD;P>2z7S?bNpIwX|Wwr#yTqzt4jwOS*fBii)68n`f}h%S#lq zX4Ug9)p8)W;K1k2TN;?Jr~D_YG3aC1BC|}yY@$v4qmR$k z&Yg9|+i!K%o_boQlxt5vJwr^H`W)4%vx=AbM6kFLzE4k{Oc1MAB}h@bs#P}&kBdK2 z3CDE$bOL?1A(hOrWSnliWlIBp?}6k*UJT8e!-fHRkJNkZea}#OY*q7;n2U>>XNWi%VL9)d_%$VMg z7A%lKXsRDppdLhMf6`dE{PHa7)90VwHf7D7|NXDGOaDtq2!6(M-JSaN*UEkM>C=ny zPb&PYHVEr|r1k8%TD#>IeV|#G-q*JN47-e*H+PI1k=hqt6;ag*=QLMECPDz;eP=I` zZ-XJTzGFvSnWAjQzo49fRE9mFrKS1SDh?j3?6{xe-Y;IFqYA>UR_qEFdL%|)xwzZh z&#mdS-R^yzI;M@0|1MvCchFV}3X*8A=U(6?y%<-?D#fQz&x)~pp9k_NwODeouA4tX zE}JEB9ED@Q8#T(XE+Ko+<8`WrBwW_zj`u`-yeGi@>`z_5@v^sh{dcMK!3Q$NP3wB^ zdTQJ_o!okrtt;g+R9Tv)p8L;dFnat*?3vuWxtVy?MbI(0Ac28W96lX0oU>>mHfv+= zN&EJbc~)b*H+j+vbog+hDu%`Xk8D1-M^xkyd2Oe~G8YR%^Hw5RM->C#qD z1_wPyx*B^_#O_Fk{YJS@7e1p`3KpMzW(=I#pg~h*Ru5CIoHT3|YB@SQ=y)=Dv|Bpt zl0le}ga`WHwp%i_v_5^7QBoOOub-j!V~W>M{Z4If2h9^yyn2-5Htmwwj0~aJP zP(nn!@kURUlaAO>z=IoCwe8*8&_j?yaMF9CSmV_^8AAyPL)-!?7&fdS9XL?Y_3;In4$47j-#&F5i>y;qb+gu{O}67cJn6;CcKm};Z4h(j z)TN_GlWdR6>45cY2CJ&nDrnWdJ0 zl9ScTdOUD{_g!dNYn?lP94UofU!a^nJQ*zJ$UKeciYxX~j~=hf zK|-8~3jCdN3hVJ?nl_cSQ`8;P<6U~mf6t%4PA!NK1Wi-Vpn2wE8>10Jbo0%QSvN9M zX4^KKr4&yv>J2wI$De%nU8<^vkAW#&Q3*fnfBNZ0qhDMR`Pi|5tRe{;UsqjaN-^GD zE9kz%g2sYrCnLNQH37AF9N=@gabs&8XIW!8uj4M*Z=CPiOQ5FijC7}`Oz^%iI-TnW21M=7B)lz+mK$n zyd*JpY%A?S2k&6x#*1jd0>8jwPbSTwoQgcD(*E%e=RkD6i=KOKocQRYk$N@qNTKmL z@;w;1^g(838pom(YlmDlyg~({Yp>;YedRJ(S-L@kCEEY}-^9or3y35zP(oqign!a+ zzqzlO5dwPPm+n2$MvXFR_lR#e_9Vme@bR13@cMgN+IXizgtF@K)G2C(N*Ys%G)=a@7Rtf$krAon@krQE6;2C zTJPQ~=+|Gbw~eg{tYRGbO1GM(pVRY!rxs60u>AeZnNQMfw+*lyM$48tvP48tkvc2; zj7TrX9MWQ8#Ab6$zxP- zx}-E7OP4-m+3w`YL@{Q}aGE~-QKio!|5Uup9&<8Kc$sI>qMl}>PLuH&f}}VgdtY4| zC=%9KnK9!L)knJ5)}xoCY1a57^U2nfA;kK*sa+?7TBgi0HtpGSwU{(HT`bWvl0x_2 zc$TPJwIWJM>ETsx27i8FptwZ*_rJC1^Uog**}LF+2kgm+E0VP_%y266AAck(Q*?Q@ z*}dCH$F{iy`_ZH7&)CRm+*q$7JbU)=aCwJhkula!P{A|gN>}~jC`(TixU6D^&q3L; z+1g!qI;-{m^i$Iyy>(%rcvNM1z+eOA=bvx1-IkB>Xh0$#i_=J4plH-SE*v3o2>_%@28t?UZ8sy^_tg41gLiq z6&{0W>C(m=?AaWUrNSZ-9P_huX)+ssPHjov2@&|AAgOWG zrOSK8swmAdL)TrqLTlC9y0qJ~#|X+?lSU^_*iS~-a4l5HI-FrIB@0UuU3VSd8-L!q zR=@%b6t{3->>oMup&5}C+9;`evQ2yAjS=3rWTCP}i;M_#ix?6c7AYySwPwwoXU*y9 z_xrzPjK`N;LUjA>y2oba%5H(uOT}d2!hW{KoK$^vSuAej24&`rY*|;K-Qd)O^dKEN zlx+98KHGFSV$Cy9ZTK!#zUCBTyYIxr(^iA!Z?v=-MVLr=Z5ST`}a$u%W{wKv1b2K*+{DnMw2Fs z#N4@k1KMD6k0;AXO3Ribg0|u9Qa|)- znv_9Hmns8;g}j!RbFCepCW|mRaCl<%?YF#aHdYiAJj_}v;p!VWe;`QK1>)cT?n29# z%b9${2AR0{BE9sv3D!NyQ5i+D5Mj1lyLCXO*zMaF81yPU1N`6q_Kw!I>k%<{@D);K zTNFc~)-R||rsJ+(muefl#!C_H+dD4rh^bQ>Q+9R*+YNN@&mzbEty|wt%9aPg>6m3e z9uFA5@2|?@PqZVeuJSvYOfk;aTBi60sQvq^Mm)bps&8zQ|YR0wgKR0q_CU1K%;-#?9HoG=@(^ysP17&7W3v=mv@^s zT@awjla!PrEB1!Mb@h}%oU&;ySh&(fHcwjGIEuD;ob!49W{G`0DHR+n8*MXx&Ce%V z@P+H_AlLNjH9TkmNnRf6(1AV2`fJViAC0dYPaxK;X-}`cHbF`gfImGjP~0$X{J-Rn zG6KkSM19F)oA%mkqr7{Nm0uSv3h;bLVoGqGpD%*e>hLmW&J&u-lc9Nj@Etpjmao&( z|4oLi5#n&_A0)eEX;(UQ*kf4vwIvJVUAf&=%@|(Z@fa3?Jz`gLTrM?h=B$6h#!|Q} zgp>IR^u>a2X#el(3dj1g)9;q|jvR?#z@cfsiKU$d?;=5LT=9M!QbzqiRWbBsYrF$5 zT?V7DFwyJLkV0nh@oEo_r^b=%{?w|a7n@YwD}@E|w9!w-o(o*Y#}^r?ttI5|a*?Gp zg&R_uD@#2HuMy{;-mXBq@4gjO;R^M6lS?4GY6Pvy?T7Y{L6fOM1$BG6^6`ygj{Ejp z?Xy>})zqlbm&$34j6FKYNdZKC`x0GVUcPPJR`X^qrO?QcV?#M!aA5)i#R2h;LC?|F zpCWss$Hf&<=g!u`UhF-|&JKLI>WZ&9)U(HHj(z9Ksz3j%*6N6o89+m|L4&r**E@C; z?-+%Acvz>fi_-7c)jbtYdiHuWY3#0;+UnIEY!gm7azFX9-(4ALn>XL&YJYCvn1huo zc}A_?*t4wQeJL`&tSGe@B8}8ux#Zld$WrlQU%cs}lz%FkzF1(@sR%08=FQ|Wr5YzC z*{2$xIu*|~X#c?H}(5B5a|E-PRW8R4bnlbaqkdM^~_6pmbi~N&Z-;BK|CF!AuAEXKu z_WPM9df)Ucv1atf8=r`2)9f<H%$?^np|9T&?xTz4o~a4DaMYwJ4d8^|muPpz1+TtB`SjvOXU6|6^w zzKbt#a~Bs0jI=_VPp~fXJ5mrr_E3P3R*^@g_k+>CnldI086_sMHVLaP+i#m-E2!sB zojR*+MbEgO+pU6alE)q!NKKk7mU=^}sZ+I1w}xCzS_TPUeRW``vxaN*K-e+ThyAW^-^ZmbOOhb^qlTqOZU1 zt_>M7jvjh=2whoGdU-7Ol;+v?#~&L@Pl`zt5d67-ff9^QKYf)B=$R;yi#>@eqC0N? z!1CVIsfPC?V853n=2G|W&ao$)b+mrH`k|(KVGe4eM{kj@*RM}=)779#t6mm=)tzz` z^@4;~ui%Ou9E9h%vz045tFs6^a0Z2&KwHj&IDI;7*UwR=JlanNi_Lx)uS&g@1#ej2X#7`YOSXq4d zp>sTo_j?>@TCd(R{e|DJUpLe%$g0cXrbmwv6mN}1F_lUn?>@EX{%;)p{qKY6s;hP> zx77`rdi3U~k6ame;DQ4NiVgCHmQ{Eo)V?<|y-JnM+Q0r~EbqwRzeVZ2^;dpFq0A7d z_l+S79*pVJ2dPu`1kdtkQT_T-+)VWE-+*#+%PRJ!?lkESYya3l15dpmb#_Y$t{tM7 z9VuXW`(SV?XOpJR1_}#6og?%l))H0&B`fjrT~i%NF~%5gv@MxMI83w2AY~ z-M`RVq=}6^Vlhzm>^e8u1giQ!=L*mD4~a9@*a6Bro(hNN49Lh0i zp#(Ef&V*J;x@OJw{=a!&Yy+p6tJB`k7VVy{8)XcO-SHkgSV?BJInklRc#4U&ITuCz zdq|P$%r4Oe4xFv_%4nqVHQc+mrg-zsup22d7R6Jz(1P&9EzOx@cy72NHVqgsh^kh} zGFLe?t{VplXYH&`Z@)cSW@Lgt4KPp?h!7|doTTA)$ z1q;-%C;Y&!ReP=Wzyr=j@%YE<(UAz~JGWD<+D7B`{{2^<)$!@N56k7hGctNpe!g;K zku&`A<#%gcyKYo{ZrS$ZkK5Ccqsp~yc`jm1`wZ63%9RQJ`V|qylj^HAF&R$3|6cW+ z?K?5?{KTNdg_6Y+IQUE0OW+y&wbre(DK>Uh&?UvZJc|~J&@`K=#2Kjo?7Dk0P}b%b zQ78jeg9!eeCH3ns3*!AqaO2UH1^+5n{zch{%xXGPj?zOcp4X<$4CDL$!6^CpF(C)v zx?=gwMU$dISJZ%IRHz<{T9BSqm!;qUC-TbbT{_ut~Jw%D%_OPNBAK zC-6T-%a;9R2F}?yi8wg$_S^L(s;|E4WxE|4G7VkS%pp&Du?V7D!nzwb-|U=TylGPl zS>FE~#HdQxNVxP;>n!-tVS62yaPONHSkDI`Wbqhr6#@6BObIS01`X0Zf2B$t58BY_ z)A2HxoT+%_c6ooP26rA%SyG;ZrQJ}w&MMnL*)wvGi=4rmk}})2P#*`mvYw9{T5>z8 z?L5meUw&!-J5_P}?H^ELVm>=30?w~YIsW-ZF>QMIvt?La*3XM#cyU?6fByW3#QJr{ zgh+ehiMjOn;{&Ps)xVhUF5`aF1@|h_zyJNNcMu~ zL7kP`x$I2Fj98S4E_!N5(70RedkHM7?hrck_ESSsB}jTiQ>Q8b>Pl9RIeXuItom zJ|`VI?4s+h*JH>04JhHMPCdh>I`vtg_3gKqZm{v9=vA$2(PxvMxAgVVN9WPNfsa$o zn(9D&UY26j-VZ)_%Nxf6E?i)sn2_mc9%=bVc}}DYmmh%lbbZJ20eerR+_hrQ>^Psy#Tv$whfTSJX| z+^hBMWv?^g-JY|L_U*Gz3zk_jLF%uV+3=knFA#AVR}WEsMFMy4s;Q@WpMwrWN9R)M z#Pbt_QnKXP*8mb8H+){6Uh=o>rNNJd@9{k*Efm|-WKYVe+f-wcY0JBWvOJT}m0dS( zj7%H~2iaDyZnFf+Iv^(!Y4O)R)t{T%>3sWEs#Z-=pUQI|o;;aI^XC6Oq|V)O`-ee; zc-OCQD`VfnO^==SeFfEHL?iT*@^c&n1PMtcK4tTvMzPK0poj65>V>@Qde9Bv0RT&&xv*uda?$DRx>EOXCXSMvno{SpT z$U<#m`t*vlYu7`{{Ypvw_qg>lbFcaU87uV85!ck;6d?m>H>nV#ahMOMUUsq=IkS8{W_p698;)0I!1Oj~`c!@M&{LA9W zCj*QeaQ;CxW3LBe(xeyU%^nFfDJ#F1`t%uU&f1atUbQkoRvHzGft1CpDpuU44IB2J zQ?F!kthH;~lih$E7dMG+X+Ku}d;S-X(izdYI7>SQv9T+tO`C=CWqNuSK6kdo^O7&! zuRYi|!0RDvWpI6y0|zQoets#+KUtc7`6YNNB?tK}S<+Q-`fz;w2^q`tDNC)Oq#r$)~vC3X*KVD`Fc#4_)lux`muoT_UW@sL`6MD@4fdf z{rF=;%Xc+-?%61gr_VlnK@=9mYwv$BB%FN*X9o-vX8ib9v(BZ>N5J zU(}valqa7y{aHG2K%HR_8%NZx-6U5#nm+v*-D41t8{w%FQf`m-+z|bt_{%Rhp4EYB zvTExg?Zp@MnmWsux3%4tJsw^)N^`$neBlY2zu+O-@mpQ}VeDJ<585@}_J9BDYV;%d z(j2jCS1lIGvTV0ugL=s+QbZ|qNIWUV5sPQyb6cavMwwoDJ~34@_73UAI%d66aY^}a zHy)J3rVJ@>C1RCVP)|!P%Yo=pR^Ex~)qkLp@kMmrZTeH?wol$ot!_i~>_o$STXX5|MLETHDmA(m)Z43!>Mn32CWHYttrMG;Fw7eDh6b zQe9*2`?6(S#AA=|rjnf5CG_8DiI{vDJYK*4H(E+c@iNVN^cW#{GIQ#bdcRAT-X#_- zdR+$e`uF?3`&Nh&B?d?%W#h)C!gD@+bx}2v&(3Mn28q)JvD(KU4=Pq4LD>1r8z^Gd zta`LyK|hMbK%y_J{6PKs4bcV+2v9v0t5$gmcqyJB{KGC^K8w0_f8A*}V&#g&pc)A= zG1IAOQyD8F?z$_DPM$v=Cz`~N>e%smhJoA#txUtV$ytBH9AbX}3 zh_An1K#iNEYaP>qmoxB#17F4D$xA3RGjQU;OIC;es32oeI&|o#{C@ZDnIb0UVS4k; zPw4ya4KJWs*B?@5!M*Nqc8dm%jDQEqNU+P%BB z@fI7M$BreQv-Do_#>V($(&d`?iM+7iSLDkClbK!GBab-C{YM&JYBLp#EY9`Ry#IgZ zOq7^Dy@b}aYYv}NMGl4!){A& zbfS0P9ZkcBPZiHR^SqemLK)Xg_wFN=u_#<8hz+K1zr90z{<*F3CPnO?e)?g${(33K zCp_7W7P$V`ym=3a0RvtQsc#@6{G|;PG3w3kv}$!HW%kV3w99MAEn3W@fBd5#yBC$) za6qU>fiW=lB#QM)_EUFf?}=o=Li^Nc-PsV)*lO{b!M~^0`#kz_~R8*ejp}lThJ33QzF2iH>^IWS|rtz9HOd=4| zB%MdBalyvxd+!y$I9)hlp*D}W*;%a|>S9_cl%3sCz7ZE&q-xQZjZ&CMd-nQ*U(1%Y z&-~F-joo|I>eSA({VWtOhM`RTLo@R|Z$2u!_myyPdiCm?oHjFP+ct1n*?b&7|J+!L zQ-;DVw@g&UubE3>sQ&a+>64uP-;_T3XgIw*bc%T3{`a{?j(-tG724nbzKH783s8`j z;(szL=SZ?#t`F7*D_KAD%)@kJqh;n}u$=o-`D~;-BBn<`d=7-fU)Deo>()in#7WQ7 zXSSMKb;b<#o~VQE*j3%E**qBSVj4Nl)+3-V=96rP`UNZ`WThAKqg0==zkME#m;xs)>-4uV3HxTp1@`Pmw5-wBLNJv}<>*aEinkvppW5cvk%6laGY0@w0_% z@tjS-wHZCtSpQvksx#Z3MK(gsS|}!wJY~DPcDhgdu3LA7?e){MKgx^6iyZ@Rr6+CX z%%_6Jm4rfx7@`}lcb8_*v`L-H;%~N7FfJLu!Lp&ysnf@ll$5K~7;(gNpK$7TR#tVI zG4oLxG2#mvF=7%w%e)>jTe@|7Q^duo_sg}CGBeYh3=8e9yMEA(lpB|@=P%&g@Qb5I zlQ;!A^KV7a83OPrsXlxWV@9amC^0 z%|AC@A2?8rPMmOEsLT~?Fx_}#hGo-j+s^IGN5%`4+hvIb*}1cJ(C>td@M_uQv1je9 zD(8k7EjBKnqN9Vdsl`H=gbldDd+-Kj^sNPqSuCMB}R=3e<4KRn!luhB2#kb&V7{i5&VB*!sbuejwfD350EUE zL%sV9)js;jIRbp@)aSh36QAaZ&}(t=fZMonI;ROb9>@6cDfH7%jg5$O|Gsfm(>9&} z)xyG9{~9BlVHDB~h%;3xRLIiqzyG9IlNnFzzk9*90e#71t=6!iZ{T84r873hREQYQ zCthAK1>wpy=$xE#-m4b*C={U^Npbm8N`C)p*Yv5a@;)c; zqb6jRp9-;1OpF=2_!Oeo@uZO~KM;{1G&7U5Bx!xiC>zaz+=qz$g6dw2{0RPnd1o=} zKIP6>IM#6X1aJUF?eQrIbHL%)eAnJh_vWOf_fnhe|!404?o1T3fa64_@>{n0r>08OaUh?)WU8JI`_Ed zQRnfNL+kVXrjN>p%I~h1iac8rv%GL2^3kNrh9kjCs6BY1e~#2vLB93Q*W9h}?t=&U zkM{DDsxnG}S8UOZ%3UO`b;-ePdvHLRk)T$mL?1L^DE_yDb_NZrq^98)!z;IyH`0{K zolL0R=^L`un3IZhE5OFT;<5=lfzQ^qitH(t6z5h`tZ%>gQ&udxSyNc zg_^I}mv6JJq@2~#5%PTQ;2}byTS|WSMQKTCNgfb1^xAizc6GW%FMw_9__&|iq=+;@ zb9(&=6&B8aT?1077cWpz5Hz?cd%(L%c~5GM`n^<%Vk0moal+LYfH9k~z78^zG#ETv zZwOUE-Kn^&Lp{vGr^vC;ruGS_#n(-F)1V%C+`~cUa?q}Dst1O zwnU>#Icj?+6$ZK(gs2GU1%Kd$gx=E~P;&W^1LnSf%I(>%96(EFuyH8fdKLIFmhYJ3 zX$;M}=5m(NKGqieR>k8WuzW$-p7&9`7j#ujP|B?dx>nQU311B1lzekPqTl1=$Qg1) zq*d~<)}elVdG8JgIih>HB6djUS6FofYU7KD(Ic1FLqooi@T6+Uyvf&Zdq3bFiF1p7 z$6wBZlLCnA+F6x>MYb)F26dU}vyhiS4Mjzbs*Q%(Vtm(uGDVy8@Q2F>)nou!B$uJ? zqZu1gC6YV!Ieq5JSnP-XD{*hzeXpnC1a*jsW|kSQun6i2L1}w$X?IX6%X^<~@*YXG z6Qde_3`{iCIT?K#ALLRbxPPDR+Bhm-#qCcA{33=h(tebVsYS5%47!=0pI^j9D&kaG+Zk&8cZAz^gL*5nyHDI#wubA?emHGxRgWHax)!Wpav>X$18Kx!PA zom)k~MlKws4so_5cpkLWwVN=enFB@+_{lg(#^WWtPrwwJEM~JxGRlsqwZP*bT@!!) zl}=ikYj+5sQD88U`TV+oTA`GR~<2yC;}n|{V>tHe}fb#=6% z6}J6yQf>HZ-p%U!lticu*Aev#qu>8i})^tzh>pr7;PnTgs*-kh?dGY8Be)e zT0SjAw%zMp@KLlZ{lu_4;UtI~%r26-i!-`pS4OW(SguUO&s-N};#rVqQ{2W-Gn_?@ zdwWB_3J+plr`C`qgu_hRgXHUD22|$hKF*r-0#*?Lw{77G{tEK?fNqY9w6lc^WLE;;j1>f4J1S0_MlDt;;@`EZO$e%^k{p^=aOe}O zi5;0zE|Hf9#O0OVfr6L8h86MKLkeD2Fhtt#<90~8z#ULMuSN?O7w0FZ^Kf&W!>EuY zrffZr_``$Fk3R`wF|;W^{x2I`-2I<7inj#b5<|$YF9j^-9uo`Zu#>eN>PYPQUH?x> z=VN9zr@;hRPLk~Fm1P+(5xFveTV#3Niy)SLr$%R$&SS!~;C83n*Np=5V3tYo>ZYjw zSOw>{gY#dQk@c6%f#wo}8QUiZv8lNk*gP70k?iKVot+?T==?kUn7KxOtpD8L0|xR@ zd!AXZ+qZvorvLtmYu7d5rh}SJ@$k$4<2RiO?mo@%j|WEY;0fnWx5r99|N9lDkDb*O zgDYv(gLcZM)PH~5oue&BCwa;kQc%Tl@}wr+Rc0*J;l2#zm}=($*)x~K*za>OpMC}8 z5z5f)-#PlFuyGu)A1%9nx{Zz7t;W*p&A4L-zId#ysYxny^%*_Jvop?qWxEEWgsVAX z>ILT)#4MbrO_m8H<#(37n|>#8FWWF$Sg?TB4vQ`pR)*U!mHu4sU2h8B`?lt+fdq3rEXe-`{sAc2{bGumnPw?D6e((Zt~(jCc$+hMe3Hu)|QdTl&S)m!===io0+anF6$|^my}K_;ke1% z{7hhw>E{qV`9L?d^d_;J6{S@wzbf)O3hl^SzWF?Iyz*d_sp#HpW(xiFF4wUu4k5a( zj4WkdGOCmNBx1Ms1&t~ZFsffmX`=n!@0FphA@H=|eHo60QVawU^{yvGFcDnvd*6g* zdunP|jXxn2#kk_Nx$%6F!*J5|V~;NM4uRPB){Z?#Nhg2CE;k3y zF?fDTdXEnqN$qvHd{q`y0@$j9Yw6c@YOC|x8qx<$5FFagV7(G+KhSqPXw1t79W(Ar zJZsLgNXT$cf#EEpE`Dhx0$O7L+wTdx%Sji!t-Wn0I;t(6&|N8_>p9+GGl;kOC#SAy zkxl6Upp05y|e&k#EPO*RIE zyg@g-63Gh@zN)hBgKrW$oLjuB^s$O&kTclpxm{MFL}RgbP9YxN7)xHE<9WRIlpkQ*kVOa}ugDnORL}I8CTq zUFw!uz@3!uf=nM+X?_31D8FcL-h+ML$y0FyA`%CAH5N7e*Fj=`zsJMen4)^HE;tAO z8(WzpgW0XgAtcAS92PmANsbY^jvWo+q98o(=D%q_GG`(RTF$~*4PV!EO|ef%3umY4 z<~1Sp0|ELJRbLE_uVE}&{(94|G4|oHaJ|B)g0Qj+E5B|uR%(U1F)PNxW*58yq*-cA zf2_BMg^j`*d^G{G2v5>#>zr!N@{e3_5LTh*q=i?xTEoZZM|q=!{<92>|PbOET%1kQyBYHEReVNb6SeZ-#qPs{ZKmYs&!Wf z>E}gNp;5La596m+hg(>GW@@ukLh$a3_#mZvUxxbIU zt&#bXsRda%{8KZ$)CC-n*z?3mMptFwwJPiqP!WfgGh1-kbJ?NrzGkiL^fLt%o# zF|fd@VJ{Co&1~uL7x@4e_p#*k@o|58n0T*g`*GKBTcOGOhffg0Ty_DKVvO4BYe}ls zoCfC-6*&0{6Vq5op9k_k+F=d4}|R+mE0* pVDOJF`2Y6*9rz#K0YfHXGJMt9AqvgJwD@lwCO|X8T7CDY{{dS)A0+?) literal 0 HcmV?d00001 diff --git a/web/index.php b/web/index.php new file mode 100644 index 0000000..bfbeeea --- /dev/null +++ b/web/index.php @@ -0,0 +1,1279 @@ +❌ 数据库文件不存在!请确认路径正确。'); +} + +// 获取请求参数 +$action = isset($_GET['action']) ? $_GET['action'] : ''; +$dateFilter = isset($_GET['date']) ? $_GET['date'] : ''; +$limit = isset($_GET['limit']) ? intval($_GET['limit']) : 50; + +// 限制最大记录数 +if ($limit > 200 || $limit < 1) { + $limit = 50; +} + +/** + * 连接SQLite数据库 + */ +function getDatabaseConnection($dbPath) { + try { + $db = new PDO("sqlite:" . $dbPath); + $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); + $db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC); + return $db; + } catch (PDOException $e) { + error_log("数据库连接失败: " . $e->getMessage()); + return null; + } +} + +/** + * 格式化日期显示 + */ +function formatDate($dateStr) { + if (empty($dateStr)) return '未知时间'; + + $timestamp = strtotime($dateStr); + if ($timestamp === false) { + return $dateStr; + } + + return date('Y-m-d H:i:s', $timestamp); +} + +/** + * 截断文本到指定长度 + */ +function truncateText($text, $maxLength = 200) { + if (empty($text)) return ''; + if (mb_strlen($text, 'UTF-8') <= $maxLength) return $text; + return mb_substr($text, 0, $maxLength, 'UTF-8') . '...'; +} + +/** + * 获取安全新闻数据 + */ +function getSecNews($db, $dateFilter = '', $limit = 50) { + if ($dateFilter) { + $sql = "SELECT article_title, link, author, description, source, upload_time, category + FROM sec_news + WHERE DATE(upload_time) = :date + ORDER BY upload_time DESC + LIMIT :limit"; + $stmt = $db->prepare($sql); + $stmt->bindValue(':date', $dateFilter, PDO::PARAM_STR); + $stmt->bindValue(':limit', $limit, PDO::PARAM_INT); + } else { + $sql = "SELECT article_title, link, author, description, source, upload_time, category + FROM sec_news + ORDER BY upload_time DESC + LIMIT :limit"; + $stmt = $db->prepare($sql); + $stmt->bindValue(':limit', $limit, PDO::PARAM_INT); + } + + $stmt->execute(); + return $stmt->fetchAll(); +} + +/** + * 获取技术文章数据 + */ +function getTechPassage($db, $dateFilter = '', $limit = 50) { + if ($dateFilter) { + $sql = "SELECT article_title, link, author, description, source, upload_time, category + FROM tech_passage + WHERE DATE(upload_time) = :date + ORDER BY upload_time DESC + LIMIT :limit"; + $stmt = $db->prepare($sql); + $stmt->bindValue(':date', $dateFilter, PDO::PARAM_STR); + $stmt->bindValue(':limit', $limit, PDO::PARAM_INT); + } else { + $sql = "SELECT article_title, link, author, description, source, upload_time, category + FROM tech_passage + ORDER BY upload_time DESC + LIMIT :limit"; + $stmt = $db->prepare($sql); + $stmt->bindValue(':limit', $limit, PDO::PARAM_INT); + } + + $stmt->execute(); + return $stmt->fetchAll(); +} + +/** + * 获取百度新闻数据 + */ +function getBaiduNews($db, $dateFilter = '', $limit = 50) { + if ($dateFilter) { + $sql = "SELECT article_title, link, description, source, upload_time, keyword + FROM baidu + WHERE DATE(upload_time) = :date + ORDER BY upload_time DESC + LIMIT :limit"; + $stmt = $db->prepare($sql); + $stmt->bindValue(':date', $dateFilter, PDO::PARAM_STR); + $stmt->bindValue(':limit', $limit, PDO::PARAM_INT); + } else { + $sql = "SELECT article_title, link, description, source, upload_time, keyword + FROM baidu + ORDER BY upload_time DESC + LIMIT :limit"; + $stmt = $db->prepare($sql); + $stmt->bindValue(':limit', $limit, PDO::PARAM_INT); + } + + $stmt->execute(); + return $stmt->fetchAll(); +} + +/** + * 获取GitHub动态数据 + */ +function getGithubNews($db, $dateFilter = '', $limit = 50) { + if ($dateFilter) { + $sql = "SELECT article_title, link, description, author, upload_time, keyword, language, source + FROM github + WHERE DATE(upload_time) = :date + ORDER BY upload_time DESC + LIMIT :limit"; + $stmt = $db->prepare($sql); + $stmt->bindValue(':date', $dateFilter, PDO::PARAM_STR); + $stmt->bindValue(':limit', $limit, PDO::PARAM_INT); + } else { + $sql = "SELECT article_title, link, description, author, upload_time, keyword, language, source + FROM github + ORDER BY upload_time DESC + LIMIT :limit"; + $stmt = $db->prepare($sql); + $stmt->bindValue(':limit', $limit, PDO::PARAM_INT); + } + + $stmt->execute(); + return $stmt->fetchAll(); +} + +/** + * 获取微信文章数据(搜狗微信) + */ +function getWxNews($db, $dateFilter = '', $limit = 50) { + if ($dateFilter) { + $sql = "SELECT article_title, link, description, upload_time, author, keyword + FROM wx_news + WHERE DATE(upload_time) = :date + ORDER BY upload_time DESC + LIMIT :limit"; + $stmt = $db->prepare($sql); + $stmt->bindValue(':date', $dateFilter, PDO::PARAM_STR); + $stmt->bindValue(':limit', $limit, PDO::PARAM_INT); + } else { + $sql = "SELECT article_title, link, description, upload_time, author, keyword + FROM wx_news + ORDER BY upload_time DESC + LIMIT :limit"; + $stmt = $db->prepare($sql); + $stmt->bindValue(':limit', $limit, PDO::PARAM_INT); + } + + $stmt->execute(); + return $stmt->fetchAll(); +} + +/** + * 获取其他RSS源数据(uni_rss表) + */ +function getOtherRss($db, $dateFilter = '', $limit = 50) { + if ($dateFilter) { + $sql = "SELECT article_title, link, description, upload_time, author, source + FROM uni_rss + WHERE DATE(upload_time) = :date + ORDER BY upload_time DESC + LIMIT :limit"; + $stmt = $db->prepare($sql); + $stmt->bindValue(':date', $dateFilter, PDO::PARAM_STR); + $stmt->bindValue(':limit', $limit, PDO::PARAM_INT); + } else { + $sql = "SELECT article_title, link, description, upload_time, author, source + FROM uni_rss + ORDER BY upload_time DESC + LIMIT :limit"; + $stmt = $db->prepare($sql); + $stmt->bindValue(':limit', $limit, PDO::PARAM_INT); + } + + $stmt->execute(); + return $stmt->fetchAll(); +} + +/** + * 渲染安全新闻HTML + */ +function renderSecNews($articles) { + if (empty($articles)) { + return '

'; + } + + $html = ''; + foreach ($articles as $article) { + $html .= '
'; + $html .= '

' . + htmlspecialchars($article['article_title']) . '

'; + $html .= ''; + if (!empty($article['description'])) { + $html .= '
' . htmlspecialchars(truncateText($article['description'], 300)) . '
'; + } + $html .= '
'; + $html .= '
'; + } + + return $html; +} + +/** + * 渲染技术文章HTML + */ +function renderTechPassage($articles) { + if (empty($articles)) { + return '

❌ 暂无技术文章数据

'; + } + + $html = ''; + foreach ($articles as $article) { + $html .= '
'; + $html .= '

' . + htmlspecialchars($article['article_title']) . '

'; + $html .= ''; + if (!empty($article['description'])) { + $html .= '
' . htmlspecialchars(truncateText($article['description'], 300)) . '
'; + } + $html .= '
'; + $html .= '
'; + } + + return $html; +} + +/** + * 渲染百度新闻HTML + */ +function renderBaiduNews($articles) { + if (empty($articles)) { + return '

❌ 暂无百度新闻数据

'; + } + + $html = ''; + foreach ($articles as $article) { + $html .= '
'; + $html .= '

' . + htmlspecialchars($article['article_title']) . '

'; + $html .= ''; + if (!empty($article['description'])) { + $html .= '
' . htmlspecialchars(truncateText($article['description'], 300)) . '
'; + } + $html .= '
'; + $html .= '
'; + } + + return $html; +} + +/** + * 渲染GitHub动态HTML(根据source字段区分四种情况) + */ +function renderGithubNews($articles) { + if (empty($articles)) { + return '

❌ 暂无GitHub动态数据

'; + } + + $html = ''; + foreach ($articles as $article) { + $html .= '
'; + + // 获取source字段 + $source = isset($article['source']) ? trim($article['source']) : ''; + $title = htmlspecialchars($article['article_title']); + $link = htmlspecialchars($article['link']); + + // 根据source值判断显示格式 + if ($source === 'New project') { + $keyword = !empty($article['keyword']) ? '【' . htmlspecialchars($article['keyword']) . '】' : ''; + $html .= '

关键词' . $keyword . '发现新项目:' . $title . '

'; + if (!empty($article['description'])) { + $html .= ''; + } + $html .= ''; + } elseif ($source === 'Project update') { + $html .= '

项目 ' . $title . ' 存在更新!!!

'; + $html .= ''; + if (!empty($article['description'])) { + $html .= ''; + } + if (!empty($article['keyword'])) { + $html .= ''; + } + } elseif ($source === 'New tool') { + $author = !empty($article['author']) ? '【' . htmlspecialchars($article['author']) . '】' : '【未知作者】'; + $html .= '

大佬' . $author . '上传了一个新工具:' . $title . '

'; + if (!empty($article['description'])) { + $html .= ''; + } + $html .= ''; + } elseif ($source === 'New version') { + $author = !empty($article['author']) ? '【' . htmlspecialchars($article['author']) . '】' : '【未知作者】'; + $html .= '

' . $author . '为 ' . $title . ' 发布了新版本,请及时查收!

'; + $html .= ''; + } else { + // 默认格式 + $html .= '

' . $title . '

'; + $html .= ''; + if (!empty($article['description'])) { + $html .= '
' . htmlspecialchars(truncateText($article['description'], 300)) . '
'; + } + } + + $html .= '
'; + $html .= '
'; + } + + return $html; +} + +/** + * 渲染微信文章HTML(搜狗微信) + */ +function renderWxNews($articles) { + if (empty($articles)) { + return '

❌ 暂无微信文章数据

'; + } + + $html = ''; + foreach ($articles as $article) { + $html .= '
'; + + $keyword = isset($article['keyword']) ? trim($article['keyword']) : ''; + $title = htmlspecialchars($article['article_title']); + $link = htmlspecialchars($article['link']); + + if (!empty($keyword)) { + $html .= '

关键词【' . htmlspecialchars($keyword) . '】发现新文章:' . $title . '

'; + } else { + $html .= '

' . $title . '

'; + } + + $html .= ''; + + $html .= '
'; + $html .= '
'; + } + + return $html; +} + +/** + * 渲染其他RSS源HTML(uni_rss) + */ +function renderOtherRss($articles) { + if (empty($articles)) { + return '

❌ 暂无其他RSS源数据

'; + } + + $html = ''; + foreach ($articles as $article) { + $html .= '
'; + + $source = isset($article['source']) ? trim($article['source']) : ''; + $title = htmlspecialchars($article['article_title']); + $link = htmlspecialchars($article['link']); + + if (!empty($source)) { + $html .= '

【' . htmlspecialchars($source) . '】RSS源发现新文章:' . $title . '

'; + } else { + $html .= '

' . $title . '

'; + } + + $html .= ''; + + $html .= '
'; + $html .= '
'; + } + + return $html; +} + +// 处理AJAX请求 +if ($action === 'ajax') { + header('Content-Type: application/json; charset=utf-8'); + + $type = isset($_GET['type']) ? $_GET['type'] : 'sec-news'; + $dateFilter = isset($_GET['date']) ? $_GET['date'] : ''; + $limit = isset($_GET['limit']) ? intval($_GET['limit']) : 50; + + $db = getDatabaseConnection($dbPath); + if (!$db) { + echo json_encode(['success' => false, 'message' => '数据库连接失败']); + exit; + } + + $data = []; + $title = ''; + + switch ($type) { + case 'sec-news': + $data = getSecNews($db, $dateFilter, $limit); + $title = '🔒 安全新闻'; + break; + case 'tech-passage': + $data = getTechPassage($db, $dateFilter, $limit); + $title = '💻 技术文章'; + break; + case 'baidu-news': + $data = getBaiduNews($db, $dateFilter, $limit); + $title = '📊 百度新闻'; + break; + case 'github-news': + $data = getGithubNews($db, $dateFilter, $limit); + $title = '🐙 GitHub动态'; + break; + case 'wx-news': + $data = getWxNews($db, $dateFilter, $limit); + $title = '💬 微信文章'; + break; + case 'other-rss': + $data = getOtherRss($db, $dateFilter, $limit); + $title = '📡 其他来源'; + break; + default: + echo json_encode(['success' => false, 'message' => '无效的类型']); + exit; + } + + echo json_encode([ + 'success' => true, + 'title' => $title, + 'count' => count($data), + 'data' => $data + ]); + exit; +} + +// 获取初始数据(默认显示安全新闻) +$db = getDatabaseConnection($dbPath); +$initialData = []; +$initialTitle = '🔒 安全新闻'; + +if ($db) { + $initialData = getSecNews($db, $dateFilter, $limit); +} +?> + + + + + 资讯推送Web端 + + + + + + +
+

+ +
+
+

📋 选择资讯类型

+
+
+ + + + + + +
+ +
+ + + + + + +
+
+
+
+ +
+ +
+
+ + + + + + + \ No newline at end of file diff --git a/开发计划.md b/开发计划.md index 6e14fa0..5aa71f8 100644 --- a/开发计划.md +++ b/开发计划.md @@ -1,4 +1,4 @@ -## PyBot RSS订阅机器人未来更新计划: +## SecPulse RSS订阅机器人未来更新计划: #### 新功能计划 1. Web界面全面转向PHP,并将于未来与综合导航频道(Infosec Navigator)合并 2. 数据库将由sqlite转型为MySQL @@ -10,5 +10,5 @@ #### 旧功能更新 1. 优化通用RSS订阅功能 -2. 优化PyBot程序运行中可能产生的问题(当前已知:Baidu源会导致程序异常中断) +2. 优化SecPulse程序运行中可能产生的问题(当前已知:Baidu源会导致程序异常中断) 3. 优化Linux服务注册脚本