【卫星安全系列四】Patch 赛题复现
<div id="js_article" class="rich_media" style="margin:0px;padding:0px;outline:0px;position:relative;"><div id="js_base_container" class="rich_media_inner" style="margin:0px;padding:0px;outline:0px;">
<div id="page-content" class="rich_media_area_primary" style="margin:0px;padding:calc(20px + env(safe-area-inset-top)) calc(var(--appmsgPageGap) + env(safe-area-inset-right)) 0 calc(var(--appmsgPageGap) + env(safe-area-inset-left));outline:0px;background:var(--weui-BG-2);">
<div class="rich_media_area_primary_inner" style="margin:0px auto;padding:0px;outline:0px;max-width:677px;">
<div id="img-content" class="rich_media_wrp" style="margin:0px;padding:0px;outline:0px;position:relative;zoom:1;">
<h1 class="rich_media_title " id="activity-name" style="margin:0px 0px 14px;padding:0px;outline:0px;font-weight:400;font-size:22px;line-height:1.4;">
【卫星安全系列四】Patch 赛题复现
</h1>
<div id="meta_content" class="rich_media_meta_list" style="margin:0px 0px 22px;padding:0px;outline:0px;line-height:20px;font-size:0px;overflow-wrap:break-word;hyphens:auto;">
<span id="copyright_logo" class="wx_tap_link js_wx_tap_highlight rich_media_meta icon_appmsg_tag appmsg_title_tag weui-wa-hotarea" style="margin:0px 8px 10px 0px;padding:0px 4px;outline:0px;position:relative;display:inline-block;vertical-align:middle;font-size:12px;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);line-height:1.67;border-radius:2px;width:auto;overflow:visible;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;max-width:70%;font-style:normal;letter-spacing:normal;background:rgba(0, 0, 0, 0.05);color:rgba(0, 0, 0, 0.3);">原创</span><span> </span><span class="rich_media_meta rich_media_meta_text" style="margin:0px 10px 10px 0px;padding:0px;outline:0px;display:inline-block;vertical-align:middle;font-size:15px;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);color:var(--weui-FG-2);">干饭第一名</span><span> </span><span class="rich_media_meta rich_media_meta_nickname" id="profileBt" style="margin:0px 10px 10px 0px;padding:0px;outline:0px;display:inline-block;vertical-align:middle;font-size:15px;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);position:relative;"><a href="javascript:void(0);" class="wx_tap_link js_wx_tap_highlight weui-wa-hotarea" id="js_name" style="margin:0px;padding:0px;outline:0px;color:var(--weui-LINK);text-decoration:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-drag:none;cursor:pointer;position:relative;">山石网科安全技术研究院</a></span><span> </span><span id="meta_content_hide_info" style="margin:0px;padding:0px;outline:0px;"><em id="publish_time" class="rich_media_meta rich_media_meta_text" style="margin:0px 10px 10px 0px;padding:0px;outline:0px;display:inline-block;vertical-align:middle;font-size:15px;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);color:var(--weui-FG-2);font-style:normal;">2023-12-22 10:38</em><span> </span><em id="js_ip_wording_wrp" class="rich_media_meta rich_media_meta_text" role="option" aria-labelledby="js_a11y_op_ip_wording js_ip_wording" style="margin:0px 10px 10px 0px;padding:0px;outline:0px;display:inline-block;vertical-align:middle;font-size:15px;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);color:var(--weui-FG-2);font-style:normal;"><span id="js_a11y_op_ip_wording" aria-hidden="true" style="margin:0px;padding:0px;outline:0px;"></span><span aria-hidden="true" id="js_ip_wording" style="margin:0px;padding:0px;outline:0px;">广东</span></em></span>
</div>
<div class="rich_media_content js_underline_content
autoTypeSetting24psection
" id="js_content" style="margin:0px;padding:0px;outline:0px;color:var(--weui-FG-HALF);font-size:var(--articleFontsize);overflow:hidden;text-align:justify;position:relative;z-index:0;visibility:visible;">
<section data-tool="mdnice编辑器" data-website="https://www.mdnice.com" style="margin:0px;padding:0px 10px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;font-size:16px;letter-spacing:0px;white-space:normal;color:black;line-height:1.6;word-break:break-word;text-align:left;font-family:"visibility:visible;">
<h2 data-tool="mdnice编辑器" style="margin:10px auto;padding:0px;outline:0px;font-weight:bold;font-size:22px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;height:40px;background-color:#FBFBFB;border-bottom:1px solid #F6F6F6;overflow:hidden;visibility:visible;">
<span style="margin:0px 0px 0px -10px;padding:0px 30px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;display:inline-block;width:auto;height:40px;background-color:#212122;border-bottom-right-radius:100px;color:#FFFFFF;line-height:40px;font-size:16px;visibility:visible;">题目介绍</span>
</h2>
<pre data-tool="mdnice编辑器" style="margin:10px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;visibility:visible;"><code style="margin:0px;padding:16px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;color:#333333;background:#F8F8F8;display:-webkit-box;font-family:"border-radius:0px;font-size:12px;visibility:visible;"> We have an encrypted telemetry link from one of our satellites but we seem to have lost the encryption key.Thankfully we can still send unencrypted commands using our COSMOS interface(included).I've also included the last version of kit_to.so that was updated to the satellite.Can you help us restore communication with the satellite so we can see what error "flag" is being transmitted? </code></pre>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;visibility:visible;">
现阶段对题目的描述我们都可以认为是给我们的相关的提示。主要是说加密的密钥丢了,但是我们可以用COSMOS接口来发送未加密的命令。同时主办方还提供了该卫星使用的一个共享文件库kit_to.so,这里要求选手恢复与卫星的通信,其中flag就存在于传输的错误信息当中。
</p>
<h2 data-tool="mdnice编辑器" style="margin:10px auto;padding:0px;outline:0px;font-weight:bold;font-size:22px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;height:40px;background-color:#FBFBFB;border-bottom:1px solid #F6F6F6;overflow:hidden;visibility:visible;">
<span style="margin:0px 0px 0px -10px;padding:0px 30px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;display:inline-block;width:auto;height:40px;background-color:#212122;border-bottom-right-radius:100px;color:#FFFFFF;line-height:40px;font-size:16px;visibility:visible;">环境搭建</span>
</h2>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;visibility:visible;">
这个题因为用到了COSMOS这个东西,然后题目提供的COSMOS是OpenSatKit2.1套件当中的一部分,为了启动这个cosmos需要一定的环境,这里建议复现的话使用Ubuntu18.04即可,这样环境容易解决一些;
</p>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;visibility:visible;">
在cosmos下有个INSTALL文件,内容如下
</p>
<pre data-tool="mdnice编辑器" style="margin:10px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;visibility:visible;"><code style="margin:0px;padding:16px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;color:#333333;background:#F8F8F8;display:-webkit-box;font-family:"border-radius:0px;font-size:12px;visibility:visible;">$ ./setup.sh
$ <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;color:#0086B3;line-height:26px;visibility:visible;">source</span> ~/.bashrc
$ rm Gemfile.lock
$ bundle install </code></pre>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
这里本来按照执行应该是可以直接安装启动cosmos的依赖的,但是可能是版本更替了,Ubuntu的软件源默认安装的跟本题需要的依赖版本不一致导致没办法启动,这里主要是该题目需要<strong style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">cosmos4.4</strong>版本的,而该版本的需要用到ruby2.3版本来启动,而现在的Ubuntu18.04 apt 直接安装的已经是2.5版本无法启动,这里使用rvm来安装对应需要的ruby版本,具体命令如下
</p>
<pre data-tool="mdnice编辑器" style="margin:10px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><code style="margin:0px;padding:16px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;color:#333333;background:#F8F8F8;display:-webkit-box;font-family:"border-radius:0px;font-size:12px;">sudo apt install rvm
rvm list known
rvm install ruby-2.3.8 --<span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;color:#0086B3;line-height:26px;">disable</span>-stable
rvm use 2.3.8
rvm use 2.3.8 --default
ruby -v 显示2.3.8即可 </code></pre>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
作为上述步骤,可以尝试使用如下命令查看是否能够启动COSMOS的界面
</p>
<pre data-tool="mdnice编辑器" style="margin:10px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><code style="margin:0px;padding:16px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;color:#333333;background:#F8F8F8;display:-webkit-box;font-family:"border-radius:0px;font-size:12px;">ruby Launcher </code></pre>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
正常启动应该是下面这个界面
</p>
<section style="margin:0px 0px 24px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;text-align:center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100019732" data-ratio="0.8701472556894244" data-s="300,640" data-src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9EcGvaupqK4RGE8S8EmyN0au1wanrRnPj6NrpIY1jrNxrFd1ich9Om0Fw/640?wx_fmt=png&from=appmsg" data-type="png" data-w="747" data-original-style="" data-index="1" src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9EcGvaupqK4RGE8S8EmyN0au1wanrRnPj6NrpIY1jrNxrFd1ich9Om0Fw/640?wx_fmt=png&from=appmsg&tp=wxpic&wxfrom=5&wx_lazy=1&wx_co=1" _width="677px" crossorigin="anonymous" alt="图片" data-fail="0" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;vertical-align:bottom;height:auto !important;visibility:visible !important;width:657px !important;" /></section>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
<span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;letter-spacing:0px;">但是大概率是不能正常启动的,这个时候使用如下命令来安装对应依赖,不出意外的话应该是不能够直接安装完成的。</span>
</p>
<pre data-tool="mdnice编辑器" style="margin:10px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><code style="margin:0px;padding:16px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;color:#333333;background:#F8F8F8;display:-webkit-box;font-family:"border-radius:0px;font-size:12px;">bundle install </code></pre>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
这个时候直接去官网 https://rubygems.org,查看安装不成功的依赖,直接找到对应版本进行安装即可。当所有依赖安装完成时即可正常启动cosmos界面
</p>
<h2 data-tool="mdnice编辑器" style="margin:10px auto;padding:0px;outline:0px;font-weight:bold;font-size:22px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;height:40px;background-color:#FBFBFB;border-bottom:1px solid #F6F6F6;overflow:hidden;">
<span style="margin:0px 0px 0px -10px;padding:0px 30px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;display:inline-block;width:auto;height:40px;background-color:#212122;border-bottom-right-radius:100px;color:#FFFFFF;line-height:40px;font-size:16px;">相关背景知识</span>
</h2>
<ol data-tool="mdnice编辑器" class="list-paddingleft-1" style="margin:8px 0px;padding:0px 0px 0px 25px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<li style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<section style="margin:5px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;color:#010101;font-size:15px;font-family:"">cFS</section>
</li>
</ol>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
cFS(core Flight Software),是NASA公布的框架,其是独立于平台和项目的可重用软件;据说可以节约成本,它主要有四个组件如下
</p>
<ul data-tool="mdnice编辑器" class="list-paddingleft-1" style="margin:8px 0px;padding:0px 0px 0px 25px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<li style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<section style="margin:5px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;color:#010101;font-size:15px;font-family:"">core Flight Executive(cFE):核心飞行执行环境</section>
</li>
<li style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<section style="margin:5px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;color:#010101;font-size:15px;font-family:"">Operating System Abstraction Layer(OSAL):操作系统抽象层</section>
</li>
<li style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<section style="margin:5px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;color:#010101;font-size:15px;font-family:"">Platform Support Package(PSP):平台支持组件</section>
</li>
<li style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<section style="margin:5px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;color:#010101;font-size:15px;font-family:"">cFS Applications:cFS应用程序 (这是这道题解题主要用到的)</section>
</li>
</ul>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
其中cFS常见的应用如下
</p>
<section data-tool="mdnice编辑器" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;">
<table style="margin:0px 0px 10px;padding:0px;outline:0px;border-collapse:collapse;display:table;width:657px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<thead style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:white;">
<th style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;background:#F0F0F0;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
应用名称
</th>
<th style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;background:#F0F0F0;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
功能
</th>
</tr>
</thead>
<tbody style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:0px;border-style:none;border-color:currentcolor;">
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:white;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
CFDP(CF)
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
从/向地面站接收/发送文件
</td>
</tr>
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:#F8F8F8;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
Checksum(CS)
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
对内存、表和文件进行数据完整性校验
</td>
</tr>
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:white;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
Command Ingest Lab(CI)
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
<span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">通过UDP/IP端口接收</span><a style="margin:0px;padding:0px;outline:0px;color:var(--weui-LINK);text-decoration:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-drag:none;cursor:pointer;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">CCSDS</span><i class="wx_search_keyword" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;display:inline-block;vertical-align:super;font-size:10px;width:1.2em;height:1.2em;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:100%;background-color:var(--weui-LINK);-webkit-mask-image:url("data:image/svg+xml,%3csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.60772 8.29444C7.02144 8.73734 6.29139 9 5.5 9C3.567 9 2 7.433 2 5.5C2 3.567 3.567 2 5.5 2C7.433 2 9 3.567 9 5.5C9 6.28241 8.74327 7.00486 8.30946 7.5877C8.3183 7.59444 8.3268 7.60186 8.33488 7.60994L10.4331 9.70816L9.726 10.4153L7.62777 8.31704C7.62055 8.30983 7.61387 8.30228 7.60772 8.29444ZM8 5.5C8 6.88071 6.88071 8 5.5 8C4.11929 8 3 6.88071 3 5.5C3 4.11929 4.11929 3 5.5 3C6.88071 3 8 4.11929 8 5.5Z' fill='%23576B95'/%3e%3c/svg%3e""></i></a><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">遥测指令包</span>
</td>
</tr>
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:#F8F8F8;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
Telemetry Output Lab(TO)
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
发送CCSDS遥测帧
</td>
</tr>
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:white;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
Data Storage(DS)
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
为下行链路记录板载的星务、工程和科学依据
</td>
</tr>
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:#F8F8F8;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
File Manager(FM)
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
为地面站提供文件管理界面
</td>
</tr>
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:white;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
<a style="margin:0px;padding:0px;outline:0px;color:var(--weui-LINK);text-decoration:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-drag:none;cursor:pointer;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">House Keeping<i class="wx_search_keyword" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;display:inline-block;vertical-align:super;font-size:10px;width:1.2em;height:1.2em;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:100%;background-color:var(--weui-LINK);-webkit-mask-image:url("data:image/svg+xml,%3csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.60772 8.29444C7.02144 8.73734 6.29139 9 5.5 9C3.567 9 2 7.433 2 5.5C2 3.567 3.567 2 5.5 2C7.433 2 9 3.567 9 5.5C9 6.28241 8.74327 7.00486 8.30946 7.5877C8.3183 7.59444 8.3268 7.60186 8.33488 7.60994L10.4331 9.70816L9.726 10.4153L7.62777 8.31704C7.62055 8.30983 7.61387 8.30228 7.60772 8.29444ZM8 5.5C8 6.88071 6.88071 8 5.5 8C4.11929 8 3 6.88071 3 5.5C3 4.11929 4.11929 3 5.5 3C6.88071 3 8 4.11929 8 5.5Z' fill='%23576B95'/%3e%3c/svg%3e""></i></a><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">(HK)</span>
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
从其他应用程序收集和重新打包遥测数据
</td>
</tr>
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:#F8F8F8;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
Heath and Safety(HS)
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
确保关键业务、后台服务等正常、检测CPU占用和计算CPU利用率
</td>
</tr>
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:white;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
Limit Checker(LC)
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
对阈值进行检测,在超出阈值时采取行动
</td>
</tr>
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:#F8F8F8;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
Memory Dwell(MD)
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
允许地面遥测远程内存位置的内容,主要用于调试
</td>
</tr>
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:white;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
Memory Manager(MM)
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
提供内存管理和dunp的能力
</td>
</tr>
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:#F8F8F8;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
Software Bus(SB)
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
通过各种“插件”形式的网络协议船体软件总线消息
</td>
</tr>
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:white;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
Scheduler(SCH)
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
对板载活动进行调度
</td>
</tr>
<tr style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;border-width:1px 0px 0px;border-style:solid none none;border-color:#CCCCCC currentcolor currentcolor;background-color:#F8F8F8;">
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
Stored Command(Sc)
</td>
<td style="margin:0px;padding:5px 10px;outline:0px;overflow-wrap:break-word !important;word-break:break-all;hyphens:auto;border:1px solid #CCCCCC;max-width:100%;box-sizing:border-box !important;min-width:85px;text-align:center;">
板载指令序列
</td>
</tr>
</tbody>
</table>
</section>
<ol start="2" data-tool="mdnice编辑器" class="list-paddingleft-1" style="margin:8px 0px;padding:0px 0px 0px 25px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<li style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<section style="margin:5px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;color:#010101;font-size:15px;font-family:"">COSMOS</section>
</li>
</ol>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
建议到官网了解:https://github.com/OpenSatKit/OpenSatKit https://openc3.com/
</p>
<h2 data-tool="mdnice编辑器" style="margin:10px auto;padding:0px;outline:0px;font-weight:bold;font-size:22px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;height:40px;background-color:#FBFBFB;border-bottom:1px solid #F6F6F6;overflow:hidden;">
<span style="margin:0px 0px 0px -10px;padding:0px 30px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;display:inline-block;width:auto;height:40px;background-color:#212122;border-bottom-right-radius:100px;color:#FFFFFF;line-height:40px;font-size:16px;">题目解析</span>
</h2>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
题目主要信息总结如下:
</p>
<ol data-tool="mdnice编辑器" class="list-paddingleft-1" style="margin:8px 0px;padding:0px 0px 0px 25px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<li style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<section style="margin:5px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;color:#010101;font-size:15px;font-family:"">与COSMOS这个系统有关,解题需要</section>
</li>
<li style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<section style="margin:5px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;color:#010101;font-size:15px;font-family:"">题目给与选手两个文件,一个是kit_to.so,另外一个是cosmos.tar.gz,该压缩文件解压是完整的cosmos的目录。</section>
</li>
</ol>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
本地复现按照README.md操作即可
</p>
<pre data-tool="mdnice编辑器" style="margin:10px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><code style="margin:0px;padding:16px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;color:#333333;background:#F8F8F8;display:-webkit-box;font-family:"border-radius:0px;font-size:12px;">sudo make build
sudo make <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;color:#0086B3;line-height:26px;">test</span> <------------测试环境是否成功 </code></pre>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
本地复现时,使用如下命令启动挑战镜像
</p>
<pre data-tool="mdnice编辑器" style="margin:10px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><code style="margin:0px;padding:16px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;color:#333333;background:#F8F8F8;display:-webkit-box;font-family:"border-radius:0px;font-size:12px;">socat -v tcp-listen:19020,reuseaddr <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;color:#0086B3;line-height:26px;">exec</span>:<span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;color:#DD1144;line-height:26px;">"docker run --rm -i -e SERVICE_HOST=172.17.0.1 -e SERVICE_PORT=19021 -e SEED=1 -e FLAG=flag{test} -p 19021\:54321 patch\:challenge"</span> > <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;color:#0086B3;line-height:26px;">log</span> 2>&1 & </code></pre>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
然后使用nc指定ip和端口连接即可
</p>
<section style="margin:0px 0px 24px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;text-align:center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100019733" data-ratio="0.9505851755526658" data-s="300,640" data-src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9ElbWLeXKJaNIibcjBeficZypNNBNpGD1eAl9vsK6mWyZrNx9IMAxpAOSw/640?wx_fmt=png&from=appmsg" data-type="png" data-w="769" data-original-style="" data-index="2" src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9ElbWLeXKJaNIibcjBeficZypNNBNpGD1eAl9vsK6mWyZrNx9IMAxpAOSw/640?wx_fmt=png&from=appmsg&tp=wxpic&wxfrom=5&wx_lazy=1&wx_co=1" _width="677px" crossorigin="anonymous" alt="图片" data-fail="0" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;vertical-align:bottom;height:auto !important;visibility:visible !important;width:657px !important;" /></section>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
<span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;letter-spacing:0px;">这里的打印信息存在一部分指示</span>
</p>
<pre data-tool="mdnice编辑器" style="margin:10px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><code style="margin:0px;padding:16px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;color:#333333;background:#F8F8F8;display:-webkit-box;font-family:"border-radius:0px;font-size:12px;"><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">Starting up </span><a style="margin:0px;padding:0px;outline:0px;color:var(--weui-LINK);text-decoration:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-drag:none;cursor:pointer;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">CFS</span><i class="wx_search_keyword" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;display:inline-block;vertical-align:super;font-size:10px;width:1.2em;height:1.2em;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:100%;background-color:var(--weui-LINK);-webkit-mask-image:url("data:image/svg+xml,%3csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.60772 8.29444C7.02144 8.73734 6.29139 9 5.5 9C3.567 9 2 7.433 2 5.5C2 3.567 3.567 2 5.5 2C7.433 2 9 3.567 9 5.5C9 6.28241 8.74327 7.00486 8.30946 7.5877C8.3183 7.59444 8.3268 7.60186 8.33488 7.60994L10.4331 9.70816L9.726 10.4153L7.62777 8.31704C7.62055 8.30983 7.61387 8.30228 7.60772 8.29444ZM8 5.5C8 6.88071 6.88071 8 5.5 8C4.11929 8 3 6.88071 3 5.5C3 4.11929 4.11929 3 5.5 3C6.88071 3 8 4.11929 8 5.5Z' fill='%23576B95'/%3e%3c/svg%3e""></i></a><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"> UDP Forwarding Service on tcp:172.17.0.1:19021</span></span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">Booting...</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">Checking File System...</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">File System Check: Pass</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">CFE_PSP: Clearing out CFE CDS Shared memory segment.</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">CFE_PSP: Clearing out CFE Reset Shared memory segment.</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">CFE_PSP: Clearing out CFE User Reserved Shared memory segment.</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">2033-338-02:06:23.82128 POWER ON RESET due to Power Cycle (Power Cycle).</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">2033-338-02:06:23.82131 ES </span><a style="margin:0px;padding:0px;outline:0px;color:var(--weui-LINK);text-decoration:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-drag:none;cursor:pointer;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">Startup<i class="wx_search_keyword" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;display:inline-block;vertical-align:super;font-size:10px;width:1.2em;height:1.2em;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:100%;background-color:var(--weui-LINK);-webkit-mask-image:url("data:image/svg+xml,%3csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.60772 8.29444C7.02144 8.73734 6.29139 9 5.5 9C3.567 9 2 7.433 2 5.5C2 3.567 3.567 2 5.5 2C7.433 2 9 3.567 9 5.5C9 6.28241 8.74327 7.00486 8.30946 7.5877C8.3183 7.59444 8.3268 7.60186 8.33488 7.60994L10.4331 9.70816L9.726 10.4153L7.62777 8.31704C7.62055 8.30983 7.61387 8.30228 7.60772 8.29444ZM8 5.5C8 6.88071 6.88071 8 5.5 8C4.11929 8 3 6.88071 3 5.5C3 4.11929 4.11929 3 5.5 3C6.88071 3 8 4.11929 8 5.5Z' fill='%23576B95'/%3e%3c/svg%3e""></i></a><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">: CFE_ES_Main </span></span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;font-weight:bold;line-height:26px;">in</span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"> EARLY_INIT state</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">CFE_PSP: CFE_PSP_AttachExceptions Called</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">2033-338-02:06:23.82132 ES Startup: CFE_ES_Main entering CORE_STARTUP state</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">2033-338-02:06:23.82132 ES Startup: Starting Object Creation calls.</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">2033-338-02:06:23.82132 ES Startup: Calling CFE_ES_CDSEarlyInit</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">2033-338-02:06:23.82135 ES Startup: Calling CFE_EVS_EarlyInit</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">2033-338-02:06:23.82135 Event Log cleared following power-on reset</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">2033-338-02:06:23.82136 ES Startup: Calling CFE_SB_EarlyInit</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">2033-338-02:06:23.82151 SB internal message format: CCSDS Space Packet Protocol version 1</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">2033-338-02:06:23.82156 ES Startup: Calling CFE_TIME_EarlyInit</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">1980-012-14:03:20.00000 ES Startup: Calling CFE_TBL_EarlyInit</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">1980-012-14:03:20.00005 ES Startup: Calling CFE_FS_EarlyInit</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">1980-012-14:03:20.00009 ES Startup: Core App: CFE_EVS created. App ID: 0</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">EVS Port1 42/1/CFE_EVS 1: cFE EVS Initialized. cFE Version 6.7.1.0</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">EVS Port1 42/1/CFE_EVS 14: No subscribers </span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;font-weight:bold;line-height:26px;">for</span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"> MsgId 0x808,sender CFE_EVS</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">1980-012-14:03:20.05038 ES Startup: Core App: CFE_SB created. App ID: 1</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">1980-012-14:03:20.05043 SB:Registered 4 events </span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;font-weight:bold;line-height:26px;">for</span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"> filtering</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">EVS Port1 42/1/CFE_SB 1: cFE SB Initialized</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">EVS Port1 42/1/CFE_SB 14: No subscribers </span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;font-weight:bold;line-height:26px;">for</span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"> MsgId 0x808,sender CFE_SB</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">1980-012-14:03:20.10088 ES Startup: Core App: CFE_ES created. App ID: 2</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">EVS Port1 42/1/CFE_ES 1: cFE ES Initialized</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">EVS Port1 42/1/CFE_SB 14: No subscribers </span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;font-weight:bold;line-height:26px;">for</span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"> MsgId 0x808,sender CFE_ES</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">EVS Port1 42/1/CFE_ES 2: Versions:cFE 6.7.1.0, OSAL 5.0.1.0, PSP 1.4.0.0, chksm 918</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">EVS Port1 42/1/CFE_SB 14: No subscribers </span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;font-weight:bold;line-height:26px;">for</span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"> MsgId 0x808,sender CFE_ES</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">EVS Port1 42/1/CFE_ES 91: Mission osk </span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">EVS Port1 42/1/CFE_SB 14: No subscribers </span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;font-weight:bold;line-height:26px;">for</span><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"> MsgId 0x808,sender CFE_ES</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">EVS Port1 42/1/CFE_ES 92: Build 202312050206 root@c564afab4cbd</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">1980-012-14:03:20.15117 ES Startup: Core App: CFE_TIME created. App ID: 3</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">EVS Port1 42/1/CFE_TIME 1: cFE TIME Initialized</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">1980-012-14:03:20.20175 ES Startup: Core App: CFE_TBL created. App ID: 4</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">EVS Port1 42/1/CFE_TBL 1: cFE TBL Initialized. cFE Version 6.7.1.0</span> <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">1980-012-14:03:20.25228 ES Startup: Finished ES </span><a style="margin:0px;padding:0px;outline:0px;color:var(--weui-LINK);text-decoration:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-drag:none;cursor:pointer;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">CreateObject<i class="wx_search_keyword" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;display:inline-block;vertical-align:super;font-size:10px;width:1.2em;height:1.2em;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:100%;background-color:var(--weui-LINK);-webkit-mask-image:url("data:image/svg+xml,%3csvg width='12' height='12' viewBox='0 0 12 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.60772 8.29444C7.02144 8.73734 6.29139 9 5.5 9C3.567 9 2 7.433 2 5.5C2 3.567 3.567 2 5.5 2C7.433 2 9 3.567 9 5.5C9 6.28241 8.74327 7.00486 8.30946 7.5877C8.3183 7.59444 8.3268 7.60186 8.33488 7.60994L10.4331 9.70816L9.726 10.4153L7.62777 8.31704C7.62055 8.30983 7.61387 8.30228 7.60772 8.29444ZM8 5.5C8 6.88071 6.88071 8 5.5 8C4.11929 8 3 6.88071 3 5.5C3 4.11929 4.11929 3 5.5 3C6.88071 3 8 4.11929 8 5.5Z' fill='%23576B95'/%3e%3c/svg%3e""></i></a><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"> table entries.</span></span> 1980-012-14:03:20.25231 ES Startup: CFE_ES_Main entering CORE_READY state
1980-012-14:03:20.25235 ES Startup: Opened ES App Startup file: /cf/cfe_es_startup.scr
1980-012-14:03:20.25249 ES Startup: Loading shared library: /cf/cfs_lib.so
CFS Lib Initialized. Version 2.2.0.01980-012-14:03:20.25272 ES Startup: Loading shared library: /cf/osk_app_lib.so
1980-012-14:03:20.25318 ES Startup: Loading shared library: /cf/expat_lib.so
EXPAT Library 2.1.0 Loaded
1980-012-14:03:20.25336 ES Startup: Loading file: /cf/kit_to.so, APP: KIT_TO
1980-012-14:03:20.25345 ES Startup: KIT_TO loaded and created
1980-012-14:03:20.25356 ES Startup: Loading file: /cf/kit_ci.so, APP: KIT_CI
1980-012-14:03:20.25361 ES Startup: KIT_CI loaded and created
EVS Port1 42/1/KIT_CI 100: KIT_CI Initialized. Version 1.0.0.0
1980-012-14:03:20.25372 ES Startup: Loading file: /cf/kit_sch.so, APP: KIT_SCH
1980-012-14:03:20.25380 ES Startup: KIT_SCH loaded and created
1980-012-14:03:20.25391 ES Startup: Loading file: /cf/mm.so, APP: MM
1980-012-14:03:20.25400 ES Startup: MM loaded and created
EVS Port1 42/1/MM 1: MM Initialized. Version 2.4.1.0
EVS Port1 42/1/KIT_TO 135: Removed 0 table packet entries
EVS Port1 42/1/KIT_TO 122: Loaded new table with 62 packets
EVS Port1 42/1/KIT_TO 15: Sucessfully Replaced table 0 using file /cf/kit_to_pkt_tbl.json
EVS Port1 42/1/KIT_TO 100: KIT_TO Initialized. Version 1.0.0.0
EVS Port1 42/1/KIT_SCH 15: Sucessfully Replaced table 0 using file /cf/kit_sch_msg_tbl.json
EVS Port1 42/1/KIT_SCH 15: Sucessfully Replaced table 1 using file /cf/kit_sch_sch_tbl.json
EVS Port1 42/1/KIT_SCH 101: KIT_SCH Initialized. Version 1.0.0.0
1980-012-14:03:20.30456 ES Startup: CFE_ES_Main entering APPS_INIT state
1980-012-14:03:20.30457 ES Startup: CFE_ES_Main entering OPERATIONAL state
EVS Port1 42/1/CFE_TIME 21: Stop FLYWHEEL
EVS Port1 42/1/KIT_SCH 136: Multiple slots processed: slot = 0, count = 2
EVS Port1 42/1/KIT_SCH 136: Multiple slots processed: slot = 1, count = 2
EVS Port1 42/1/KIT_SCH 134: Major Frame Sync too noisy (Slot 1). Disabling synchronization. </code></pre>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
通过Starting up CFS UDP Forwarding Service on tcp:172.17.0.1:19021了解,这个服务是系统为cFS,且说明了IP地址和端口号;
</p>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
通过COSMOS的使用说明,可以知道,需要修改cmd_tlm_server.txt文件中的端口号,其位置在cosmos/config/tools/cmd_tlm_server下。主要修改如下
</p>
<pre data-tool="mdnice编辑器" style="margin:10px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><code style="margin:0px;padding:16px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;color:#333333;background:#F8F8F8;display:-webkit-box;font-family:"border-radius:0px;font-size:12px;">INTERFACE LOCAL_CFS_INT tcpip_client_interface.rb 127.0.0.1 54321 54321 10 nil </code></pre>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
这里两个端口号分别是读写端口,需要修改为题目开头连接的端口号
</p>
<pre data-tool="mdnice编辑器" style="margin:10px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><code style="margin:0px;padding:16px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;color:#333333;background:#F8F8F8;display:-webkit-box;font-family:"border-radius:0px;font-size:12px;">INTERFACE LOCAL_CFS_INT tcpip_client_interface.rb 127.0.0.1 19021 19021 10 nil </code></pre>
<blockquote data-tool="mdnice编辑器" style="margin:1.2em 0px;padding:10px 1em;outline:0px;border-width:medium medium medium 4px;border-style:none none none solid;border-color:currentcolor currentcolor currentcolor #DDDDDD;color:#777777;font-size:0.9em;text-indent:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow:auto;background:rgba(0, 0, 0, 0.05);quotes:none;">
<p style="margin:0px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;text-indent:30px;font-size:15px;font-family:-apple-system-font, BlinkMacSystemFont, "line-height:1.75em;">
这里nc连接是19020端口,cosmos连接的是19021端口,这样cosmos发送指令在终端才会有回显
</p>
</blockquote>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
然后使用ruby 启动cosmos的图形化界面
</p>
<section style="margin:0px 0px 24px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;text-align:center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100019734" data-ratio="0.5481481481481482" data-s="300,640" data-src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9EiaGhsxPRGgxGBFudJojib9a3K3mqLtseqetCHK2nUCNvr3nbeb4KTicfA/640?wx_fmt=png&from=appmsg" data-type="png" data-w="1080" data-original-style="" data-index="3" src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9EiaGhsxPRGgxGBFudJojib9a3K3mqLtseqetCHK2nUCNvr3nbeb4KTicfA/640?wx_fmt=png&from=appmsg&tp=wxpic&wxfrom=5&wx_lazy=1&wx_co=1" _width="677px" crossorigin="anonymous" alt="图片" data-fail="0" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;vertical-align:bottom;height:auto !important;visibility:visible !important;width:657px !important;" /></section>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
<span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;letter-spacing:0px;">这时候已经成功连接上了题目</span>
</p>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
在题目回显当中有如下
</p>
<pre data-tool="mdnice编辑器" style="margin:10px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><code style="margin:0px;padding:16px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;color:#333333;background:#F8F8F8;display:-webkit-box;font-family:"border-radius:0px;font-size:12px;">1980-012-14:03:20.25336 ES Startup: Loading file: /cf/kit_to.so, APP: KIT_TO
1980-012-14:03:20.25345 ES Startup: KIT_TO loaded and created </code></pre>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
结合文件名字以及cFS和COSMOS的相关知识,猜测KIT_TO可能是cFS中的服务,在COSMOS当中就是Targets界面当中的KIT_TO
</p>
<section style="margin:0px 0px 24px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;text-align:center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100019735" data-ratio="0.3216494845360825" data-s="300,640" data-src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9E6xypTLBBghrLks3vibfThxHR1wJPb1cIl6nZtgYwCmw6UhA9I3rt5uw/640?wx_fmt=png&from=appmsg" data-type="png" data-w="485" data-original-style="" data-index="4" src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9E6xypTLBBghrLks3vibfThxHR1wJPb1cIl6nZtgYwCmw6UhA9I3rt5uw/640?wx_fmt=png&from=appmsg&tp=wxpic&wxfrom=5&wx_lazy=1&wx_co=1" _width="485px" crossorigin="anonymous" alt="图片" data-fail="0" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;vertical-align:bottom;height:auto !important;visibility:visible !important;width:485px !important;" /></section>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
<span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;letter-spacing:0px;">然后使用ida对kit_to.so文件进行逆向分析,打开发现其符号表都存在,方便查找,同时题目中说明了flag是存在于传输中的信息当中,所以在ida中直接搜索flag字符串,找到一个flag相关的函数如下</span>
</p>
<section style="margin:0px 0px 24px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;text-align:center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100019736" data-ratio="0.5416666666666666" data-s="300,640" data-src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9E9JNibibShCvSH8nfUicV0VXhiaL60dIBoaMYuyic1Tk6jSibicgJUT05rRpMA/640?wx_fmt=png&from=appmsg" data-type="png" data-w="1080" data-original-style="" data-index="5" src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9E9JNibibShCvSH8nfUicV0VXhiaL60dIBoaMYuyic1Tk6jSibicgJUT05rRpMA/640?wx_fmt=png&from=appmsg&tp=wxpic&wxfrom=5&wx_lazy=1&wx_co=1" _width="677px" crossorigin="anonymous" alt="图片" data-fail="0" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;vertical-align:bottom;height:auto !important;visibility:visible !important;width:657px !important;" /></section>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
<span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;letter-spacing:0px;">代码很简单,从环境变量中获取flag,环境变量中不存在flag则将flag设置为一个默认值,然后对KitToFlagPkt进行清零,之后用strcpy将flag存放到KitToFlagPkt当中去,很明显如果我们能将KitToFlagPkt的内存dump下来就能得到flag。</span>
</p>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
注意到回显信息有如下两行
</p>
<pre data-tool="mdnice编辑器" style="margin:10px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><code style="margin:0px;padding:16px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;color:#333333;background:#F8F8F8;display:-webkit-box;font-family:"border-radius:0px;font-size:12px;">1980-012-14:03:20.25391 ES Startup: Loading file: /cf/mm.so, APP: MM
1980-012-14:03:20.25400 ES Startup: MM loaded and created </code></pre>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
猜测其中MM对应cFS的服务Memory Manager(MM),其提供内存的dump服务。
</p>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
找到cosmos的Command Sender操作,其界面如下
</p>
<section style="margin:0px 0px 24px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;text-align:center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100019737" data-ratio="0.5361111111111111" data-s="300,640" data-src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9EB4ATicBD15OtzoB7ljsoCRyicx6AGkLUt3IUOIlDhSTibmt0KdK5iauBug/640?wx_fmt=png&from=appmsg" data-type="png" data-w="1080" data-original-style="" data-index="6" src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9EB4ATicBD15OtzoB7ljsoCRyicx6AGkLUt3IUOIlDhSTibmt0KdK5iauBug/640?wx_fmt=png&from=appmsg&tp=wxpic&wxfrom=5&wx_lazy=1&wx_co=1" _width="677px" crossorigin="anonymous" alt="图片" data-fail="0" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;vertical-align:bottom;height:auto !important;visibility:visible !important;width:657px !important;" /></section>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
<span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;letter-spacing:0px;">这里Target选择为MM服务,Command选择为NOOP发现其有5个固定的参数,所以其他Command操作我们需要从第6个参数开始设置</span>
</p>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
这里我们需要dump内存,所以Command选择使用PEEK_MEM,其要求参数如下
</p>
<section style="margin:0px 0px 24px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;text-align:center;"><img class="rich_pages wxw-img" data-galleryid="" data-imgfileid="100019738" data-ratio="0.5453703703703704" data-s="300,640" data-src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9EhMQiaUGHFczb1PaMpLd9bHTlpibHqMoMdRygxzHUPHCuLxsBHGLju7Sw/640?wx_fmt=png&from=appmsg" data-type="png" data-w="1080" data-original-style="" data-index="7" src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9EhMQiaUGHFczb1PaMpLd9bHTlpibHqMoMdRygxzHUPHCuLxsBHGLju7Sw/640?wx_fmt=png&from=appmsg&tp=wxpic&wxfrom=5&wx_lazy=1&wx_co=1" _width="677px" crossorigin="anonymous" alt="图片" data-fail="0" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;vertical-align:bottom;height:auto !important;visibility:visible !important;width:657px !important;" /></section>
<ul data-tool="mdnice编辑器" class="list-paddingleft-1" style="margin:8px 0px;padding:0px 0px 0px 25px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<li style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<section style="margin:5px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;color:#010101;font-size:15px;font-family:"">DATA_SIZE:每次读取的字符的比特数,只有8、16、32可选;经过测试,16.32会报错只能选择8</section>
</li>
<li style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<section style="margin:5px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;color:#010101;font-size:15px;font-family:"">MEM_TYPE:读取的内存的类型</section>
</li>
<li style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<section style="margin:5px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;color:#010101;font-size:15px;font-family:"">PAD_16:Structure padding</section>
</li>
<li style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<section style="margin:5px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;color:#010101;font-size:15px;font-family:"">ADDR_OFFSET:在结构体当中偏移量</section>
</li>
<li style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;">
<section style="margin:5px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;color:#010101;font-size:15px;font-family:"">ADDR_SYMBOL_NAME:结构体名称</section>
</li>
</ul>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
我们这里只需要找到对应的偏移量即可,应为给的kit_to.so的符号信息都存在,直接ida查看即可
</p>
<blockquote data-tool="mdnice编辑器" style="margin:1.2em 0px;padding:10px 1em;outline:0px;border-width:medium medium medium 4px;border-style:none none none solid;border-color:currentcolor currentcolor currentcolor #DDDDDD;color:#777777;font-size:0.9em;text-indent:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow:auto;background:rgba(0, 0, 0, 0.05);quotes:none;">
<p style="margin:0px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;text-indent:30px;font-size:15px;font-family:-apple-system-font, BlinkMacSystemFont, "line-height:1.75em;">
很显然,到这里可以知道不扣掉符号表之类的信息是因为cosmos是通过对应的函数名来以及对应偏移来进行一些指令操作的。
</p>
</blockquote>
<p style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;text-align:center;">
<br />
</p>
<p style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;text-align:center;">
<img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-galleryid="" data-imgfileid="100019739" data-ratio="0.4266009852216749" data-s="300,640" data-src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9EibcWzO3micKbyI1cO9wgm010OGLiaaMw5kXz4cxh4z9VbGpPxaYibMLpjQ/640?wx_fmt=png&from=appmsg" data-type="png" data-w="1015" data-original-style="" data-index="8" src="data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='1px' height='1px' viewBox='0 0 1 1' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E%3C/title%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' fill-opacity='0'%3E%3Cg transform='translate(-249.000000, -126.000000)' fill='%23FFFFFF'%3E%3Crect x='249' y='126' width='1' height='1'%3E%3C/rect%3E%3C/g%3E%3C/g%3E%3C/svg%3E" _width="677px" crossorigin="anonymous" alt="图片" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;vertical-align:bottom;border-radius:8px;background-image:!important;background-position-x:!important;background-position-y:!important;background-repeat-x:!important;background-repeat-y:!important;background-attachment:!important;background-origin:!important;background-clip:!important;background-color:!important;background-size:16px !important;height:280.277px !important;width:657px !important;" />
</p>
<p style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;text-align:center;">
<br />
</p>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
可以看见,flag的偏移量为0xc。如果使用Command Sender的话需要手动多次发送,所以这里借鉴了书上的ruby脚本
</p>
<pre data-tool="mdnice编辑器" style="margin:10px 0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;"><code style="margin:0px;padding:16px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;overflow-x:auto;color:#333333;background:#F8F8F8;display:-webkit-box;font-family:"border-radius:0px;font-size:12px;"><span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;color:#008080;line-height:26px;">12</span>.upto(<span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;color:#008080;line-height:26px;">212</span>) { <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;line-height:26px;">|off|</span> offset = off
cmd(<span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;color:#DD1144;line-height:26px;">"MM PEEK_MEM with CCSDS_STREAMID 6280, CCSDS_SEQUENCE 49152, CCSDS_LENGTH 73, CCSDS_FUNCCODE 2, CCSDS_CHECKSUM 0, DATA_SIZE 8, MEM_TYPE 1, PAD_16 0, ADDR_OFFSET <span style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;color:#333333;line-height:26px;">#{offset}</span>, ADDR_SYMBOL_NAME 'KitToFlagPkt'"</span>)
}</code></pre>
<p style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;text-align:center;">
<br />
</p>
<p style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;text-align:center;">
<img class="rich_pages wxw-img js_img_placeholder wx_img_placeholder" data-galleryid="" data-imgfileid="100019740" data-ratio="0.3479212253829322" data-s="300,640" data-src="https://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnT8qCvzj0Omib9lakIs9lv9EhKRnwnMFxFnlxOvfsbryjibvBoB0gMKjkCGMwDVY4UNEyHo0BtvhhIw/640?wx_fmt=png&from=appmsg" data-type="png" data-w="914" data-original-style="" data-index="9" src="data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='1px' height='1px' viewBox='0 0 1 1' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E%3C/title%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' fill-opacity='0'%3E%3Cg transform='translate(-249.000000, -126.000000)' fill='%23FFFFFF'%3E%3Crect x='249' y='126' width='1' height='1'%3E%3C/rect%3E%3C/g%3E%3C/g%3E%3C/svg%3E" _width="677px" crossorigin="anonymous" alt="图片" style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;vertical-align:bottom;border-radius:8px;background-image:!important;background-position-x:!important;background-position-y:!important;background-repeat-x:!important;background-repeat-y:!important;background-attachment:!important;background-origin:!important;background-clip:!important;background-color:!important;background-size:16px !important;height:228.584px !important;width:657px !important;" />
</p>
<p style="margin:0px;padding:0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;text-align:center;">
<br />
</p>
<p data-tool="mdnice编辑器" style="margin:0px 0px 16px;padding:8px 0px;outline:0px;max-width:100%;box-sizing:border-box !important;overflow-wrap:break-word !important;clear:both;min-height:1em;font-size:15px;text-indent:30px;line-height:1.75em;">
因为前面我将flag设置为flag{test}所以较短,这里只需要将后面的bits Data转换为字符即可得到flag。
</p>
</section>
</div>
</div>
<div id="content_bottom_area" style="margin:0px;padding:0px;outline:0px;">
<div data-len="5" class="article-tag__list" style="margin:0px;padding:24px 0px 0px;outline:0px;font-size:0px;border-radius:0px;background-color:var(--weui-BG-2);user-select:none;">
<div class="article-tags" style="margin:0px;padding:0px;outline:0px;display:flex;flex-wrap:wrap;">
<div data-url="https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzUzMDUxNTE1Mw==&action=getalbum&album_id=3216523349221457920#wechat_redirect" data-tag_id="0" data-album_id="3216523349221457920" data-tag_source="4" role="link" tabindex="0" class="article-tag__item-wrp js_tag weui-wa-hotarea js_wx_tap_highlight wx_tap_link" style="margin:8px 12px 0px 0px;padding:0px;outline:0px;position:relative;gap:4px;display:flex;">
<span class="article-tag__item" style="margin:0px;padding:0px;outline:0px;display:inline-block;font-size:14px;line-height:14px;color:#576B95;"><i class="weui-icon-album" style="margin:0px 2px 2px 0px;padding:0px;outline:0px;display:inline-block;vertical-align:middle;font-size:10px;width:14px;height:14px;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:cover;background-color:currentcolor;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M5.66499 1.16666L5.18159 3.96663H2.16961L1.98446 5.01663H5.00031L4.53703 7.69999H1.51132L1.32617 8.74999H4.35575L3.65077 12.8334H4.71628L5.42126 8.74999H8.09381L7.38883 12.8334H8.45433L9.15931 8.74999H12.0175L12.2027 7.69999H9.34059L9.80387 5.01663H12.6758L12.861 3.96663H9.98515L10.4686 1.16666H9.40305L8.91964 3.96663H6.24709L6.7305 1.16666H5.66499ZM8.27509 7.69999L8.73836 5.01663H6.06581L5.60254 7.69999H8.27509Z' fill='%23576B95'/%3E%3C/svg%3E""></i>卫星安全</span><span class="article-tag__item-num" style="margin:0px;padding:0px;outline:0px;display:inline-block;color:rgba(0, 0, 0, 0.3);border-radius:8px;font-size:14px;line-height:14px;"><span id="" style="margin:0px;padding:0px;outline:0px;">5</span></span>
</div>
<div data-url="https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzUzMDUxNTE1Mw==&action=getalbum&album_id=2452600435720044546#wechat_redirect" data-tag_id="0" data-album_id="2452600435720044546" data-tag_source="1" role="link" tabindex="0" class="article-tag__item-wrp js_tag weui-wa-hotarea js_wx_tap_highlight wx_tap_link" style="margin:8px 12px 0px 0px;padding:0px;outline:0px;position:relative;gap:4px;display:flex;">
<span class="article-tag__item" style="margin:0px;padding:0px;outline:0px;display:inline-block;font-size:14px;line-height:14px;color:#576B95;"><i class="weui-icon-album" style="margin:0px 2px 2px 0px;padding:0px;outline:0px;display:inline-block;vertical-align:middle;font-size:10px;width:14px;height:14px;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:cover;background-color:currentcolor;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M5.66499 1.16666L5.18159 3.96663H2.16961L1.98446 5.01663H5.00031L4.53703 7.69999H1.51132L1.32617 8.74999H4.35575L3.65077 12.8334H4.71628L5.42126 8.74999H8.09381L7.38883 12.8334H8.45433L9.15931 8.74999H12.0175L12.2027 7.69999H9.34059L9.80387 5.01663H12.6758L12.861 3.96663H9.98515L10.4686 1.16666H9.40305L8.91964 3.96663H6.24709L6.7305 1.16666H5.66499ZM8.27509 7.69999L8.73836 5.01663H6.06581L5.60254 7.69999H8.27509Z' fill='%23576B95'/%3E%3C/svg%3E""></i>defcon</span><span class="article-tag__item-num" style="margin:0px;padding:0px;outline:0px;display:inline-block;color:rgba(0, 0, 0, 0.3);border-radius:8px;font-size:14px;line-height:14px;"><span id="" style="margin:0px;padding:0px;outline:0px;">4</span></span>
</div>
<div data-url="https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzUzMDUxNTE1Mw==&action=getalbum&album_id=3233965207434313728#wechat_redirect" data-tag_id="0" data-album_id="3233965207434313728" data-tag_source="4" role="link" tabindex="0" class="article-tag__item-wrp js_tag weui-wa-hotarea js_wx_tap_highlight wx_tap_link" style="margin:8px 12px 0px 0px;padding:0px;outline:0px;position:relative;gap:4px;display:flex;">
<span class="article-tag__item" style="margin:0px;padding:0px;outline:0px;display:inline-block;font-size:14px;line-height:14px;color:#576B95;"><i class="weui-icon-album" style="margin:0px 2px 2px 0px;padding:0px;outline:0px;display:inline-block;vertical-align:middle;font-size:10px;width:14px;height:14px;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:cover;background-color:currentcolor;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M5.66499 1.16666L5.18159 3.96663H2.16961L1.98446 5.01663H5.00031L4.53703 7.69999H1.51132L1.32617 8.74999H4.35575L3.65077 12.8334H4.71628L5.42126 8.74999H8.09381L7.38883 12.8334H8.45433L9.15931 8.74999H12.0175L12.2027 7.69999H9.34059L9.80387 5.01663H12.6758L12.861 3.96663H9.98515L10.4686 1.16666H9.40305L8.91964 3.96663H6.24709L6.7305 1.16666H5.66499ZM8.27509 7.69999L8.73836 5.01663H6.06581L5.60254 7.69999H8.27509Z' fill='%23576B95'/%3E%3C/svg%3E""></i>Hack-a-Sat</span><span class="article-tag__item-num" style="margin:0px;padding:0px;outline:0px;display:inline-block;color:rgba(0, 0, 0, 0.3);border-radius:8px;font-size:14px;line-height:14px;"><span id="" style="margin:0px;padding:0px;outline:0px;">3</span></span>
</div>
<div data-url="https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzUzMDUxNTE1Mw==&action=getalbum&album_id=1559870118803865602#wechat_redirect" data-tag_id="0" data-album_id="1559870118803865602" data-tag_source="4" role="link" tabindex="0" class="article-tag__item-wrp js_tag weui-wa-hotarea js_wx_tap_highlight wx_tap_link" style="margin:8px 12px 0px 0px;padding:0px;outline:0px;position:relative;gap:4px;display:flex;">
<span class="article-tag__item" style="margin:0px;padding:0px;outline:0px;display:inline-block;font-size:14px;line-height:14px;color:#576B95;"><i class="weui-icon-album" style="margin:0px 2px 2px 0px;padding:0px;outline:0px;display:inline-block;vertical-align:middle;font-size:10px;width:14px;height:14px;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:cover;background-color:currentcolor;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M5.66499 1.16666L5.18159 3.96663H2.16961L1.98446 5.01663H5.00031L4.53703 7.69999H1.51132L1.32617 8.74999H4.35575L3.65077 12.8334H4.71628L5.42126 8.74999H8.09381L7.38883 12.8334H8.45433L9.15931 8.74999H12.0175L12.2027 7.69999H9.34059L9.80387 5.01663H12.6758L12.861 3.96663H9.98515L10.4686 1.16666H9.40305L8.91964 3.96663H6.24709L6.7305 1.16666H5.66499ZM8.27509 7.69999L8.73836 5.01663H6.06581L5.60254 7.69999H8.27509Z' fill='%23576B95'/%3E%3C/svg%3E""></i>CTF</span><span class="article-tag__item-num" style="margin:0px;padding:0px;outline:0px;display:inline-block;color:rgba(0, 0, 0, 0.3);border-radius:8px;font-size:14px;line-height:14px;"><span id="" style="margin:0px;padding:0px;outline:0px;">95</span></span>
</div>
<div data-url="https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzUzMDUxNTE1Mw==&action=getalbum&album_id=3212282635314806789#wechat_redirect" data-tag_id="0" data-album_id="3212282635314806789" data-tag_source="1" role="link" tabindex="0" class="article-tag__item-wrp js_tag weui-wa-hotarea js_wx_tap_highlight wx_tap_link" style="margin:8px 0px 0px;padding:0px;outline:0px;position:relative;gap:4px;display:flex;">
<span class="article-tag__item" style="margin:0px;padding:0px;outline:0px;display:inline-block;font-size:14px;line-height:14px;color:#576B95;"><i class="weui-icon-album" style="margin:0px 2px 2px 0px;padding:0px;outline:0px;display:inline-block;vertical-align:middle;font-size:10px;width:14px;height:14px;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:cover;background-color:currentcolor;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M5.66499 1.16666L5.18159 3.96663H2.16961L1.98446 5.01663H5.00031L4.53703 7.69999H1.51132L1.32617 8.74999H4.35575L3.65077 12.8334H4.71628L5.42126 8.74999H8.09381L7.38883 12.8334H8.45433L9.15931 8.74999H12.0175L12.2027 7.69999H9.34059L9.80387 5.01663H12.6758L12.861 3.96663H9.98515L10.4686 1.16666H9.40305L8.91964 3.96663H6.24709L6.7305 1.16666H5.66499ZM8.27509 7.69999L8.73836 5.01663H6.06581L5.60254 7.69999H8.27509Z' fill='%23576B95'/%3E%3C/svg%3E""></i>LEO</span><span class="article-tag__item-num" style="margin:0px;padding:0px;outline:0px;display:inline-block;color:rgba(0, 0, 0, 0.3);border-radius:8px;font-size:14px;line-height:14px;"><span id="" style="margin:0px;padding:0px;outline:0px;">6</span></span>
</div>
</div>
</div>
<div class="appmsg_card_context album_read_card" style="margin:32px 0px 0px;padding:0px;outline:0px;overflow:hidden;font-size:14px;color:rgba(0, 0, 0, 0.9);line-height:1.4;position:relative;background-color:var(--APPMSGCARD-BG);border-radius:8px;user-select:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);zoom:1;">
<div role="button" class="album_read_hd weui-flex" style="margin:0px;padding:20px;outline:0px;display:flex;align-items:center;position:relative;">
<span class="weui-pc-popover__area" style="margin:0px;padding:0px;outline:0px;position:relative;"><span style="margin:0px;padding:0px;outline:0px;">
<div class="album_read_source" style="margin:0px;padding:0px;outline:0px;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;color:rgba(0, 0, 0, 0.55);">
<span class="wx_tap_link js_album_directory__name" style="margin:0px;padding:0px;outline:0px;">卫星安全 · 目录</span><i class="weui-icon-read" style="margin:0px 0px 2px 4px;padding:0px;outline:0px;display:inline-block;vertical-align:middle;font-size:10px;width:6px;height:8px;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:cover;background-color:currentcolor;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='6' height='8' viewBox='0 0 6 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0 0.400002H6V1.6H0V0.400002ZM0 3.4H6V4.6H0V3.4ZM6 6.4H0V7.6H6V6.4Z' fill='black' fill-opacity='0.3'/%3E%3C/svg%3E"color:var(--weui-FG);"></i>
</div>
</span>
<div role="dialog" aria-modal="true" tabindex="0" class="weui-pc-popover__wrp popover-wrp-class" style="margin:0px;padding:0px;outline:0px;opacity:0;visibility:hidden;user-select:none;">
<div class="weui-pc-popover weui-pc-popover_radius-tail weui-pc-popover_pos-right weui-pc-popover_align-center popover-ext-class" style="margin:0px;padding:0px;outline:0px;--weui-pc-popover-tail-size:14px;--weui-pc-popover-negative-space:8px;--weui-pc-popover-offset:12px;--weui-pc-popover-alignoffset:24px;--weui-pc-popover-target-rect:0px;--weui-pc-popover-tail-alignoffset:calc(var(--weui-pc-popover-alignOffset) + var(--weui-pc-popover-target-rect) / 2 - var(--weui-pc-popover-tail-size) / 2);position:absolute;z-index:5000;width:360px;box-sizing:border-box;background-color:var(--weui-BG-5);filter:none;font-size:16px;font-weight:400;color:var(--weui-FG-0);line-height:1.4;border-radius:8px;transition:transform 0.15s cubic-bezier(0.175, 0.885, 0.32, 1.1) 0s;transform:scale(0) translateY(-50%);left:calc(100% + var(--weui-pc-popover-offset));height:430px;box-shadow:rgba(0, 0, 0, 0.1) 0px 2px 20px;transform-origin:0px 0px;top:9.79167px;">
<div class="weui-pc-popover__hd" style="margin:0px;padding:23px 42px 0px;outline:0px;height:32px;display:flex;justify-content:center;">
<div class="weui-pc-popover__title" style="margin:0px;padding:0px;outline:0px;text-align:center;font-size:14px;">
<div class="album_name_title" style="margin:0px;padding:0px;outline:0px;max-width:260px;color:var(--weui-FG-0);font-size:14px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;">
</div>
</div>
</div>
<div class="weui-pc-popover__bd" style="margin:0px;padding:0px;outline:0px;position:relative;z-index:1;height:375px;overflow:hidden;">
<div style="margin:0px;padding:0px;outline:0px;">
</div>
</div>
<div class="weui-pc-popover__tail weui-pc-popover__tail_pos-left" style="margin-top:calc(-1 * var(--weui-radiusTailSize) / 2);margin-right:0px;margin-bottom:0px;margin-left:0px;padding:0px;outline:0px;--weui-radiustailsize:var(--weui-pc-popover-tail-size);--weui-radiustailcolor:var(--weui-BG-5);pointer-events:none;position:absolute;color:var(--weui-BG-5);background:currentcolor;border-radius:2px;width:var(--weui-radiusTailSize);height:var(--weui-radiusTailSize);left:calc(1px - var(--weui-radiusTailSize) / 2);top:215px;transform:rotate(135deg);">
</div>
</div>
</div>
</span>
</div>
<div class="album_read_bd weui-flex" style="margin:0px;padding:0px;outline:0px;display:flex;">
<span role="button" class="album_read_nav_item album_read_nav_prev weui-flex__item wx_tap_link js_wx_tap_highlight" style="margin:0px;padding:0px 20px 20px;outline:0px;flex:1 1 0%;min-width:0px;position:relative;text-align:left;-webkit-box-flex:1;"><span class="album_read_nav_inner" style="margin:0px;padding:0px;outline:0px;"><span class="album_read_nav_btn" style="margin:0px;padding:0px;outline:0px;display:block;color:rgba(0, 0, 0, 0.9);font-weight:500;">上一篇</span><span class="album_read_nav_title" style="margin:6px 0px 0px;padding:0px;outline:0px;display:block;line-height:1.4;font-weight:500;"><span class="album_read_nav_title_inner" style="margin:0px;padding:0px;outline:0px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;">【卫星安全系列三】Leaky Crypto赛题复现</span></span></span></span><span role="button" class="album_read_nav_item album_read_nav_next weui-flex__item wx_tap_link js_wx_tap_highlight" style="margin:0px;padding:0px 20px 20px;outline:0px;flex:1 1 0%;min-width:0px;position:relative;text-align:right;-webkit-box-flex:1;"><span class="album_read_nav_inner" style="margin:0px;padding:0px;outline:0px;"><span class="album_read_nav_btn" style="margin:0px;padding:0px;outline:0px;display:block;color:rgba(0, 0, 0, 0.9);font-weight:500;">下一篇</span><span class="album_read_nav_title" style="margin:6px 0px 0px;padding:0px;outline:0px;display:block;line-height:1.4;font-weight:500;"><span class="album_read_nav_title_inner" style="margin:0px;padding:0px;outline:0px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;">【卫星安全系列五】attitude 赛题复现</span></span></span></span>
</div>
</div>
<div class="rich_media_tool_area" style="margin:32px 0px 0px;padding:0px 0px 48px;outline:0px;">
<div class="rich_media_tool__wrp" style="margin:0px;padding:0px;outline:0px;zoom:1;">
<div id="js_content_end" class="rich_media_tool" style="margin:0px;padding:0px;outline:0px;overflow:visible;font-size:14px;line-height:1.4;letter-spacing:0px;">
<div class="rich_media_info weui-flex" style="margin:0px 0px 20px;padding:0px;outline:0px;display:flex;flex-wrap:wrap;">
<div role="option" aria-labelledby="readTxt readNum3" id="js_read_area3" class="media_tool_meta tips_global_primary meta_primary js_media_tool_meta" style="margin:0px;padding:0px;outline:0px;color:rgba(0, 0, 0, 0.3);float:none;flex-shrink:0;max-width:100%;">
<span aria-hidden="true" id="readTxt" style="margin:0px;padding:0px;outline:0px;">阅读</span><span aria-hidden="true" id="readNum3" style="margin:0px;padding:0px;outline:0px;"><span> </span>918</span>
</div>
</div>
<div id="js_bottom_opr_right" class="weui-flex sns_opr_area sns_opr_area_smart" style="margin:0px;padding:0px;outline:0px;display:flex;justify-content:space-between;align-items:center;">
<div class="sns_opr_area_primary" style="margin:0px;padding:0px;outline:0px;min-width:0px;">
<div id="js_like_profile_bar" class="wx_follow_context wx_follow_primary wx_follow_smart" style="margin:0px;padding:0px 24px 0px 0px;outline:0px;">
<div class="function_mod js_function_mod wx_tap_cell" style="margin:0px;padding:0px;outline:0px;background:#FFFFFF;border-radius:0px;zoom:1;height:auto !important;overflow:hidden;transition:none 0s ease 0s;cursor:pointer;">
<div class="function_mod_inner js_function_mod_inner" style="margin:0px;padding:0px;outline:0px;">
<div class="function_bd" style="margin:0px;padding:0px;outline:0px;">
<div class="wx_follow_media weui-flex weui-flex_align-center" style="margin:0px;padding:0px;outline:0px;display:flex;align-items:center;position:relative;">
<div v-max-font-scale="1" class="wx_follow_hd" style="margin:0px;padding:0px;outline:0px;">
<span class="wx_follow_avatar" style="margin:0px 6px 0px 0px;padding:0px;outline:0px;display:block;font-size:10px;width:3.2em;height:3.2em;border-radius:100%;overflow:hidden;background-color:#F7F7F7;background-size:cover;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);"><img src="http://mmbiz.qpic.cn/mmbiz_png/Gw8FuwXLJnSZmibNONzibea8WkcAFcdQcXicIYgWuvOtR8HqlqJ68Avib679FBGHYqxRibldppr6etXJxxWRrlBToiaw/300?wx_fmt=png&wxfrom=18" alt="" class="wx_follow_avatar_pic" style="margin:0px;padding:0px;outline:0px;display:block;width:32px;height:32px;" /></span>
</div>
<div class="wx_follow_bd weui-flex__item" style="margin:0px;padding:0px;outline:0px;flex:1 1 0%;min-width:0px;-webkit-box-flex:1;">
<div class="wx_follow_info" style="margin:0px;padding:0px 6px 0px 0px;outline:0px;line-height:1.4;">
<div role="link" tabindex="0" id="js_wx_follow_nickname" aria-labelledby="js_wx_follow_nickname" aria-describedby="js_wx_follow_tips" class="wx_follow_nickname js_wx_tap_highlight wx_tap_link" style="margin:0px;padding:0px;outline:0px;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:unset;overflow-wrap:unset;font-size:14px;font-weight:500;color:rgba(0, 0, 0, 0.9);-webkit-tap-highlight-color:rgba(0, 0, 0, 0);line-height:calc(1.17647);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;">
山石网科安全技术研究院
</div>
</div>
</div>
<div v-max-font-scale="1" class="wx_follow_ft" style="margin:0px;padding:0px;outline:0px;">
<div class="wx_follow_opr" style="margin:0px;padding:0px;outline:0px;font-size:10px;min-height:3.2em;display:flex;align-items:center;">
<button type="button" id="js_focus" class="weui-btn weui-btn_primary weui-btn_xmini weui-wa-hotarea" style="margin:0px auto;padding:5px 6px;outline:0px;cursor:pointer;position:relative;display:inline-flex;width:auto;box-sizing:border-box;font-weight:500;font-size:12px;text-align:center;text-decoration:none;color:#FFFFFF;line-height:calc(1.33333);border-radius:4px;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background-color:var(--weui-BRAND);white-space:nowrap;border-width:0px;appearance:none;align-items:center;justify-content:center;min-width:0px;"><i class="weui-icon-filled-add" style="margin:0px 2px 0px 0px;padding:0px;outline:0px;-webkit-mask-image:url("data:image/svg+xml;http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Cg fill='none' fill-rule='evenodd'%3E %3Cpath d='M0 0h8v8H0z'/%3E %3Cpath fill='%23FFF' d='M4.552.748L4.55 3.45l2.702.001v1.1H4.551v2.702h-1.1V4.549L.75 4.55v-1.1h2.701V.747h1.1z'/%3E%3C/g%3E%3C/svg%3E"display:inline-block;vertical-align:middle;font-size:100px;width:0.08em;height:0.08em;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:100%;background-color:currentcolor;"></i>关注</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="sns_opr_area_extra" style="margin:0px;padding:0px;outline:0px;flex-shrink:0;">
<span id="js_bottom_share" class="media_tool_meta meta_extra meta_share js_media_tool_meta" style="margin:0px;padding:0px;outline:0px;float:none;flex-shrink:0;max-width:100%;color:#576B95;display:inline-flex;vertical-align:top;white-space:nowrap;"><button aria-labelledby="js_a11y_share_btn_txt" id="js_bottom_share_btn" class="sns_opr_btn sns_opr_btn_break sns_share_btn weui-wa-hotarea js_wx_tap_highlight wx_tap_link" style="margin:0px;padding:0px;outline:0px;cursor:pointer;position:relative;display:inline-block;vertical-align:middle;font-family:inherit;appearance:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:transparent;border:0px;color:var(--weui-LINK);font-size:12px;white-space:normal;overflow-wrap:break-word;hyphens:auto;line-height:1.4;max-width:100%;"><span class="sns_opr_gap" style="margin:0px;padding:0px;outline:0px;display:inline-block;vertical-align:top;max-width:100%;min-width:2.1em;">分享</span></button></span><span id="js_bottom_collect" class="media_tool_meta meta_extra meta_collect js_media_tool_meta" style="margin:0px 0px 0px 22px;padding:0px;outline:0px;float:none;flex-shrink:0;max-width:100%;color:#576B95;display:inline-flex;vertical-align:top;white-space:nowrap;"><button id="js_bottom_collect_btn" class="sns_opr_btn sns_opr_btn_break sns_collect_btn weui-wa-hotarea js_wx_tap_highlight wx_tap_link" style="margin:0px;padding:0px;outline:0px;cursor:pointer;position:relative;display:inline-block;vertical-align:middle;font-family:inherit;appearance:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:transparent;border:0px;color:var(--weui-LINK);font-size:12px;white-space:normal;overflow-wrap:break-word;hyphens:auto;line-height:1.4;max-width:100%;"><span class="sns_opr_gap" style="margin:0px;padding:0px;outline:0px;display:inline-block;vertical-align:top;max-width:100%;min-width:2.1em;">收藏</span></button></span><span id="like3" class="media_tool_meta meta_extra meta_like js_media_tool_meta" style="margin:0px 0px 0px 22px;padding:0px;outline:0px;float:none;flex-shrink:0;max-width:100%;color:#576B95;position:relative;display:inline-flex;vertical-align:top;white-space:nowrap;"><button aria-labelledby="js_a11y_like_btn_txt likeNum3" aria-describedby="" id="js_like_btn" class="sns_opr_btn sns_opr_btn_break sns_like_btn weui-wa-hotarea js_wx_tap_highlight wx_tap_link" style="margin:0px;padding:0px;outline:0px;cursor:pointer;position:relative;display:inline-block;vertical-align:middle;font-family:inherit;appearance:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:transparent;border:0px;color:var(--weui-LINK);font-size:12px;white-space:normal;overflow-wrap:break-word;hyphens:auto;line-height:1.4;max-width:100%;"><span id="js_like_wording" aria-hidden="true" class="sns_opr_gap" style="margin:0px;padding:0px;outline:0px;display:inline-block;vertical-align:top;max-width:100%;min-width:2.1em;">在看</span></button>
<div role="dialog" tabindex="0" class="like_comment_wrp" aria-hidden="true" style="margin:0px;padding:10px 0px 0px;outline:0px;font-size:17px;position:absolute;z-index:50;zoom:1;width:auto;min-width:285px;right:-13px;cursor:pointer;top:42.7917px;visibility:hidden;">
<div class="like_comment_inner" style="margin:0px;padding:16px;outline:0px;background-color:var(--weui-BG-5);border-radius:8px;overflow:hidden;display:flex;-webkit-box-align:center;align-items:center;text-align:center;box-shadow:rgba(0, 0, 0, 0.15) 0px 0px 8px;border:1px solid var(--weui-FG-4);">
<div class="like_comment_bd" style="margin:0px;padding:0px;outline:0px;-webkit-box-flex:1;flex:1 1 0%;line-height:1.6;">
<div class="like_comment_tips" style="margin:0px;padding:0px;outline:0px;line-height:1.4;font-size:14px;display:flex;align-items:center;justify-content:center;color:var(--weui-FG-0);">
<i class="weui-icon-success" style="margin:0px 8px 0px 0px;padding:0px;outline:0px;-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M12%2022C6.477%2022%202%2017.523%202%2012S6.477%202%2012%202s10%204.477%2010%2010-4.477%2010-10%2010zm-1.177-7.86l-2.765-2.767L7%2012.431l3.119%203.121a1%201%200%20001.414%200l5.952-5.95-1.062-1.062-5.6%205.6z%22%2F%3E%3C%2Fsvg%3E"color:var(--weui-BRAND);display:inline-block;vertical-align:middle;font-size:10px;width:2em;height:2em;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:100%;background-color:currentcolor;top:0px;"></i><a href="javascript:;" class="like_comment_share_link" style="margin:0px 0px 0px 16px;padding:0px;outline:0px;color:var(--weui-LINK);text-decoration:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-drag:none;cursor:pointer;display:inline-block;"></a>
</div>
</div>
</div>
</div>
</span><span id="like_old" class="media_tool_meta meta_extra meta_praise js_media_tool_meta" style="margin:0px 0px 0px 22px;padding:0px;outline:0px;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);min-width:0px;float:none;text-align:right;flex-shrink:0;max-width:100%;color:#576B95;display:inline-flex;vertical-align:top;white-space:nowrap;"><button aria-labelledby="js_a11y_zan_btn_txt likeNum_old" aria-describedby="" class="sns_opr_btn sns_opr_btn_break sns_praise_btn weui-wa-hotarea js_wx_tap_highlight wx_tap_link" style="margin:0px;padding:0px;outline:0px;cursor:pointer;position:relative;display:inline-block;vertical-align:middle;font-family:inherit;appearance:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:transparent;border:0px;color:var(--weui-LINK);font-size:12px;white-space:normal;overflow-wrap:break-word;hyphens:auto;line-height:1.4;max-width:100%;"><span id="likeNum_old" class="sns_opr_num sns_opr_gap" style="margin:0px;padding:0px;outline:0px;display:inline-block;vertical-align:top;max-width:100%;min-width:2.1em;">4</span></button></span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="rich_media_area_extra" style="margin:0px;padding:0px;outline:0px;background-color:transparent;">
<div class="rich_media_area_extra_inner" style="margin:0px auto;padding:0px;outline:0px;max-width:calc(1 * (677px + var(--appmsgPageGap) * 2));">
<div id="page_bottom_area" style="margin:0px;padding:0px;outline:0px;">
<div aria-hidden="true" style="margin:0px;padding:0px;outline:0px;font-size:0px;height:0px;">
</div>
<div class="mpda_bottom_container" style="margin:0px;padding-top:0px;padding-right:calc(8px + env(safe-area-inset-right));padding-bottom:0px;padding-left:calc(8px + env(safe-area-inset-left));outline:0px;">
</div>
<div class="related_container" style="margin:0px;padding:0px;outline:0px;--relate-item-height:6em;--relate-item-padding-tb:1em;user-select:none;">
<div class="relate_mod_transition function_mod js_related_area" style="margin:8px 0px 0px;padding-top:0px;padding-right:env(safe-area-inset-right);padding-bottom:0px;padding-left:env(safe-area-inset-left);outline:0px;background:#FFFFFF;border-radius:0px;transition:none 0s ease 0s;opacity:1;font-size:16px;zoom:1;overflow:visible;height:calc(18em + 58.8958px);">
<div class="function_mod_index js_related_main" style="margin:0px;padding:0px;outline:0px;height:346.896px;display:flex;flex-direction:column;position:relative;">
<div class="function_hd js_related_title" style="margin:0px;padding-top:40px;padding-right:;padding-bottom:;padding-left:;outline:0px;font-size:14px;font-weight:500;line-height:1.35;color:rgba(0, 0, 0, 0.3);">
喜欢此内容的人还喜欢
</div>
<div class="function_bd" style="margin:0px;padding:0px;outline:0px;flex:1 1 0%;">
<div class="relate_article_index_list relate_article_list js_related_list" style="margin:0px;padding:0px;outline:0px;cursor:default;height:auto;">
<div data-index="0" data-url="http://mp.weixin.qq.com/s?__biz=MzUzMDUxNTE1Mw==&mid=2247504965&idx=1&sn=e0f926254e28922ea43971dcc6228f6f&chksm=fbe10e6122c112525d6bf6a37afc24d210044be38329fc7d32d4d5c85051bb32d13ddb6ff8f7&scene=132&exptype=timeline_recommend_article_extendread_samebiz&show_related_article=1&subscene=0#wechat_redirect" data-time="1708937485" data-recalltype="11008" data-isreaded="0" data-bizuin="3530515153" data-mid="2247504965" data-idx="1" data-item_show_type="0" data-exptype="timeline_recommend_article_extendread_samebiz" data-ext_info="{"rec_info":{"model_id":20050,"rank_rk":"20010#20050:32881:0:100:1","recall_rk":"11008:2:0","prerank_rk":":0:0:0:0","rec_reason":{"wording":"1个朋友赞","text_color":"#FF07C160","background_color":"#1A07C160","dark_mode_text_color":"#9907C160","dark_mode_background_color":"#1A07C160","rec_reason":6,"rec_reason_stat":0,"rec_reason2":103},"related_score":57585,"rank_extra":"20010_preds:17052#20010_rule_bizqualitygrading:3#20010_rule_article_quality_grading_v2:3#20050_preds:57585"},"do_not_report":0}" data-report_info="{}" class="weui-media-box weui-media-box_appmsg js_related_item js_wx_tap_highlight wx_tap_cell" style="margin:0px;padding:var(--RELATE-ITEM-PADDING-TB) var(--appmsgPageGap);outline:0px;position:relative;display:flex;align-items:center;-webkit-box-align:center;min-height:calc(var(--RELATE-ITEM-HEIGHT) - 2 * var(--RELATE-ITEM-PADDING-TB));">
<div class="weui-media-box__bd" style="margin:0px;padding:0px;outline:0px;flex:1 1 0%;min-width:0px;-webkit-box-flex:1;">
<div role="link" tabindex="0" aria-labelledby="relate_article_title_2247504965_1 js_a11y_comma relate_article_tag_2247504965 js_a11y_comma relate_article_nickname_2247504965_1 js_a11y_comma relate_article_num_2247504965_1" class="ellipsis_relate_title mask_ellipsis_wrp mask_ellipsis_auto_height relate_article_default relate_article_tag_before" style="margin:0px;padding:0px;outline:0px;line-height:1.3;height:auto;overflow:hidden;position:relative;max-height:2.6em;font-size:16px;cursor:pointer;">
<div aria-hidden="true" class="mask_ellipsis_text" style="margin:0px;padding:0px;outline:0px;float:left;width:597px;visibility:hidden;">
</div>
<div aria-hidden="true" class="mask_ellipsis" style="margin:0px;padding:0px;outline:0px;width:1194px;position:absolute;top:0px;left:0px;height:2.8em;overflow:hidden;">
<div id="relate_article_title_2247504965_1" class="mask_ellipsis_text" style="margin:0px;padding:0px;outline:0px;float:left;width:597px;">
疑似DuckTail组织针对性攻击活动分析
</div>
<div class="mask_ellipsis_placeholder" style="margin:0px;padding:0px;outline:0px;width:597px;height:2.7em;float:left;">
</div>
<div class="mask_ellipsis_extra" style="margin:0px;padding:0px;outline:0px;float:left;transform:translate(-100%, calc(-100% - 0.1em));min-width:2.4em;text-align:right;background:linear-gradient(to right, rgba(255, 255, 255, 0), #FFFFFF 40%);">
</div>
</div>
</div>
<div class="weui-media-box__info weui-flex" style="margin:4px 0px 0px;padding:0px;outline:0px;display:flex;font-size:14px;color:rgba(0, 0, 0, 0.3);line-height:1.3;list-style:none;overflow:visible;align-items:center;position:relative;">
<div class="weui-media-box__info__inner weui-flex weui-flex_align-center weui-flex__item" style="margin:0px;padding:0px;outline:0px;display:flex;flex:1 1 0%;min-width:0px;align-items:center;-webkit-box-flex:1;">
<div aria-hidden="true" id="relate_article_tag_2247504965_1" class="weui-media-box__info__meta relate_profile_tag" style="margin:0px;padding:0px 8px 0px 0px;outline:0px;float:left;display:flex;align-items:center;max-width:80%;">
<span class="icon_appmsg_tag" style="margin:0px;padding:0px 4px 0px 0px;outline:0px;display:inline-block;vertical-align:middle;font-size:inherit;line-height:inherit;border-radius:2px;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;max-width:100%;font-style:normal;letter-spacing:normal;background:transparent;color:#07C160;">1个朋友赞</span>
</div>
<div aria-hidden="true" id="relate_article_nickname_2247504965_1" data-username="gh_94beeafaf804" class="js_profile relate_profile_nickname weui-media-box__info__meta" style="margin:0px;padding:0px 12px 0px 0px;outline:0px;float:left;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;display:block;flex:1 0 0%;min-width:0px;">
山石网科安全技术研究院
</div>
</div>
<div class="relate_article_opr" style="margin:0px 0px 0px 12px;padding:0px;outline:0px;font-size:0px;">
<button type="button" class="reset_btn dislike_btn js_feedback_btn weui-wa-hotarea" style="margin:0px;padding:0px;outline:0px;cursor:pointer;position:relative;appearance:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);background-color:transparent;border:0px;font-family:inherit;color:inherit;display:inline-block;vertical-align:middle;font-size:10px;text-indent:-999em;width:2em;height:1.4em;background-image:url("data:image/svg+xml;http://www.w3.org/2000/svg' width='20' height='14' viewBox='0 0 20 14'%3E%3Cg fill='none' fill-rule='evenodd'%3E %3Crect width='19.5' height='13.5' x='.25' y='.25' stroke='%23D7D7D7' stroke-width='.5' rx='6.75'/%3E %3Cpath fill='%23D7D7D7' d='M12.354 4.02l.666.667-2.334 2.333 2.334 2.334-.666.666-2.334-2.334-2.333 2.334-.667-.666L9.353 7.02 7.02 4.687l.667-.667 2.333 2.333 2.334-2.333z'/%3E%3C/g%3E%3C/svg%3E"background-size:contain;background-repeat:no-repeat;">不喜欢</button>
</div>
<div role="dialog" aria-modal="true" tabindex="0" aria-hidden="true" class="feedback_dialog_wrp js_feedback_dialog" style="margin:0px;padding:0px;outline:0px;opacity:0;user-select:none;">
<div class="feedback_dialog js_dialog_wrp" style="margin:0px;padding:16px;outline:0px;position:absolute;z-index:5000;font-size:10px;right:calc(-16px - 6.4em);top:calc(100% + 10px);width:320px;box-sizing:border-box;background-color:var(--weui-BG-5);color:var(--weui-FG-0);line-height:1.4;border-radius:8px;transition:transform 0.15s cubic-bezier(0.175, 0.885, 0.32, 1.1) 0s;transform:scale(0);transform-origin:80% 0px;left:auto;">
<div class="feedback_dialog_hd weui-flex" style="margin:0px;padding:0px;outline:0px;display:flex;align-items:center;">
<div class="weui-flex__item feedback_dialog_title" style="margin:0px;padding:0px 16px 0px 0px;outline:0px;flex:1 1 0%;min-width:0px;overflow-wrap:break-word;hyphens:auto;font-size:15px;font-weight:500;color:var(--weui-FG-0);-webkit-box-flex:1;">
不看的原因
</div>
<button type="button" class="weui-btn weui-btn_primary weui-btn_mini js_submit weui-btn_disabled" style="margin:0px auto;padding:6px 12px;outline:0px;cursor:pointer;position:relative;display:inline-block;width:auto;box-sizing:border-box;font-weight:500;font-size:14px;text-align:center;text-decoration:none;color:var(--weui-FG-4);line-height:calc(1.57143);border-radius:6px;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:var(--weui-BG-1);border-width:0px;appearance:none;">确定</button>
</div>
<div class="feedback_dialog_bd" style="margin:0px;padding:4px 0px 0px;outline:0px;">
<ul class="feedback_tag_list" style="margin:0px;padding:0px;outline:0px;font-size:0px;">
<li role="checkbox" data-value="1" class="feedback_tag_item js_reason js_tag_item" style="margin:8px 8px 0px 0px;padding:8px 12px;outline:0px;--weui-tag-text-green:#07C160;--weui-tag-background-green:rgba(7, 193, 96, 0.1);display:inline-block;vertical-align:middle;font-size:14px;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;max-width:100%;border-radius:4px;box-sizing:border-box;color:var(--weui-FG-0);background:rgba(0, 0, 0, 0.03);-webkit-tap-highlight-color:rgba(0, 0, 0, 0);">
内容低质
</li>
<li role="checkbox" data-value="2" class="feedback_tag_item js_reason js_tag_item" style="margin:8px 8px 0px 0px;padding:8px 12px;outline:0px;--weui-tag-text-green:#07C160;--weui-tag-background-green:rgba(7, 193, 96, 0.1);display:inline-block;vertical-align:middle;font-size:14px;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;max-width:100%;border-radius:4px;box-sizing:border-box;color:var(--weui-FG-0);background:rgba(0, 0, 0, 0.03);-webkit-tap-highlight-color:rgba(0, 0, 0, 0);">
不看此公众号内容
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="weui-media-box__ft" style="margin:0px 0px 0px 16px;padding:0px;outline:0px;border-radius:1px;font-size:10px;overflow:hidden;background-color:#EDEDED;position:relative;transform:scale(1);width:6.4em;height:6.4em;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;">
<img class="relate_article_cover" src="https://mmbiz.qpic.cn/mmbiz_jpg/Gw8FuwXLJnRqsAP09Aq669MUiaTsJ69iamxfvWK0M1MfvxFb9IhbWPMTtCbYrvCm2ibFLicoTLw41G8zmU46ISljRQ/0?wx_fmt=jpeg&tp=wxpic" style="margin:0px;padding:0px;outline:0px;position:absolute;height:64.6354px;left:32px;top:32px;transform:translate3d(-50%, -50%, 0px);" />
</div>
</div>
<div data-index="1" data-url="http://mp.weixin.qq.com/s?__biz=MzUzMDUxNTE1Mw==&mid=2247504922&idx=1&sn=7fbe9330b36d66c6fbeeca31abe8f347&chksm=fb1b133496c14bc676fdcd8f2ceacd77fa587801201045bd7d4b2f53070b31675549f959c8c3&scene=132&exptype=timeline_recommend_article_extendread_samebiz&show_related_article=1&subscene=0#wechat_redirect" data-time="1708484628" data-recalltype="11008" data-isreaded="0" data-bizuin="3530515153" data-mid="2247504922" data-idx="1" data-item_show_type="0" data-exptype="timeline_recommend_article_extendread_samebiz" data-ext_info="{"rec_info":{"model_id":20050,"rank_rk":"20010#20050:32731:0:100:2","recall_rk":"11008:4:0","prerank_rk":":0:0:0:0","rec_reason":{"wording":"12个朋友读过","text_color":"#FF07C160","background_color":"#1A07C160","dark_mode_text_color":"#9907C160","dark_mode_background_color":"#1A07C160","rec_reason":5,"rec_reason_stat":0,"rec_reason2":102},"related_score":54527,"rank_extra":"20010_preds:17163#20010_rule_bizqualitygrading:3#20010_rule_article_quality_grading_v2:2#20050_preds:54527"},"do_not_report":0}" data-report_info="{}" class="weui-media-box weui-media-box_appmsg js_related_item js_wx_tap_highlight wx_tap_cell" style="margin:0px;padding:var(--RELATE-ITEM-PADDING-TB) var(--appmsgPageGap);outline:0px;position:relative;display:flex;align-items:center;-webkit-box-align:center;min-height:calc(var(--RELATE-ITEM-HEIGHT) - 2 * var(--RELATE-ITEM-PADDING-TB));">
<div class="weui-media-box__bd" style="margin:0px;padding:0px;outline:0px;flex:1 1 0%;min-width:0px;-webkit-box-flex:1;">
<div role="link" tabindex="0" aria-labelledby="relate_article_title_2247504922_1 js_a11y_comma relate_article_tag_2247504922 js_a11y_comma relate_article_nickname_2247504922_1 js_a11y_comma relate_article_num_2247504922_1" class="ellipsis_relate_title mask_ellipsis_wrp mask_ellipsis_auto_height relate_article_default relate_article_tag_before" style="margin:0px;padding:0px;outline:0px;line-height:1.3;height:auto;overflow:hidden;position:relative;max-height:2.6em;font-size:16px;cursor:pointer;">
<div aria-hidden="true" class="mask_ellipsis_text" style="margin:0px;padding:0px;outline:0px;float:left;width:597px;visibility:hidden;">
</div>
<div aria-hidden="true" class="mask_ellipsis" style="margin:0px;padding:0px;outline:0px;width:1194px;position:absolute;top:0px;left:0px;height:2.8em;overflow:hidden;">
<div id="relate_article_title_2247504922_1" class="mask_ellipsis_text" style="margin:0px;padding:0px;outline:0px;float:left;width:597px;">
从NTAuthCertificates证书伪造到内网穿透实践与思路
</div>
<div class="mask_ellipsis_placeholder" style="margin:0px;padding:0px;outline:0px;width:597px;height:2.7em;float:left;">
</div>
<div class="mask_ellipsis_extra" style="margin:0px;padding:0px;outline:0px;float:left;transform:translate(-100%, calc(-100% - 0.1em));min-width:2.4em;text-align:right;background:linear-gradient(to right, rgba(255, 255, 255, 0), #FFFFFF 40%);">
</div>
</div>
</div>
<div class="weui-media-box__info weui-flex" style="margin:4px 0px 0px;padding:0px;outline:0px;display:flex;font-size:14px;color:rgba(0, 0, 0, 0.3);line-height:1.3;list-style:none;overflow:visible;align-items:center;position:relative;">
<div class="weui-media-box__info__inner weui-flex weui-flex_align-center weui-flex__item" style="margin:0px;padding:0px;outline:0px;display:flex;flex:1 1 0%;min-width:0px;align-items:center;-webkit-box-flex:1;">
<div aria-hidden="true" id="relate_article_tag_2247504922_1" class="weui-media-box__info__meta relate_profile_tag" style="margin:0px;padding:0px 8px 0px 0px;outline:0px;float:left;display:flex;align-items:center;max-width:80%;">
<span class="icon_appmsg_tag" style="margin:0px;padding:0px 4px 0px 0px;outline:0px;display:inline-block;vertical-align:middle;font-size:inherit;line-height:inherit;border-radius:2px;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;max-width:100%;font-style:normal;letter-spacing:normal;background:transparent;color:#07C160;">12个朋友读过</span>
</div>
<div aria-hidden="true" id="relate_article_nickname_2247504922_1" data-username="gh_94beeafaf804" class="js_profile relate_profile_nickname weui-media-box__info__meta" style="margin:0px;padding:0px 12px 0px 0px;outline:0px;float:left;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;display:block;flex:1 0 0%;min-width:0px;">
山石网科安全技术研究院
</div>
</div>
<div class="relate_article_opr" style="margin:0px 0px 0px 12px;padding:0px;outline:0px;font-size:0px;">
<button type="button" class="reset_btn dislike_btn js_feedback_btn weui-wa-hotarea" style="margin:0px;padding:0px;outline:0px;cursor:pointer;position:relative;appearance:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);background-color:transparent;border:0px;font-family:inherit;color:inherit;display:inline-block;vertical-align:middle;font-size:10px;text-indent:-999em;width:2em;height:1.4em;background-image:url("data:image/svg+xml;http://www.w3.org/2000/svg' width='20' height='14' viewBox='0 0 20 14'%3E%3Cg fill='none' fill-rule='evenodd'%3E %3Crect width='19.5' height='13.5' x='.25' y='.25' stroke='%23D7D7D7' stroke-width='.5' rx='6.75'/%3E %3Cpath fill='%23D7D7D7' d='M12.354 4.02l.666.667-2.334 2.333 2.334 2.334-.666.666-2.334-2.334-2.333 2.334-.667-.666L9.353 7.02 7.02 4.687l.667-.667 2.333 2.333 2.334-2.333z'/%3E%3C/g%3E%3C/svg%3E"background-size:contain;background-repeat:no-repeat;">不喜欢</button>
</div>
<div role="dialog" aria-modal="true" tabindex="0" aria-hidden="true" class="feedback_dialog_wrp js_feedback_dialog" style="margin:0px;padding:0px;outline:0px;opacity:0;user-select:none;">
<div class="feedback_dialog js_dialog_wrp" style="margin:0px;padding:16px;outline:0px;position:absolute;z-index:5000;font-size:10px;right:calc(-16px - 6.4em);top:calc(100% + 10px);width:320px;box-sizing:border-box;background-color:var(--weui-BG-5);color:var(--weui-FG-0);line-height:1.4;border-radius:8px;transition:transform 0.15s cubic-bezier(0.175, 0.885, 0.32, 1.1) 0s;transform:scale(0);transform-origin:80% 0px;left:auto;">
<div class="feedback_dialog_hd weui-flex" style="margin:0px;padding:0px;outline:0px;display:flex;align-items:center;">
<div class="weui-flex__item feedback_dialog_title" style="margin:0px;padding:0px 16px 0px 0px;outline:0px;flex:1 1 0%;min-width:0px;overflow-wrap:break-word;hyphens:auto;font-size:15px;font-weight:500;color:var(--weui-FG-0);-webkit-box-flex:1;">
不看的原因
</div>
<button type="button" class="weui-btn weui-btn_primary weui-btn_mini js_submit weui-btn_disabled" style="margin:0px auto;padding:6px 12px;outline:0px;cursor:pointer;position:relative;display:inline-block;width:auto;box-sizing:border-box;font-weight:500;font-size:14px;text-align:center;text-decoration:none;color:var(--weui-FG-4);line-height:calc(1.57143);border-radius:6px;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:var(--weui-BG-1);border-width:0px;appearance:none;">确定</button>
</div>
<div class="feedback_dialog_bd" style="margin:0px;padding:4px 0px 0px;outline:0px;">
<ul class="feedback_tag_list" style="margin:0px;padding:0px;outline:0px;font-size:0px;">
<li role="checkbox" data-value="1" class="feedback_tag_item js_reason js_tag_item" style="margin:8px 8px 0px 0px;padding:8px 12px;outline:0px;--weui-tag-text-green:#07C160;--weui-tag-background-green:rgba(7, 193, 96, 0.1);display:inline-block;vertical-align:middle;font-size:14px;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;max-width:100%;border-radius:4px;box-sizing:border-box;color:var(--weui-FG-0);background:rgba(0, 0, 0, 0.03);-webkit-tap-highlight-color:rgba(0, 0, 0, 0);">
内容低质
</li>
<li role="checkbox" data-value="2" class="feedback_tag_item js_reason js_tag_item" style="margin:8px 8px 0px 0px;padding:8px 12px;outline:0px;--weui-tag-text-green:#07C160;--weui-tag-background-green:rgba(7, 193, 96, 0.1);display:inline-block;vertical-align:middle;font-size:14px;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;max-width:100%;border-radius:4px;box-sizing:border-box;color:var(--weui-FG-0);background:rgba(0, 0, 0, 0.03);-webkit-tap-highlight-color:rgba(0, 0, 0, 0);">
不看此公众号内容
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="weui-media-box__ft" style="margin:0px 0px 0px 16px;padding:0px;outline:0px;border-radius:1px;font-size:10px;overflow:hidden;background-color:#EDEDED;position:relative;transform:scale(1);width:6.4em;height:6.4em;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;">
<img class="relate_article_cover" src="https://mmbiz.qpic.cn/mmbiz_jpg/Gw8FuwXLJnQTdOgj3vVkTNgblUNN5mxN4yocX8HvXLDWCdiciaJOaRgUVnn1fWZXlOLX0aSlNz0FCfMjl05I9ia7g/0?wx_fmt=jpeg&tp=wxpic" style="margin:0px;padding:0px;outline:0px;position:absolute;height:64.6354px;left:32px;top:32px;transform:translate3d(-50%, -50%, 0px);" />
</div>
</div>
<div data-index="2" data-url="http://mp.weixin.qq.com/s?__biz=MzUzMDUxNTE1Mw==&mid=2247504985&idx=1&sn=764aa254a4b0a6a135b5b83447a30c38&chksm=fb45d0271b71723e4979002bfa522fb6d25b9f58fd2fc81101d9fefd987bd2075dca19e576e1&scene=132&exptype=timeline_recommend_article_extendread_samebiz&show_related_article=1&subscene=0#wechat_redirect" data-time="1709001793" data-recalltype="11008" data-isreaded="0" data-bizuin="3530515153" data-mid="2247504985" data-idx="1" data-item_show_type="0" data-exptype="timeline_recommend_article_extendread_samebiz" data-ext_info="{"rec_info":{"model_id":20050,"rank_rk":"20010#20050:32312:0:100:3","recall_rk":"11008:1:0","prerank_rk":":0:0:0:0","rec_reason":{},"related_score":60824,"rank_extra":"20010_preds:17182#20010_rule_bizqualitygrading:3#20010_rule_article_quality_grading_v2:3#20050_preds:60824"},"do_not_report":0}" data-report_info="{}" class="weui-media-box weui-media-box_appmsg js_related_item js_wx_tap_highlight wx_tap_cell" style="margin:0px;padding-top:;padding-right:;padding-bottom:16px;padding-left:;outline:0px;position:relative;display:flex;align-items:center;-webkit-box-align:center;min-height:calc(var(--RELATE-ITEM-HEIGHT) - 2 * var(--RELATE-ITEM-PADDING-TB));">
<div class="weui-media-box__bd" style="margin:0px;padding:0px;outline:0px;flex:1 1 0%;min-width:0px;-webkit-box-flex:1;">
<div role="link" tabindex="0" aria-labelledby="relate_article_title_2247504985_1 js_a11y_comma relate_article_tag_2247504985 js_a11y_comma relate_article_nickname_2247504985_1 js_a11y_comma relate_article_num_2247504985_1" class="ellipsis_relate_title mask_ellipsis_wrp mask_ellipsis_auto_height relate_article_default relate_article_tag_before" style="margin:0px;padding:0px;outline:0px;line-height:1.3;height:auto;overflow:hidden;position:relative;max-height:2.6em;font-size:16px;cursor:pointer;">
<div aria-hidden="true" class="mask_ellipsis_text" style="margin:0px;padding:0px;outline:0px;float:left;width:597px;visibility:hidden;">
</div>
<div aria-hidden="true" class="mask_ellipsis" style="margin:0px;padding:0px;outline:0px;width:1194px;position:absolute;top:0px;left:0px;height:2.8em;overflow:hidden;">
<div id="relate_article_title_2247504985_1" class="mask_ellipsis_text" style="margin:0px;padding:0px;outline:0px;float:left;width:597px;">
Evils in the Sparse Texture Memory
</div>
<div class="mask_ellipsis_placeholder" style="margin:0px;padding:0px;outline:0px;width:597px;height:2.7em;float:left;">
</div>
<div class="mask_ellipsis_extra" style="margin:0px;padding:0px;outline:0px;float:left;transform:translate(-100%, calc(-100% - 0.1em));min-width:2.4em;text-align:right;background:linear-gradient(to right, rgba(255, 255, 255, 0), #FFFFFF 40%);">
</div>
</div>
</div>
<div class="weui-media-box__info weui-flex" style="margin:4px 0px 0px;padding:0px;outline:0px;display:flex;font-size:14px;color:rgba(0, 0, 0, 0.3);line-height:1.3;list-style:none;overflow:visible;align-items:center;position:relative;">
<div class="weui-media-box__info__inner weui-flex weui-flex_align-center weui-flex__item" style="margin:0px;padding:0px;outline:0px;display:flex;flex:1 1 0%;min-width:0px;align-items:center;-webkit-box-flex:1;">
<div aria-hidden="true" id="relate_article_nickname_2247504985_1" data-username="gh_94beeafaf804" class="js_profile relate_profile_nickname weui-media-box__info__meta" style="margin:0px;padding:0px 12px 0px 0px;outline:0px;float:left;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;display:block;flex:1 0 0%;min-width:0px;">
山石网科安全技术研究院
</div>
</div>
<div class="relate_article_opr" style="margin:0px 0px 0px 12px;padding:0px;outline:0px;font-size:0px;">
<button type="button" class="reset_btn dislike_btn js_feedback_btn weui-wa-hotarea" style="margin:0px;padding:0px;outline:0px;cursor:pointer;position:relative;appearance:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);background-color:transparent;border:0px;font-family:inherit;color:inherit;display:inline-block;vertical-align:middle;font-size:10px;text-indent:-999em;width:2em;height:1.4em;background-image:url("data:image/svg+xml;http://www.w3.org/2000/svg' width='20' height='14' viewBox='0 0 20 14'%3E%3Cg fill='none' fill-rule='evenodd'%3E %3Crect width='19.5' height='13.5' x='.25' y='.25' stroke='%23D7D7D7' stroke-width='.5' rx='6.75'/%3E %3Cpath fill='%23D7D7D7' d='M12.354 4.02l.666.667-2.334 2.333 2.334 2.334-.666.666-2.334-2.334-2.333 2.334-.667-.666L9.353 7.02 7.02 4.687l.667-.667 2.333 2.333 2.334-2.333z'/%3E%3C/g%3E%3C/svg%3E"background-size:contain;background-repeat:no-repeat;">不喜欢</button>
</div>
<div role="dialog" aria-modal="true" tabindex="0" aria-hidden="true" class="feedback_dialog_wrp js_feedback_dialog" style="margin:0px;padding:0px;outline:0px;opacity:0;user-select:none;">
<div class="feedback_dialog js_dialog_wrp" style="margin:0px;padding:16px;outline:0px;position:absolute;z-index:5000;font-size:10px;right:calc(-16px - 6.4em);top:calc(100% + 10px);width:320px;box-sizing:border-box;background-color:var(--weui-BG-5);color:var(--weui-FG-0);line-height:1.4;border-radius:8px;transition:transform 0.15s cubic-bezier(0.175, 0.885, 0.32, 1.1) 0s;transform:scale(0);transform-origin:80% 0px;left:auto;">
<div class="feedback_dialog_hd weui-flex" style="margin:0px;padding:0px;outline:0px;display:flex;align-items:center;">
<div class="weui-flex__item feedback_dialog_title" style="margin:0px;padding:0px 16px 0px 0px;outline:0px;flex:1 1 0%;min-width:0px;overflow-wrap:break-word;hyphens:auto;font-size:15px;font-weight:500;color:var(--weui-FG-0);-webkit-box-flex:1;">
不看的原因
</div>
<button type="button" class="weui-btn weui-btn_primary weui-btn_mini js_submit weui-btn_disabled" style="margin:0px auto;padding:6px 12px;outline:0px;cursor:pointer;position:relative;display:inline-block;width:auto;box-sizing:border-box;font-weight:500;font-size:14px;text-align:center;text-decoration:none;color:var(--weui-FG-4);line-height:calc(1.57143);border-radius:6px;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:var(--weui-BG-1);border-width:0px;appearance:none;">确定</button>
</div>
<div class="feedback_dialog_bd" style="margin:0px;padding:4px 0px 0px;outline:0px;">
<ul class="feedback_tag_list" style="margin:0px;padding:0px;outline:0px;font-size:0px;">
<li role="checkbox" data-value="1" class="feedback_tag_item js_reason js_tag_item" style="margin:8px 8px 0px 0px;padding:8px 12px;outline:0px;--weui-tag-text-green:#07C160;--weui-tag-background-green:rgba(7, 193, 96, 0.1);display:inline-block;vertical-align:middle;font-size:14px;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;max-width:100%;border-radius:4px;box-sizing:border-box;color:var(--weui-FG-0);background:rgba(0, 0, 0, 0.03);-webkit-tap-highlight-color:rgba(0, 0, 0, 0);">
内容低质
</li>
<li role="checkbox" data-value="2" class="feedback_tag_item js_reason js_tag_item" style="margin:8px 8px 0px 0px;padding:8px 12px;outline:0px;--weui-tag-text-green:#07C160;--weui-tag-background-green:rgba(7, 193, 96, 0.1);display:inline-block;vertical-align:middle;font-size:14px;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;max-width:100%;border-radius:4px;box-sizing:border-box;color:var(--weui-FG-0);background:rgba(0, 0, 0, 0.03);-webkit-tap-highlight-color:rgba(0, 0, 0, 0);">
不看此公众号内容
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="weui-media-box__ft" style="margin:0px 0px 0px 16px;padding:0px;outline:0px;border-radius:1px;font-size:10px;overflow:hidden;background-color:#EDEDED;position:relative;transform:scale(1);width:6.4em;height:6.4em;background-size:cover;background-position:50% 50%;background-repeat:no-repeat;">
<img class="relate_article_cover" src="https://mmbiz.qpic.cn/mmbiz_jpg/Gw8FuwXLJnSnLGALZ1CtVzMCibXdhmyLIWvu3MKnyZKkKGc3RyWBsAa6gNVJbicPyw2DqDVcI0BWsCgtOvtxOyqQ/0?wx_fmt=jpeg&tp=wxpic" style="margin:0px;padding:0px;outline:0px;position:absolute;height:64.6354px;left:32px;top:32px;transform:translate3d(-50%, -50%, 0px);" />
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div data-v-efb56e5f="" id="js_cmt_container" class="rich_media_extra rich_media_extra_discuss rich_media_extra_discuss_initial rich_media_extra_discuss_empty" style="margin:0px;padding-top:16px;padding-right:;padding-bottom:0px;padding-left:;outline:0px;position:relative;user-select:initial;letter-spacing:0px;zoom:1;background:transparent;">
<div data-v-efb56e5f="" role="dialog" aria-modal="true" aria-hidden="true" tabindex="0" style="margin:0px;padding:0px;outline:0px;visibility:hidden;">
<div data-v-efb56e5f="" class="discuss_form_write_area" style="margin:0px;padding:0px;outline:0px;opacity:0;height:0px;overflow:hidden;transition:opacity 0.3s ease 0.2s;position:absolute;z-index:901;left:0px;right:0px;background:var(--weui-BG-0);">
<div data-v-ab884c67="" data-v-efb56e5f="" class="discuss_form_write_mod" style="margin:0px;padding:12px;outline:0px;background:var(--weui-BG-2);">
<div data-v-ab884c67="" class="rich_media_extra_title_wrp weui-flex" style="margin:0px;padding:8px 8px 12px;outline:0px;display:flex;line-height:1.4;font-size:15px;font-weight:500;">
<div data-v-ab884c67="" class="weui-flex__item" style="margin:0px;padding:0px;outline:0px;flex:1 1 0%;min-width:0px;-webkit-box-flex:1;">
<div data-v-ab884c67="" role="button" title="轻点两下切换身份" class="comment_input_profile" style="margin:0px 40px 0px 0px;padding:0px;outline:0px;display:inline-flex;vertical-align:top;align-items:center;color:var(--weui-FG-1);font-size:14px;position:relative;top:calc(-0.228571em);">
<span data-v-ab884c67="" class="comment_input_profile_avatar private" style="margin:0px 4px 0px 0px;padding:0px;outline:0px;font-size:26px;border-radius:2px;width:1em;height:1em;background-size:cover;background-position:50% 50%;flex-shrink:0;transform:scale(calc(0.923077));background-image:url("http://wx.qlogo.cn/mmopen/6Ou8IeqhfzI99YPWnqo0Bg2bvESwz3xbXlLDibLQhUV6BpOd18zVoeIJGWOebWh6ntmmKcvEicrStl0iapM1GI61rw1rmsEzA5vpJ92d4k478szRjj5ibtGQv2YUg1BYhd2Z/132""></span><strong data-v-ab884c67="" class="comment_input_profile_nickname" style="margin:0px 4px 0px 0px;padding:0px;outline:0px;width:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;font-weight:500;letter-spacing:normal;"></strong><span data-v-ab884c67="" class="weui-btn_plate weui-btn_plate-circle comment_input_transfer_btn" style="margin:0px;padding:0px;outline:0px;--platebtnheight:16;--platebtnpaddingtb:8;--platebtnpaddinglr:12;--platebtnfontsize:14;display:inline-flex;align-items:center;justify-content:center;font-size:calc(1px * var(--plateBtnFontsize));min-width:calc(1em * var(--plateBtnHeight) / var(--plateBtnFontsize));min-height:calc(1em * var(--plateBtnHeight) / var(--plateBtnFontsize));border-radius:calc(1em * var(--plateBtnHeight) / var(--plateBtnFontsize));line-height:calc((var(--plateBtnHeight) - var(--plateBtnPaddingTB) * 2) / var(--plateBtnFontsize));color:var(--weui-BRAND);background:var(--weui-BG-3);border:0px;overflow:hidden;position:relative;flex-shrink:0;"><i data-v-ab884c67="" class="weui-icon-medium-transfer" style="margin:0px;padding:0px;outline:0px;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.19143 9.6675C3.81106 10.0026 4.04808 10.6302 4.55501 10.6302H7.03478L7.03545 10.6291L19.9998 10.6291V8.8291L8.14777 8.8291L9.899 5.99517C10.2133 5.48653 9.56153 4.93639 9.1129 5.33164L4.19143 9.6675Z' fill='black' fill-opacity='0.9'/%3E%3Cpath d='M19.8122 14.334C20.1926 13.9989 19.9556 13.3713 19.4487 13.3713H16.9689L16.9682 13.3724L4.00391 13.3724L4.00391 15.1724L15.8559 15.1724L14.1047 18.0063C13.7903 18.5149 14.4421 19.0651 14.8908 18.6698L19.8122 14.334Z' fill='black' fill-opacity='0.9'/%3E%3C/svg%3E%0A"display:inline-block;vertical-align:middle;font-size:10px;width:1.2em;height:1.2em;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:100%;background-color:currentcolor;border-radius:100%;"></i></span>
</div>
</div>
<a data-v-ab884c67="" role="button" class="weui-wa-hotarea js_wx_tap_highlight wx_tap_link" style="margin:0px;padding:0px;outline:0px;color:var(--weui-LINK);text-decoration:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-drag:none;cursor:pointer;position:relative;"></a>
</div>
<div data-v-ab884c67="" class="discuss_form_write_input_wrp" style="margin:0px;padding:0px;outline:0px;">
<textarea data-v-ab884c67="" placeholder="留言精选后,将对所有人可见并外显IP归属地" class="discuss_form_write_input" style="margin:0px;padding:16px;outline:0px;caret-color:var(--weui-BRAND);display:block;width:693px;height:120px;box-sizing:border-box;border:0px;resize:none;background:var(--weui-BG-3);border-radius:4px;color:inherit;line-height:1.6;font-size:16px;overflow-y:auto;"></textarea>
</div>
<div data-v-ab884c67="" style="margin:0px;padding:0px;outline:0px;">
<div data-v-ab884c67="" class="discuss_form_write_tool weui-flex" style="margin:16px 0px 0px;padding:0px;outline:0px;display:flex;align-items:center;">
<div data-v-ab884c67="" class="weui-flex__item" style="margin:0px;padding:0px;outline:0px;flex:1 1 0%;min-width:0px;-webkit-box-flex:1;">
<span data-v-ab884c67="" class="discuss_form_write_tips" style="margin:0px;padding:0px;outline:0px;color:var(--weui-FG-2);font-size:15px;line-height:1.4;"></span>
</div>
<a data-v-ab884c67="" role="button" aria-label="表情" title="轻点两下打开表情键盘" class="icon_discuss_emotion" style="margin:0px 12px 0px 0px;padding:0px;outline:0px;color:var(--weui-FG-0);text-decoration:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-drag:none;cursor:pointer;display:inline-block;vertical-align:middle;font-size:0px;width:1.75rem;height:1.75rem;-webkit-mask:url("data:image/svg+xml;http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill-opacity='1' fill-rule='evenodd' d='M12 2c5.523 0 10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2zm0 1.2a8.8 8.8 0 1 0 0 17.6 8.8 8.8 0 0 0 0-17.6zm6 9.3a6 6 0 1 1-12 0h12zm-1.351 1.2H7.35a4.802 4.802 0 0 0 9.298 0zM8.5 7.5a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3zm7 0a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3z'/%3E%3C/svg%3E"background-color:currentcolor;"></a><button data-v-ab884c67="" disabled="disabled" title="不可点击" type="button" class="weui-btn weui-btn_primary weui-btn_xmini weui-wa-hotarea discuss_form_write_btn weui-btn_disabled" style="margin:0px auto;padding:4px 12px;outline:0px;cursor:default;position:relative;display:inline-block;width:auto;box-sizing:border-box;font-weight:500;font-size:14px;text-align:center;text-decoration:none;color:var(--weui-FG-4);line-height:1.42857;border-radius:4px;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:var(--weui-BG-1);white-space:nowrap;border-width:0px;appearance:none;"></button>
</div>
</div>
</div>
</div>
</div>
<div data-v-efb56e5f="" style="margin:0px;padding:0px;outline:0px;">
<div data-v-efb56e5f="" class="comment_primary_area" style="margin:0px;padding:32px var(--appmsgPageGap) 0;outline:0px;">
<div data-v-efb56e5f="" class="comment_primary_form" style="margin:0px;padding:0px;outline:0px;position:relative;">
<div data-v-efb56e5f="" class="comment_primary_form_bd comment_primary_input_multiline" style="margin:0px;padding:0px;outline:0px;">
<div data-v-efb56e5f="" class="comment_primary_input_default" style="margin:0px;padding:0px 8px;outline:0px;background-color:var(--weui-FG-6);line-height:40px;color:var(--weui-FG-2);border-radius:2px;font-size:15px;cursor:text;">
写下你的留言
</div>
</div>
</div>
</div>
<div data-v-efb56e5f="" id="js_cmt_area" class="discuss_mod" style="margin:0px;padding:0px;outline:0px;">
</div>
<div data-v-efb56e5f="" role="dialog" aria-modal="true" aria-hidden="true" tabindex="0" class="wx_bottom_modal_wrp discuss_write_dialog_wrp" style="margin:0px;padding:0px;outline:0px;visibility:hidden;">
<div class="weui-half-screen-dialog wx_bottom_modal" style="margin:0px;padding:0 calc(24px + env(safe-area-inset-right)) env(safe-area-inset-bottom) calc(24px + env(safe-area-inset-left));outline:0px;position:fixed;left:0px;right:0px;bottom:0px;min-height:255px;max-height:none;z-index:5000;line-height:1.4;background-color:var(--weui-BG-2);color:var(--weui-FG-0);border-top-left-radius:12px;border-top-right-radius:12px;overflow:initial;box-sizing:border-box;display:flex;flex-direction:column;transform:translate3d(0px, 100%, 0px);transition:transform 0.3s ease 0s;visibility:hidden;-webkit-box-orient:vertical;-webkit-box-direction:normal;">
<div class="weui-half-screen-dialog__hd__wrp" style="margin:0px;padding:0px;outline:0px;">
<div class="weui-half-screen-dialog__hd" style="margin:0px;padding:0px;outline:0px;min-height:64px;display:flex;align-items:center;flex-shrink:0;-webkit-box-align:center;">
<div class="weui-half-screen-dialog__hd__side" style="margin:0px;padding:0px;outline:0px;position:relative;left:-8px;min-width:64px;">
<button class="weui-btn_icon weui-wa-hotarea" style="margin:0px;padding:0px;outline:0px;cursor:pointer;position:absolute;background:transparent;border:0px;font-size:0px;top:0px;transform:translateY(-50%);color:inherit;"><i class="weui-icon-half-screen-close" style="margin:0px;padding:0px;outline:0px;-webkit-mask-image:url("data:image/svg+xml;http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdefs%3E%3Cpath id='a' d='M8 6.943L1.807.75.75 1.807 6.943 8 .75 14.193l1.057 1.057L8 9.057l6.193 6.193 1.057-1.057L9.057 8l6.193-6.193L14.193.75z'/%3E%3C/defs%3E%3Cuse fill-opacity='.9' xlink:href='%23a' transform='translate(4 4)' fill-rule='evenodd'/%3E%3C/svg%3E"display:inline-block;vertical-align:middle;font-size:10px;width:2.4em;height:2.4em;-webkit-mask-position:50% 50%;-webkit-mask-repeat:no-repeat;-webkit-mask-size:100%;background-color:currentcolor;"></i></button>
</div>
<div class="weui-half-screen-dialog__hd__main" style="margin:0px;padding:0px;outline:0px;flex:1 1 0%;-webkit-box-flex:1;text-align:center;">
<strong class="weui-half-screen-dialog__title" style="margin:0px;padding:0px;outline:0px;display:block;color:var(--weui-FG-0);font-weight:500;font-size:15px;"></strong>
</div>
<div class="weui-half-screen-dialog__hd__side" style="margin:0px;padding:0px;outline:0px;position:relative;left:auto;right:-8px;min-width:64px;text-align:right;">
<button class="weui-btn_disabled weui-btn weui-btn_primary weui-btn_mini" style="margin:0px auto;padding:6px 12px;outline:0px;cursor:pointer;position:relative;display:inline-block;width:auto;box-sizing:border-box;font-weight:500;font-size:14px;text-align:center;text-decoration:none;color:var(--weui-FG-4);line-height:calc(1.57143);border-radius:6px;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:var(--weui-BG-1);border-width:0px;appearance:none;"></button>
</div>
</div>
</div>
<div class="weui-half-screen-dialog__bd" style="margin:0px;padding:0px;outline:0px;flex:1 1 0%;min-height:0px;overflow-y:auto;overflow-wrap:break-word;hyphens:auto;font-size:14px;color:var(--weui-FG-0);-webkit-box-flex:1;position:relative;overscroll-behavior:contain;">
<div class="comment_reply_context_wrp" style="margin:0px;padding:0px;outline:0px;height:111px;">
<div class="comment_reply_context" style="margin:0px;padding:0px;outline:0px;height:111px;display:flex;flex-direction:column;box-sizing:border-box;transition:padding-bottom 0.2s ease 0s;">
<textarea placeholder="留言精选后,将对所有人可见并外显IP归属地" class="weui-textarea comment_textarea" style="margin:0px;padding:0px;outline:0px;caret-color:var(--weui-BRAND);display:block;border:0px;resize:none;background:transparent;width:1232px;color:inherit;font-size:17px;font-family:inherit;line-height:1.5;height:auto;flex:1 1 0%;"></textarea>
<div class="discuss_toolbar" style="margin:0px;padding:16px 0px;outline:0px;position:static;display:flex;justify-content:space-between;align-items:center;">
<a role="button" href="javascript:;" class="icon_discuss_emotion" style="margin:0px;padding:0px;outline:0px;color:var(--weui-FG-0);text-decoration:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-drag:none;cursor:pointer;display:inline-block;vertical-align:middle;font-size:0px;width:1.75rem;height:1.75rem;-webkit-mask:url("data:image/svg+xml;http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill-opacity='1' fill-rule='evenodd' d='M12 2c5.523 0 10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2zm0 1.2a8.8 8.8 0 1 0 0 17.6 8.8 8.8 0 0 0 0-17.6zm6 9.3a6 6 0 1 1-12 0h12zm-1.351 1.2H7.35a4.802 4.802 0 0 0 9.298 0zM8.5 7.5a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3zm7 0a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3z'/%3E%3C/svg%3E"background-color:currentcolor;"></a><span class="comment_write_counter" style="margin:0px;padding:0px;outline:0px;font-size:14px;color:var(--weui-FG-1);"></span>
</div>
</div>
</div>
</div>
</div>
<div class="wx_bottom_modal_mask_fixed" style="margin:0px;padding:0px;outline:0px;width:1280px;height:649.333px;position:fixed;top:0px;background-color:transparent;visibility:hidden;">
</div>
<div class="weui-mask wx_bottom_modal_mask" style="margin:0px;padding:0px;outline:0px;position:fixed;z-index:1000;inset:-120px 0px 0px;background:rgba(0, 0, 0, 0.6);visibility:hidden;opacity:1;">
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div data-v-f8e61417="" role="dialog" aria-modal="true" aria-hidden="true" tabindex="0" class="wx_bottom_modal_wrp" style="margin:0px;padding:0px;outline:0px;visibility:hidden;">
<div class="weui-half-screen-dialog wx_bottom_modal" style="margin:0px;padding:0 calc(24px + env(safe-area-inset-right)) env(safe-area-inset-bottom) calc(24px + env(safe-area-inset-left));outline:0px;position:fixed;left:0px;right:0px;bottom:0px;min-height:255px;max-height:540px;z-index:5000;line-height:1.4;background-color:var(--weui-BG-2);color:var(--weui-FG-0);border-top-left-radius:12px;border-top-right-radius:12px;overflow:initial;box-sizing:border-box;display:flex;flex-direction:column;transform:translate3d(0px, 100%, 0px);transition:transform 0.3s ease 0s;visibility:hidden;-webkit-box-orient:vertical;-webkit-box-direction:normal;">
<div class="weui-half-screen-dialog__bd" style="margin:0px;padding:0px 0px 56px;outline:0px;flex:1 1 0%;min-height:0px;overflow-y:auto;overflow-wrap:break-word;hyphens:auto;font-size:14px;color:var(--weui-FG-0);-webkit-box-flex:1;position:relative;overscroll-behavior:contain;">
<div class="" style="margin:0px;padding:0px;outline:0px;">
<p data-v-f8e61417="" class="ad_control-tips" style="margin:40px auto 0px;padding:0px;outline:0px;font-size:14px;width:fit-content;text-align:center;line-height:19.6px;color:rgba(0, 0, 0, 0.9);">
<br />
</p>
</div>
</div>
<div class="weui-half-screen-dialog__ft" style="margin:0px;padding:0px 12px 64px;outline:0px;text-align:center;">
<div data-v-f8e61417="" class="weui-half-screen-dialog__btn-area" style="margin:0px;padding:0px;outline:0px;display:flex;align-items:center;justify-content:center;-webkit-box-align:center;-webkit-box-pack:center;">
<a data-v-f8e61417="" href="javascript:" wah-hotarea="click" class="weui-btn weui-btn_default" style="margin:0px 8px 0px 0px;padding:12px 16px;outline:0px;color:var(--weui-FG-0);text-decoration:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-drag:none;cursor:pointer;position:relative;display:inline-block;width:136px;box-sizing:border-box;font-weight:500;font-size:17px;text-align:center;line-height:1.41176;border-radius:8px;user-select:none;background-color:var(--weui-FG-5);vertical-align:top;"></a><a data-v-f8e61417="" href="javascript:" wah-hotarea="click" class="weui-btn weui-btn_primary" style="margin:0px 0px 0px 8px;padding:12px 16px;outline:0px;color:#FFFFFF;text-decoration:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-drag:none;cursor:pointer;position:relative;display:inline-block;width:136px;box-sizing:border-box;font-weight:500;font-size:17px;text-align:center;line-height:1.41176;border-radius:8px;user-select:none;background-color:var(--weui-BRAND);vertical-align:top;"></a>
</div>
<div data-v-f8e61417="" class="weui-half-screen-dialog__attachment-area" style="margin:24px 0px -34px;padding:0px;outline:0px;">
<a data-v-f8e61417="" href="javacript:;" class="weui-link" style="margin:0px;padding:0px;outline:0px;color:var(--weui-LINK);text-decoration:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-drag:none;cursor:pointer;font-size:14px;"></a>
</div>
</div>
</div>
<div class="wx_bottom_modal_mask_fixed" style="margin:0px;padding:0px;outline:0px;width:1280px;height:649.333px;position:fixed;top:0px;background-color:transparent;visibility:hidden;">
</div>
<div class="weui-mask wx_bottom_modal_mask" style="margin:0px;padding:0px;outline:0px;position:fixed;z-index:1000;inset:-120px 0px 0px;background:rgba(0, 0, 0, 0.6);visibility:hidden;opacity:1;">
</div>
</div>
<div class="wx-root" data-weui-theme="light" style="margin:0px;padding:0px;outline:0px;--weui-bg-0:#ededed;--weui-bg-1:#f7f7f7;--weui-bg-2:#fff;--weui-bg-3:#f7f7f7;--weui-bg-4:#4c4c4c;--weui-bg-5:#fff;--weui-fg-0:rgba(0, 0, 0, 0.9);--weui-fg-half:rgba(0, 0, 0, 0.9);--weui-fg-1:rgba(0, 0, 0, 0.55);--weui-fg-2:rgba(0, 0, 0, 0.3);--weui-fg-3:rgba(0, 0, 0, 0.1);--weui-fg-4:rgba(0, 0, 0, 0.15);--weui-fg-5:rgba(0, 0, 0, 0.05);--weui-red:#fa5151;--weui-orangered:#ff6146;--weui-orange:#fa9d3b;--weui-yellow:#ffc300;--weui-green:#91d300;--weui-lightgreen:#95ec69;--weui-brand:#07c160;--weui-blue:#10aeff;--weui-indigo:#1485ee;--weui-purple:#6467f0;--weui-white:#fff;--weui-link:#576b95;--weui-textgreen:#06ae56;--weui-fg:#000;--weui-bg:#fff;--weui-tag-text-red:rgba(250, 81, 81, 0.6);--weui-tag-background-red:rgba(250, 81, 81, 0.1);--weui-tag-text-orange:#fa9d3b;--weui-tag-background-orange:rgba(250, 157, 59, 0.1);--weui-tag-text-green:#06ae56;--weui-tag-background-green:rgba(6, 174, 86, 0.1);--weui-tag-text-blue:#10aeff;--weui-tag-background-blue:rgba(16, 174, 255, 0.1);--weui-tag-text-black:rgba(0, 0, 0, 0.5);--weui-tag-background-black:rgba(0, 0, 0, 0.05);--appmsgextra-bg:#F7F7F7;--weui-bg-color-active:#ececec;--weui-btn-height:48;--weui-btn-height-medium:40;--weui-btn-height-small:32;--weui-btn-active-mask:rgba(0, 0, 0, 0.1);--weui-btn-default-active-bg:#e6e6e6;--weui-dialog-line-color:rgba(0, 0, 0, 0.1);--weui-redorange:#ff6146;--tagcolor:#83E0AF;--underlinehightcolor:rgba(7, 193, 96, 0.1);--menubackground:rgba(248, 248, 248, 0.8);--weui-bg-6:rgba(0, 0, 0, 0.05);--weui-active-mask:rgba(0, 0, 0, 0.05);--appmsgcard-bg:#FAFAFA;--appmsgcard-line-bg:rgba(0, 0, 0, 0.07);--discussinput-bg:rgba(0, 0, 0, 0.03);--nickname-fg:#737373;--weui-informationbar-fg:#fff;--weui-informationbar-link:#fff;--weui-informationbar-icon:#fff;--weui-informationbar-bg:#fa5151;--weui-informationbar-warnweak-fg:rgba(0,0,0,0.5);--weui-informationbar-warnweak-link:#576b95;--weui-informationbar-warnweak-icon:#fa5151;--weui-informationbar-warnweak-bg:rgba(250,81,81,0.1);--weui-informationbar-nocolor-bg:rgba(0,0,0,0.3);--weui-informationbar-tipsstrong-bg:#fa9d3b;--weui-informationbar-tipsweak-fg:rgba(0,0,0,0.5);--weui-informationbar-tipsweak-link:#576b95;--weui-informationbar-tipsweak-icon:rgba(0,0,0,0.5);--weui-informationbar-tipsweak-bg:#f7f7f7;">
</div>
<div class="wx-root" data-weui-theme="dark" style="margin:0px;padding:0px;outline:0px;--weui-bg-0:#111;--weui-bg-1:#1e1e1e;--weui-bg-2:#191919;--weui-bg-3:#202020;--weui-bg-4:#404040;--weui-bg-5:#2c2c2c;--weui-fg-0:rgba(255, 255, 255, 0.8);--weui-fg-half:rgba(255, 255, 255, 0.6);--weui-fg-1:rgba(255, 255, 255, 0.5);--weui-fg-2:rgba(255, 255, 255, 0.3);--weui-fg-3:rgba(255, 255, 255, 0.1);--weui-fg-4:rgba(255, 255, 255, 0.15);--weui-fg-5:rgba(255, 255, 255, 0.1);--weui-red:#fa5151;--weui-orangered:#ff6146;--weui-orange:#c87d2f;--weui-yellow:#cc9c00;--weui-green:#74a800;--weui-lightgreen:#3eb575;--weui-brand:#07c160;--weui-blue:#10aeff;--weui-indigo:#1196ff;--weui-purple:#8183ff;--weui-white:rgba(255, 255, 255, 0.8);--weui-link:#7d90a9;--weui-textgreen:#259c5c;--weui-fg:#fff;--weui-bg:#000;--weui-tag-text-red:rgba(250, 81, 81, 0.6);--weui-tag-background-red:rgba(250, 81, 81, 0.1);--weui-tag-text-orange:rgba(250, 157, 59, 0.6);--weui-tag-background-orange:rgba(250, 157, 59, 0.1);--weui-tag-text-green:rgba(6, 174, 86, 0.6);--weui-tag-background-green:rgba(6, 174, 86, 0.1);--weui-tag-text-blue:rgba(16, 174, 255, 0.6);--weui-tag-background-blue:rgba(16, 174, 255, 0.1);--weui-tag-text-black:rgba(255, 255, 255, 0.5);--weui-tag-background-black:rgba(255, 255, 255, 0.05);--appmsgextra-bg:#121212;--weui-bg-color-active:#373737;--weui-btn-height:48;--weui-btn-height-medium:40;--weui-btn-height-small:32;--weui-btn-active-mask:rgba(255, 255, 255, 0.1);--weui-btn-default-active-bg:rgba(255, 255, 255, 0.126);--weui-dialog-line-color:rgba(255, 255, 255, 0.1);--weui-redorange:#ff6146;--tagcolor:#83E0AF;--underlinehightcolor:rgba(7, 193, 96, 0.1);--menubackground:rgba(248, 248, 248, 0.8);--weui-bg-6:rgba(255, 255, 255, 0.1);--weui-active-mask:rgba(255, 255, 255, 0.1);--appmsgcard-bg:#1E1E1E;--appmsgcard-line-bg:rgba(255, 255, 255, 0.07);--discussinput-bg:rgba(255, 255, 255, 0.03);--nickname-fg:#959595;--weui-informationbar-fg:#fff;--weui-informationbar-link:#fff;--weui-informationbar-icon:#fff;--weui-informationbar-bg:#fa5151;--weui-informationbar-warnweak-fg:hsla(0,0%,100%,0.5);--weui-informationbar-warnweak-link:#7d90a9;--weui-informationbar-warnweak-icon:#fa5151;--weui-informationbar-warnweak-bg:rgba(250,81,81,0.1);--weui-informationbar-nocolor-bg:hsla(0,0%,100%,0.3);--weui-informationbar-tipsstrong-bg:#c87d2f;--weui-informationbar-tipsweak-fg:hsla(0,0%,100%,0.5);--weui-informationbar-tipsweak-link:#7d90a9;--weui-informationbar-tipsweak-icon:hsla(0,0%,100%,0.5);--weui-informationbar-tipsweak-bg:#1e1e1e;">
</div>
<div style="margin:0px;padding:0px;outline:0px;">
<span class="" style="margin:0px;padding:0px;outline:0px;"><span style="margin:0px;padding:0px;outline:0px;"></span>
<div role="dialog" aria-modal="true" tabindex="0" class="weui-pc-popover__wrp wx_user_profile_dialog_pc" style="margin:0px;padding:0px;outline:0px;opacity:0;visibility:hidden;user-select:none;z-index:5500;">
<div class="weui-pc-popover weui-pc-popover_radius-tail weui-pc-popover_pos-right weui-pc-popover_align-center" style="margin:0px;padding:0px;outline:0px;--weui-pc-popover-tail-size:14px;--weui-pc-popover-negative-space:8px;--weui-pc-popover-offset:12px;--weui-pc-popover-alignoffset:24px;--weui-pc-popover-target-rect:0px;--weui-pc-popover-tail-alignoffset:calc(var(--weui-pc-popover-alignOffset) + var(--weui-pc-popover-target-rect) / 2 - var(--weui-pc-popover-tail-size) / 2);position:absolute;z-index:5501;width:288px;box-sizing:border-box;background-color:var(--weui-BG-5);filter:drop-shadow(rgba(0, 0, 0, 0.1) 2px 2px 8px);font-size:16px;font-weight:400;color:var(--weui-FG-0);line-height:1.4;border-radius:8px;transition:transform 0.15s cubic-bezier(0.175, 0.885, 0.32, 1.1) 0s;transform:scale(0) translateY(-50%);left:calc(100% + var(--weui-pc-popover-offset));transform-origin:0px 0px;top:324.667px;">
<div class="weui-pc-popover__bd" style="margin:0px;padding:0px;outline:0px;position:relative;z-index:1;">
<div style="margin:0px;padding:0px;outline:0px;">
<div class="wx_user_profile weui-flex" style="margin:0px;padding:24px;outline:0px;display:flex;color:var(--weui-FG-0);line-height:1.4;overflow:hidden;">
<div class="wx_user_profile_hd" style="margin:0px;padding:0px;outline:0px;">
<span class="wx_user_profile_avatar wx_border_avatar_origin" style="margin:0px 20px 0px 0px;padding:0px;outline:0px;display:block;width:1em;height:1em;font-size:56px;border-radius:8px;background-size:cover;background-position:50% 50%;"></span>
</div>
<div class="wx_user_profile_bd" style="margin:0px;padding:0px;outline:0px;">
<div role="option" class="wx_user_profile_nickname_wrp" style="margin:0px;padding:0px;outline:0px;font-size:0px;">
<span class="wx_user_profile_nickname" style="margin:0px;padding:0px;outline:0px;font-size:17px;font-weight:500;"></span><span class="weui-hidden_abs" style="margin:0px;padding:0px;outline:0px;opacity:0;position:absolute;width:1px;height:1px;overflow:hidden;left:auto;"></span>
</div>
</div>
</div>
</div>
</div>
<div class="weui-pc-popover__tail weui-pc-popover__tail_pos-left" style="margin-top:calc(-1 * var(--weui-radiusTailSize) / 2);margin-right:0px;margin-bottom:0px;margin-left:0px;padding:0px;outline:0px;--weui-radiustailsize:var(--weui-pc-popover-tail-size);--weui-radiustailcolor:var(--weui-BG-5);pointer-events:none;position:absolute;color:var(--weui-BG-5);background:currentcolor;border-radius:2px;width:var(--weui-radiusTailSize);height:var(--weui-radiusTailSize);left:calc(1px - var(--weui-radiusTailSize) / 2);top:52px;transform:rotate(135deg);">
</div>
</div>
</div>
</span><span data-v-4514c444="" class="" style="margin:0px;padding:0px;outline:0px;"><span style="margin:0px;padding:0px;outline:0px;"></span>
<div role="dialog" aria-modal="true" tabindex="0" class="weui-pc-popover__wrp wx_identity_dialog_pc" style="margin:0px;padding:0px;outline:0px;opacity:0;visibility:hidden;user-select:none;position:absolute;z-index:5050;">
<div class="weui-pc-popover weui-pc-popover_radius-tail weui-pc-popover_pos-right weui-pc-popover_align-center" style="margin:0px;padding:0px;outline:0px;--weui-pc-popover-tail-size:14px;--weui-pc-popover-negative-space:4px;--weui-pc-popover-offset:12px;--weui-pc-popover-alignoffset:8px;--weui-pc-popover-target-rect:0px;--weui-pc-popover-tail-alignoffset:calc(var(--weui-pc-popover-alignOffset) + var(--weui-pc-popover-target-rect) / 2 - var(--weui-pc-popover-tail-size) / 2);position:absolute;z-index:5051;width:288px;box-sizing:border-box;background-color:var(--weui-BG-5);filter:drop-shadow(rgba(0, 0, 0, 0.1) 2px 2px 8px);font-size:16px;font-weight:400;color:var(--weui-FG-0);line-height:1.4;border-radius:8px;transition:transform 0.15s cubic-bezier(0.175, 0.885, 0.32, 1.1) 0s;transform:scale(0) translateY(-50%);left:calc(100% + var(--weui-pc-popover-offset));transform-origin:0px 0px;top:0px;">
<div class="weui-pc-popover__hd" style="margin:0px;padding:24px 24px 12.4px;outline:0px;">
<div class="weui-pc-popover__title" style="margin:0px;padding:0px;outline:0px;text-align:center;font-size:14px;">
<span data-v-4514c444="" style="margin:0px;padding:0px;outline:0px;"></span>
</div>
</div>
<div class="weui-pc-popover__bd" style="margin:0px;padding:0px;outline:0px;position:relative;z-index:1;height:224px;overflow:auto;border-bottom-left-radius:8px;border-bottom-right-radius:8px;">
<div data-v-4514c444="" class="weui-cells__group weui-cells__group_form wx_identity_group" style="margin:0px;padding:0px 0px 24px;outline:0px;border:0px;--weui-cellpaddinglr:24px;">
<div class="weui-cells weui-cells_radio" style="margin:0px;padding:0px;outline:0px;background:var(--weui-BG-5);overflow:hidden;position:relative;">
<div style="margin:0px;padding:0px;outline:0px;">
</div>
</div>
</div>
</div>
<div class="weui-pc-popover__tail weui-pc-popover__tail_pos-left" style="margin-top:calc(-1 * var(--weui-radiusTailSize) / 2);margin-right:0px;margin-bottom:0px;margin-left:0px;padding:0px;outline:0px;--weui-radiustailsize:var(--weui-pc-popover-tail-size);--weui-radiustailcolor:var(--weui-BG-5);pointer-events:none;position:absolute;color:var(--weui-BG-5);background:currentcolor;border-radius:2px;width:var(--weui-radiusTailSize);height:var(--weui-radiusTailSize);left:calc(1px - var(--weui-radiusTailSize) / 2);top:139.99px;transform:rotate(135deg);">
</div>
</div>
</div>
</span>
</div>
<div data-v-86d3df32="" class="underline-container" style="margin:0px;padding:0px;outline:0px;pointer-events:none;">
<div data-v-467fb32a="" data-v-9b00c787="" data-v-86d3df32="" class="menu_options menu_options_default js_prevent_range_close" translate="no" style="margin:0px;padding:0px 0px 5px;outline:0px;pointer-events:none;transition:opacity 0.2s ease 0s;position:absolute;z-index:50;color:#4C4C4C;font-size:0px;opacity:0;max-width:calc(100vw - 16px);filter:none;top:0px;transform:scale(0);">
<div data-v-467fb32a="" class="menu_options_bar" style="margin:0px;padding:0px;outline:0px;border-radius:4px;font-size:14px;background:currentcolor;backdrop-filter:none;filter:none;position:relative;z-index:1;box-shadow:rgba(0, 0, 0, 0.2) 0px 4px 30px;">
<div data-v-92531384="" data-v-9b00c787="" class="menu_option_btn_list" data-v-467fb32a="" style="margin:0px 4px;padding:0px;outline:0px;display:flex;overflow:hidden;">
<span data-v-92531384="" role="button" id="copy_btn" class="sns_opr_btn sns_opr_btn_break sns_copy_btn filled" style="margin:0px 4px;padding:16px 0px;outline:0px;display:inline-block;vertical-align:top;font-family:inherit;appearance:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:transparent;border:0px;color:#FFFFFF;font-size:12px;white-space:normal;overflow-wrap:break-word;hyphens:auto;line-height:1.4;max-width:100%;position:relative;text-align:center;width:4.3em;letter-spacing:0px;cursor:pointer;"><span data-v-92531384="" class="sns_opr_gap" style="margin:0px;padding:0px;outline:0px;display:inline-block;vertical-align:top;max-width:100%;min-width:2.1em;">复制</span></span><span data-v-92531384="" role="button" class="sns_opr_btn sns_opr_btn_break sns_search_btn filled" style="margin:0px 4px;padding:16px 0px;outline:0px;display:inline-block;vertical-align:top;font-family:inherit;appearance:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:transparent;border:0px;color:#FFFFFF;font-size:12px;white-space:normal;overflow-wrap:break-word;hyphens:auto;line-height:1.4;max-width:100%;position:relative;text-align:center;width:4.3em;letter-spacing:0px;cursor:pointer;"><span data-v-92531384="" class="sns_opr_wrap" style="margin:0px;padding:0px;outline:0px;"><span data-v-92531384="" class="sns_opr_gap" style="margin:0px;padding:0px;outline:0px;display:inline-block;vertical-align:top;max-width:100%;min-width:2.1em;">搜一搜</span></span></span><span data-v-92531384="" role="button" class="sns_opr_btn sns_opr_btn_break sns_share_btn filled" style="margin:0px 4px;padding:16px 0px;outline:0px;display:inline-block;vertical-align:top;font-family:inherit;appearance:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:transparent;border:0px;color:#FFFFFF;font-size:12px;white-space:normal;overflow-wrap:break-word;hyphens:auto;line-height:1.4;max-width:100%;position:relative;text-align:center;width:4.3em;letter-spacing:0px;cursor:pointer;"><span data-v-92531384="" class="sns_opr_gap" style="margin:0px;padding:0px;outline:0px;display:inline-block;vertical-align:top;max-width:100%;min-width:2.1em;">分享</span></span><span data-v-92531384="" role="button" class="sns_opr_btn sns_opr_btn_break sns_collect_btn filled" style="margin:0px 4px;padding:16px 0px;outline:0px;display:inline-block;vertical-align:top;font-family:inherit;appearance:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:transparent;border:0px;color:#FFFFFF;font-size:12px;white-space:normal;overflow-wrap:break-word;hyphens:auto;line-height:1.4;max-width:100%;position:relative;text-align:center;width:4.3em;letter-spacing:0px;cursor:pointer;"><span data-v-92531384="" class="sns_opr_gap" style="margin:0px;padding:0px;outline:0px;display:inline-block;vertical-align:top;max-width:100%;min-width:2.1em;">收藏</span></span><span data-v-92531384="" role="button" class="sns_opr_btn sns_opr_btn_break sns_underline_btn sns_split_btn_primary filled" style="margin:0px 4px 0px 12px;padding:16px 0px;outline:0px;display:inline-block;vertical-align:top;font-family:inherit;appearance:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);user-select:none;background:transparent;border:0px;color:#FFFFFF;font-size:12px;white-space:normal;overflow-wrap:break-word;hyphens:auto;line-height:1.4;max-width:100%;position:relative;text-align:center;width:4.3em;letter-spacing:0px;cursor:pointer;"><span data-v-92531384="" class="sns_opr_gap" style="margin:0px;padding:0px;outline:0px;display:inline-block;vertical-align:top;max-width:100%;min-width:2.1em;">划线</span></span>
</div>
</div>
<div data-v-467fb32a="" class="menu_options_tail" style="margin:0px;padding:0px;outline:0px;pointer-events:none;position:absolute;bottom:2px;left:156.979px;width:8px;height:8px;transform:rotate(45deg);border-radius:1.5px;background:currentcolor;z-index:2;">
</div>
</div>
<div data-v-79f6fada="" data-v-86d3df32="" style="margin:0px;padding:0px;outline:0px;position:absolute;top:0px;left:0px;right:0px;">
</div>
<div data-v-467fb32a="" data-v-86d3df32="" class="menu_options menu_options_default menu_options_show" style="margin:0px;padding:0px 0px 5px;outline:0px;pointer-events:auto;transition:opacity 0.2s ease 0s;position:absolute;z-index:50;color:#FFFFFF;font-size:0px;opacity:1;max-width:calc(100vw - 16px);filter:none;top:0px;transform:scale(0);">
<div data-v-467fb32a="" class="menu_options_bar" style="margin:0px;padding:0px;outline:0px;border-radius:4px;font-size:14px;background:currentcolor;backdrop-filter:none;filter:none;position:relative;z-index:1;box-shadow:rgba(0, 0, 0, 0.2) 0px 4px 30px;color:#FFFFFF;font-family:system-ui, -apple-system, BlinkMacSystemFont, "font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:0.544px;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-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;">
<div data-v-86d3df32="" data-v-467fb32a="" class="context-menu-wrap" style="margin:0px;padding:8px 12px;outline:0px;display:flex;justify-content:space-between;align-items:center;box-sizing:border-box;">
<p data-v-86d3df32="" data-v-467fb32a="" class="data-text" style="margin:0px;padding:0px;outline:0px;font-size:14px;color:rgba(0, 0, 0, 0.9);font-weight:400;">
人划线
</p>
</div>
</div>
<br class="Apple-interchange-newline" />
</div>
</div>
页:
[1]