-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsearch.xml
308 lines (146 loc) · 97.9 KB
/
search.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
<?xml version="1.0" encoding="utf-8"?>
<search>
<entry>
<title>花指令笔记</title>
<link href="/posts/1856646162/"/>
<url>/posts/1856646162/</url>
<content type="html"><![CDATA[<h3 id="花指令是什么">花指令是什么</h3><p>简单来说就是用来干扰反编译器进行分析的一些代码小技巧</p><p>要说专业一点的话就是:</p><blockquote><p>花指令是企图隐藏掉不想被逆向工程的代码块(或其它功能)的一种方法, 在真实代码中插入一些垃圾代码的同时还保证原有程序的正确执行, 而程序无法很好地反编译, 难以理解程序内容, 达到混淆视听的效果。</p></blockquote><blockquote><p>花指令通常用于加大静态分析的难度。 <sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup></p></blockquote><h3 id="常见花指令类别">常见花指令类别</h3><h4 id="抵消型花指令">抵消型花指令</h4><p>这类花指令一般不会影响分析,但是可能会影响栈平衡</p><p>这类花指令通常要注意两个方面,逆运算与栈平衡</p><p>常见的逆运算:</p><pre><code class="language-asm">push-pop(压栈-出栈)add-sub adc-sbb (加法-减法 进位加法-借位减法)mul-div imul-idiv (乘法-除法 整数乘法-整数除法)inc-dec (加1-减1)shl-shr (左移-右移)xor-xor (异或)not-not (取反)</code></pre><h4 id="jmp-db型花指令">jmp db型花指令</h4><p>这类花指令可能不太会影响到 IDA 的分析,但有可能会影响到其它逆向分析软件,尤其是使用线性扫描算法的软件</p><p>这类花指令分为无条件跳转、条件跳转和干扰分析型</p><p>比较需要注意的是干扰分析型</p><p>一个栗子:</p><pre><code class="language-asm">start: xor eax,eax; test eax,eax; jz label0; jnz label1;label 0: db 0E8hlabel 1: xor eax,3; add eax,3; ...........</code></pre><h3 id="花指令去除步骤">花指令去除步骤</h3><h4 id="手动去除">手动去除</h4><p>找到花指令 nop 掉,然后选择先前为分析成功的部分,先按 <code>P</code> 转换为函数,再尝试将重新分析后的程序转换为伪代码</p><p>具体可参考<a href="https://anjio-fighting.github.io/2024/03/11/Reverse/Reverse-%E8%8A%B1%E6%8C%87%E4%BB%A4/">这篇文章</a></p><h4 id="脚本去除">脚本去除</h4><p>有时候遇到工作量比较大时可以使用脚本去除,如果是比较简单的花指令使用脚本也可以提高效率</p><p>要使用脚本需要先将对应的脚本拷到 IDA 对应的文件夹里</p><p>然后在 <code>Edit -> Plugins -> 插件名</code> 使用</p><p>我使用了 <a href="https://github.com/x1aon1ng/NoMoreFlower">NoMoreFlower</a> ,这个可以去除一些基本的花指令</p><hr class="footnotes-sep" /><section class="footnotes"><ol class="footnotes-list"><li id="fn1" class="footnote-item"><p>如想更详细的了解请阅读这篇文章:<a href="https://bbs.kanxue.com/thread-279604.htm">https://bbs.kanxue.com/thread-279604.htm</a> <a href="#fnref1" class="footnote-backref">↩︎</a></p></li></ol></section>]]></content>
<tags>
<tag> CTF </tag>
<tag> 网安 </tag>
<tag> 笔记 </tag>
<tag> 汇编 </tag>
<tag> 逆向 </tag>
</tags>
</entry>
<entry>
<title>Jarbas 渗透测试笔记</title>
<link href="/posts/2575785019/"/>
<url>/posts/2575785019/</url>
<content type="html"><![CDATA[<blockquote><p>靶机地址:<a href="https://download.vulnhub.com/jarbas/Jarbas.zip">https://download.vulnhub.com/jarbas/Jarbas.zip</a></p></blockquote><h2 id="渗透过程">渗透过程</h2><p>拿到靶机开机第一件事就是就是找到靶机,先用 nmap 扫一下同一网段的机子</p><pre><code class="language-shell">$ nmap 10.0.2.0/24 Starting Nmap 7.95 ( https://nmap.org ) at 2025-01-21 02:01 ESTNmap scan report for 10.0.2.1Host is up (0.000034s latency).Not shown: 999 closed tcp ports (reset)PORT STATE SERVICE53/tcp open domainMAC Address: 52:54:00:12:35:00 (QEMU virtual NIC)Nmap scan report for 10.0.2.2Host is up (0.000063s latency).Not shown: 993 closed tcp ports (reset)PORT STATE SERVICE22/tcp open ssh80/tcp open http139/tcp open netbios-ssn445/tcp open microsoft-ds631/tcp open ipp902/tcp open iss-realsecure24800/tcp open unknownMAC Address: 52:54:00:12:35:00 (QEMU virtual NIC)Nmap scan report for 10.0.2.3Host is up (0.000042s latency).All 1000 scanned ports on 10.0.2.3 are in ignored states.Not shown: 1000 filtered tcp ports (proto-unreach)MAC Address: 08:00:27:A3:71:23 (PCS Systemtechnik/Oracle VirtualBox virtual NIC)Nmap scan report for 10.0.2.15Host is up (0.000049s latency).Not shown: 996 closed tcp ports (reset)PORT STATE SERVICE22/tcp open ssh80/tcp open http3306/tcp open mysql8080/tcp open http-proxyMAC Address: 08:00:27:FE:DD:8E (PCS Systemtechnik/Oracle VirtualBox virtual NIC)Nmap scan report for 10.0.2.5Host is up (0.0000020s latency).All 1000 scanned ports on 10.0.2.5 are in ignored states.Not shown: 1000 closed tcp ports (reset)Nmap done: 256 IP addresses (5 hosts up) scanned in 2.32 seconds</code></pre><p>访问两个开放了 80 端口的机子可以知道目标机器是10.0.2.15</p><p>找到目标后进行更进一步的扫描</p><pre><code class="language-shell">$ nmap 10.0.2.15 -sV -sT -OStarting Nmap 7.95 ( https://nmap.org ) at 2025-01-21 02:03 ESTNmap scan report for 10.0.2.15Host is up (0.00049s latency).Not shown: 996 closed tcp ports (conn-refused)PORT STATE SERVICE VERSION22/tcp open ssh OpenSSH 7.4 (protocol 2.0)80/tcp open http Apache httpd 2.4.6 ((CentOS) PHP/5.4.16)3306/tcp open mysql MariaDB 10.3.23 or earlier (unauthorized)8080/tcp open http Jetty 9.4.z-SNAPSHOTMAC Address: 08:00:27:FE:DD:8E (PCS Systemtechnik/Oracle VirtualBox virtual NIC)Device type: general purposeRunning: Linux 3.X|4.XOS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4OS details: Linux 3.2 - 4.14Network Distance: 1 hopOS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .Nmap done: 1 IP address (1 host up) scanned in 8.00 seconds</code></pre><p>获取到有 <code>OpenSSH 7.4</code> <code>Apache httpd 2.4.6</code> <code>MariaDB 10.3.23</code> <code>Jetty 9.4.z-SNAPSHOT</code> 等服务,系统版本是 <code>Linux 3.2 - 4.14</code> ,报告中也可以知道是 <code>CentOS</code> 这个发行版(其实启动靶机的时候就知道了)</p><p>除了 <code>TCP</code> 要扫,<code>UDP</code> 也要扫</p><pre><code class="language-shell">$ nmap 10.0.2.15 -sU Starting Nmap 7.95 ( https://nmap.org ) at 2025-01-21 02:05 ESTStats: 0:00:52 elapsed; 0 hosts completed (1 up), 1 undergoing UDP ScanUDP Scan Timing: About 6.20% done; ETC: 02:19 (0:13:22 remaining)Stats: 0:02:18 elapsed; 0 hosts completed (1 up), 1 undergoing UDP ScanUDP Scan Timing: About 14.30% done; ETC: 02:21 (0:13:53 remaining)Stats: 0:07:01 elapsed; 0 hosts completed (1 up), 1 undergoing UDP ScanUDP Scan Timing: About 40.78% done; ETC: 02:22 (0:10:13 remaining)Stats: 0:15:54 elapsed; 0 hosts completed (1 up), 1 undergoing UDP ScanUDP Scan Timing: About 88.06% done; ETC: 02:23 (0:02:09 remaining)Nmap scan report for 10.0.2.15Host is up (0.00064s latency).Not shown: 996 closed udp ports (port-unreach)PORT STATE SERVICE68/udp open|filtered dhcpc539/udp open|filtered apertus-ldp998/udp open|filtered puparp5353/udp open|filtered zeroconfMAC Address: 08:00:27:FE:DD:8E (PCS Systemtechnik/Oracle VirtualBox virtual NIC)Nmap done: 1 IP address (1 host up) scanned in 1114.07 seconds</code></pre><p>并没有什么特别有用的价值,目前已知有两个站点,一个在80端口,一个在8080端口<br />访问发现一个是网站主站,一个是管理网站的</p><p>两个站点都可以试着目录爆破一下</p><pre><code class="language-shell">$ gobuster dir -u http://10.0.2.15 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x html,php===============================================================Gobuster v3.6by OJ Reeves (@TheColonial) & Christian Mehlmauer (@firefart)===============================================================[+] Url: http://10.0.2.15[+] Method: GET[+] Threads: 10[+] Wordlist: /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt[+] Negative Status codes: 404[+] User Agent: gobuster/3.6[+] Extensions: html,php[+] Timeout: 10s===============================================================Starting gobuster in directory enumeration mode===============================================================/index.html (Status: 200) [Size: 32808]/.html (Status: 403) [Size: 207]/access.html (Status: 200) [Size: 359]/.html (Status: 403) [Size: 207]Progress: 429860 / 661683 (64.96%)[ERROR] Get "http://10.0.2.15/60411.html": context deadline exceeded (Client.Timeout exceeded while awaiting headers)[ERROR] Get "http://10.0.2.15/60411.php": context deadline exceeded (Client.Timeout exceeded while awaiting headers)[ERROR] Get "http://10.0.2.15/Yasasoft%20Dvd%20To%20Vcd%20Avi%20Divx%20Converter%20Magicdvdripper%20v3": context deadline exceeded (Client.Timeout exceeded while awaiting headers)[ERROR] Get "http://10.0.2.15/60411": context deadline exceeded (Client.Timeout exceeded while awaiting headers)[ERROR] Get "http://10.0.2.15/Yasasoft%20Dvd%20To%20Vcd%20Avi%20Divx%20Converter%20Magicdvdripper%20v3.php": context deadline exceeded (Client.Timeout exceeded while awaiting headers)[ERROR] Get "http://10.0.2.15/10691": context deadline exceeded (Client.Timeout exceeded while awaiting headers)[ERROR] Get "http://10.0.2.15/10691.html": context deadline exceeded (Client.Timeout exceeded while awaiting headers)[ERROR] Get "http://10.0.2.15/10691.php": context deadline exceeded (Client.Timeout exceeded while awaiting headers)[ERROR] Get "http://10.0.2.15/74516": context deadline exceeded (Client.Timeout exceeded while awaiting headers)[ERROR] Get "http://10.0.2.15/74516.html": context deadline exceeded (Client.Timeout exceeded while awaiting headers)Progress: 661680 / 661683 (100.00%)===============================================================Finished===============================================================</code></pre><p>可以发现有一些比较有趣的页面,<code>access.html</code></p><p>(PS: 刚开始扫描没有加 -x 参数,没有扫到目录,加上 -x 以添加后缀后就可以扫到了)</p><p>访问 <code>access.html</code> ,可以看到有三个像是 md5 加密值的东西</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=Y1RHNTcwUEE2YVVqT3ZpK3Rua0QvL013b2Yzd0x2TUtaQT09" alt="截图_选择区域_20250121225656" data-caption="截图_选择区域_20250121225656" loading="lazy"></p><p>找解密的网站找一下,发现都能找到</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=OW5XRjVVZnJsTnVZSUtNVmh3UGpCL013b2Yzd0x2TUtaQT09" alt="屏幕截图 2025-01-21 152718" data-caption="屏幕截图 2025-01-21 152718" loading="lazy"><br />貌似是账号和密码的对应关系,试着在 8080 端口的站点登录,可以发现 eder 这串可以登入</p><p>网站使用的是 Jerkins,可以通过构建任务来执行 shell 命令</p><p>利用此来反弹 shell</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=b25tZklnZmRBWGZsZTIrUXVjbEZaT0VMcnVtZUt5MD0=" alt="截图_选择区域_20250121153702" data-caption="截图_选择区域_20250121153702" loading="lazy"></p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=cFNLWkR1TkdJVmtTTlk0VHJKRjV4R0hXK2hPdUNYd0Y=" alt="截图_选择区域_20250121153800" data-caption="截图_选择区域_20250121153800" loading="lazy"></p><p>反弹指令执行前要先开启监听</p><p>得到 shell 后先查明用户情况</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=RXhtZEtzajExOUJqQnRiR1dsWjFQSG14amZNZ3Vkdz0=" alt="截图_选择区域_20250121154150" data-caption="截图_选择区域_20250121154150" loading="lazy"></p><p>可以看到大部分都是功能性的账户,所以提权的目标是 root 用户</p><p>检查一下其他的地方,比如 <code>crontab</code></p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=cHJGRTZlcWU5MlhoYy9adHNsMnB2VkFZYTJjek9IQT0=" alt="截图_选择区域_20250121154306" data-caption="截图_选择区域_20250121154306" loading="lazy"></p><p>发现 <code>crontab</code> 有在用 root 身份每五分钟执行一个脚本,可以通过修改脚本来获取 root 用户的 shell</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=d2wxWWduNXVScUt2aFVic2V0bjFLdlRhV2VjUnNKST0=" alt="截图_选择区域_20250121155145" data-caption="截图_选择区域_20250121155145" loading="lazy"></p><p>等待最多五分钟即可得到 root shell,同样的,也要提前开启监听</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=QXlsQVVZeVA3WVN4MUxuZHJrdTE5V0oyY3B4SWI0VT0=" alt="截图_选择区域_20250121155539" data-caption="截图_选择区域_20250121155539" loading="lazy"></p><p>拿到 shell 后就可以试着找 flag 等文件了</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=RVYzTVRVYW54L3owU2tRSzFVWVZTQzFWNHU4MVlIND0=" alt="截图_选择区域_20250121155647" data-caption="截图_选择区域_20250121155647" loading="lazy"></p><h2 id="总结">总结</h2><ul><li>操作上:<ul><li>在扫描时没有进行全端口扫描,只扫描了低位端口,<code>-p-</code> 参数没有加。虽然有很多服务默认端口都在低位,但不扫描高位的话容易错过可以利用的地方。</li><li>目录爆破可能需要备一些字典</li><li>8080 端口站点也可以尝试字典爆破</li></ul></li><li>过程难点:<ul><li>想获取 root shell 的时候有点不好找如何提权,这需要熟悉常见的可利用提权方法 <a href="https://hackerqwq.github.io/2020/10/23/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E4%B9%8B%E6%8F%90%E6%9D%83%E7%AF%87/">渗透测试之提权篇一</a> <a href="https://hackerqwq.github.io/2021/09/06/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E4%B9%8B%E6%8F%90%E6%9D%83%E7%AF%87%E4%BA%8C-Linux%E6%8F%90%E6%9D%83/">渗透测试之提权篇二(Linux 提权)</a> <a href="https://hackerqwq.github.io/2021/09/17/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E4%B9%8B%E6%8F%90%E6%9D%83%E7%AF%87%E4%B8%89-Windows%E6%8F%90%E6%9D%83/">渗透测试之提权篇三(Windows 提权)</a></li><li>除了常用提权方法,也需要熟悉常用的反弹 shell 手段 <a href="https://hackerqwq.github.io/2022/01/13/%E6%B8%97%E9%80%8F%E6%B5%8B%E8%AF%95%E4%B9%8B%E5%8F%8D%E5%BC%B9shell%E5%90%88%E9%9B%86/">渗透测试之反弹shell合集</a></li></ul></li><li>其它手段:<ul><li>Jerkins 有许多可以利用的漏洞,本次渗透可以尝试利用<br /><a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1003000">CVE-2019-1003000</a><br />有关<a href="https://www.jenkins.io/security/advisories/">更多 Jenkins 的漏洞</a></li><li>一些奇技淫巧:通过编辑 grub 以进入 root shell,因为在一般的渗透测试中比较难拿到机器的物理控制权限,所以比较罕见(<s>黑客潜入服务器机房戏码</s>,不过 grub 也可以上密码来着)</li><li>端口扫描时还有一个开放的 3306 端口,使用的是 <code>MariaDB</code> ,可以尝试查找<a href="https://mariadb.com/kb/en/changes-improvements-in-mariadb-10-3/">可利用的漏洞 </a></li></ul></li></ul>]]></content>
<tags>
<tag> 网安 </tag>
<tag> 渗透 </tag>
<tag> 笔记 </tag>
</tags>
</entry>
<entry>
<title>2024 红岩杯 CTF WP</title>
<link href="/posts/100693146/"/>
<url>/posts/100693146/</url>
<content type="html"><![CDATA[<blockquote><p>开学前忘记迁移 hexo 数据了,几个月都没更新,现在回家不知道发什么,就把之前写的 wp 拉过来凑个数了</p></blockquote><h2 id="Misc">Misc</h2><h3 id="Are-you-a-JPG-master">Are you a JPG master?</h3><h4 id="step-1">step 1</h4><p>根据提示使用 <a href="https://github.com/ww23/BlindWatermark">Java 盲水印</a>来获得 <code>level2.zip</code> 的密码</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=SUs3RnJCQXFqdzZYbTJGWEMzaDFHUkFHQnBrUGkzTFlxdz09" alt="1" data-caption="1" loading="lazy"></p><h4 id="step-2">step 2</h4><p>有一个 <code>level2.jpg</code> 和 <code>dic.txt</code> 猜测要跑字典,可能是图种或用某种隐写方式隐写了flag</p><p>使用 <code>binwalk</code> 未检测出压缩包</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=UlRFTVFPYS84Rmtuam1IUzBOOWp4eEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123190606" data-caption="Pasted image 20241123190606" loading="lazy"></p><p>使用 <code>stegdetect</code> 检测隐写类型:</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=MXozbjhjTS9SNGpKSnZFOEhvUHVLUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123185412" data-caption="Pasted image 20241123185412" loading="lazy"></p><p>未检测出有效隐写类型,猜测使用了 <code>steghide</code> ,尝试使用 <code>stegbrute</code> 跑字典,得到flag</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=OUR5M0dwb0JvZTJXazhoUTRic0ZXUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123185722" data-caption="Pasted image 20241123185722" loading="lazy"></p><h3 id="HardZip">HardZip</h3><h4 id="step-1-2">step 1</h4><p>给了一个 <code>dic.txt</code> ,所以使用 ARCHPR 跑字典</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=VEFjOHM2RWdHNldJdzlTS2oxaEJhQkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123190849" data-caption="Pasted image 20241123190849" loading="lazy"></p><h4 id="step-2-2">step 2</h4><p>得到密码,解压得到 <code>第二关.zip</code> 和 <code>hint.txt</code> ,根据 <code>hint.txt</code> ,了解到要用掩码攻击</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=RmlEVUxoSHIrY2RVMkRZN1FGN05XQkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123191308" data-caption="Pasted image 20241123191308" loading="lazy"></p><h4 id="step-3">step 3</h4><p>得到密码,继续解压得到一个 <code>flag.zip</code> 文件</p><p>使用 <code>010editor</code> 查看其十六进制,得知此文件并非伪加密</p><p>查看压缩包目录,发现有 <code>flag.txt</code> 和 <code>What's_this.png</code> 两个文件,可以知道要使用明文攻击,因为已知文件中12字节数据,且其中至少8字节连续,即可进行明文攻击</p><p>因为 <code>png</code> 头都是一样的,所以我构造了一个 <code>png</code> 头,然后使用 <code>bkcrack</code> 进行明文攻击,得到3个密钥并解密,得到 flag</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=UnhEemdtZ0hSaURkQVNuS2NJUmhwUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123195009" data-caption="Pasted image 20241123195009" loading="lazy"></p><blockquote><p>刚做题时的情形:“我真傻,真的,”蒟蒻抬起他没有神采的眼睛来,接着说。“我单知道明文攻击时候需要一个已知文件;我不知道只要前12字节就能攻击了。我一清早起来就开了电脑,计算flag.txt的crc32值,叫我们的Python脚本开始工作。到了下午,终于给出了12个crc32值相同的字符串,我便开了12个ARPHCR来攻击,过了一阵子没出结果。我急了,CPU内核们都说找不到了,再一看,8个密钥未找到,还有几个还在算呢。。。。”他接着但是呜咽,说不出成句的话来。。</p></blockquote><blockquote><p>对此,我们伟大的Beta猫学长回复道:成长需要时间</p></blockquote><h3 id="YourCraft">YourCraft</h3><p>666,这个入开桂了</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=V0tpUHhnTHc4VllzOVQzbXBuRGltUkFHQnBrUGkzTFlxdz09" alt="2024-11-22_12.03.15" data-caption="2024-11-22_12.03.15" loading="lazy"></p><h3 id="点击即送flag">点击即送flag</h3><p>点击即送 flag:</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=OUh6dEdLRHRSZFVET2xwSEJhb1F5UkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123192350" data-caption="Pasted image 20241123192350" loading="lazy"></p><h3 id="290的小秘密">290的小秘密</h3><p>根据题目提示,该图片使用了lsb隐写</p><p>使用 <code>stegsolve</code> 打开,这题的信息隐藏在 RGB 三个通道的最低位中,通过 <code>Analyse -> Data Extract</code> 得到flag</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=dkx4UzQwUjBHR0tUUzdQWFIzbERMUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123192941" data-caption="Pasted image 20241123192941" loading="lazy"></p><h3 id="5525">5525</h3><p>根据题目提示采用了 <code>SilentEye</code> 隐写,从压缩包中的 <code>hint.txt</code> 得到密钥为 “Mayday” ,使用 <code>SilentEye</code> 解密,得到flag</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=NS9wRnVwQmRockV2VVlBamJoMzdTQkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123193358" data-caption="Pasted image 20241123193358" loading="lazy"></p><h3 id="EasyZip">EasyZip</h3><p>根据题目描述得知要暴力破解,使用 <code>ARCHPR</code> 暴力破解得到密码:</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=TlRxZHpjUk1CM3kyRXVQWDhqRjEzeEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123193717" data-caption="Pasted image 20241123193717" loading="lazy"></p><h3 id="WirrreShark">WirrreShark</h3><h3 id="step-1-3">step 1</h3><p>使用 <code>WirrreShark</code> 打开题目文件</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=VXAwN0FmSitrU0VKMzRwaUt5UDFaeEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123194043" data-caption="Pasted image 20241123194043" loading="lazy"></p><h4 id="step-2-3">step 2</h4><p>依次查看各个条目,在第五个条目中发现flag</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=blpQVjZGMktSbWFMQm1wQ3poVGhZQkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123194153" data-caption="Pasted image 20241123194153" loading="lazy"></p><h3 id="我图图呢">我图图呢</h3><h4 id="step-1-4">step 1</h4><p>题目文件是一个图片,无法打开</p><p>使用 <code>010editor</code> 查看</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=VGZ1Rk9uSDN3MTBHYlYvdWJGekY0UkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123194700" data-caption="Pasted image 20241123194700" loading="lazy"></p><p>发现文件标头被修改,将其改正</p><p>修正后得到图片</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=WStTWnpDVk04alJ6ZytmS1Vwa1RMeEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123195245" data-caption="Pasted image 20241123195245" loading="lazy"></p><h4 id="step-2-4">step 2</h4><p>图片宽高不对,需要使用脚本爆破CRC得到宽高</p><p>脚本源码:</p><pre><code class="language-python">import zlib import struct import argparse import itertools parser = argparse.ArgumentParser() parser.add_argument("-f", type=str, default=None, required=True, help="crc.png") args = parser.parse_args() bin_data = open(args.f, 'rb').read() crc32key = zlib.crc32(bin_data[12:29]) # 计算crc original_crc32 = int(bin_data[29:33].hex(), 16) # 原始crc if crc32key == original_crc32: # 计算crc对比原始crc print('宽高没有问题!') else: input_ = input("宽高被改了, 是否CRC爆破宽高? (Y/n):") if input_ not in ["Y", "y", ""]: exit() else: for i, j in itertools.product(range(4095), range(4095)): # 理论上0x FF FF FF FF,但考虑到屏幕实际和cpu,0x 0F FF就差不多了,也就是4095宽度和高度 data = bin_data[12:16] + struct.pack('>i', i) + struct.pack('>i', j) + bin_data[24:29] crc32 = zlib.crc32(data) if(crc32 == original_crc32): # 计算当图片大小为i:j时的CRC校验值,与图片中的CRC比较,若相同,则图片大小已经确定 print(f"\nCRC32: {hex(original_crc32)}") print(f"宽度: {i}, hex: {hex(i)}") print(f"高度: {j}, hex: {hex(j)}") exit(0)</code></pre><p>最后得到宽高为:</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=UmRTckdrN2NnbEkwcVpacVordlRqaEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123200317" data-caption="Pasted image 20241123200317" loading="lazy"></p><p>使用 <code>010editor</code> 编辑宽高,得到完整图片</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=R2N6UzBvYnU4ODZ4aXI4b0tjbDh4eEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123200827" data-caption="Pasted image 20241123200827" loading="lazy"></p><h4 id="step-3-2">step 3</h4><p>在文件尾找到后半部分 flag</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=MUxGZW4yZ25mWGVqUmVXL09xWkNJeEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123200923" data-caption="Pasted image 20241123200923" loading="lazy"></p><h2 id="Crypto">Crypto</h2><h3 id="Classic-AES">Classic_AES</h3><p>由题目可知采用了AES_ECB加密,并且种子是一个小整数,编写脚本爆破:</p><pre><code class="language-python">import random from Crypto.Cipher import AES import base64 import os def generate_key(seed): random.seed(seed) key = bytes([random.randint(0, 255) for _ in range(16)]) return key def decrypt(ciphertext, key): cipher = AES.new(key, AES.MODE_ECB) plaintext = cipher.decrypt(base64.b64decode(ciphertext)) pad_len = plaintext[-1] # 去除 PKCS#7 填充 return plaintext[:-pad_len].decode() if __name__ == "__main__": flag = "x/xvgy+sXb6I8j96FTT5fgEGT9lMR4XC/zKTvdY77a3Yntdvn1GScfkf/MHziWzI" for seed in range(100000): # 暴力破解种子 try: # 使用try...except...避免无法解码错误退出 key = generate_key(seed) decrypted_flag = decrypt(flag, key) if "Redrock" in decrypted_flag: # 筛选出包含"Redrock"的结果 print(decrypted_flag) break except: pass</code></pre><p>得到 flag :</p><pre><code>Redrock{6b16bf86-6749-4112-b438-319e4ce7a5c1}</code></pre><h3 id="Morse-Code">Morse_Code</h3><p>密文:</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=NWNuR2c2NG9VcjdjRkxUdWlLd2RkeEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123203637" data-caption="Pasted image 20241123203637" loading="lazy"></p><p>解密得:</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=WnV1b3E0UDdzVFBlZnpOQTJMbm4zUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123203849" data-caption="Pasted image 20241123203849" loading="lazy"></p><h3 id="What-is-RSA">What is RSA</h3><p>文件中有p,q,e,c四个值</p><p>From ChatGPT:</p><p>在RSA加密算法中,以下是每个符号的含义:</p><ol><li><p><strong>p 和 q</strong>:<br />这两个是大素数,用于生成密钥。</p><ul><li>选择两个大素数 p 和 q,它们应尽可能随机且保密。</li><li>计算 n=p×q,n 是密钥的一部分。</li></ul></li><li><p><strong>e</strong>:<br />公钥指数(加密指数)。</p><ul><li>e 是一个与 ϕ(n)=(p−1)(q−1) 互素的整数,满足 1<e<ϕ(n)。</li><li>常见的 e 值是 65537,因为它计算效率高,且足够安全。</li></ul></li><li><p><strong>c</strong>:<br />密文(ciphertext)。</p><ul><li>明文 m 加密后生成的结果 c,计算公式是: c=m^e mod n</li></ul></li></ol><h5 id="补充说明">补充说明</h5><ul><li><strong>私钥指数 d</strong>:解密指数,用于解密密文。它满足: d×e≡1mod ϕ(n)</li><li>解密公式: m=c^d mod n</li></ul><p>RSA 的核心在于大数分解的困难性。</p><p>根据以上内容写出解密脚本代码:</p><pre><code class="language-python">from sympy import mod_inverse p = 107838628855654812471413655393398150378995246065154350033910452648032730414023 q = 63326381933899241811507370594269184413864749996932931556519044275437019848179 e = 65537 c = 2614337245710053040032169192794377666429639491165446083830186166080709603975820326607483164927365452151697893098970942225623463372515924991756039075659888 phi_n = (p - 1) * (q - 1) # 计算 n 和 φ(n)n = p * q d = mod_inverse(e, phi_n) # 计算 dm = pow(c, d, n) # 得到明文 # 将得到的明文转为字符串 def int_to_string(m): hex_string = hex(m)[2:] # 转成16进制并去掉 "0x" 前缀 if len(hex_string) % 2: # 确保长度为偶数 hex_string = "0" + hex_string return bytes.fromhex(hex_string).decode('utf-8') # 按照字节解码 # 转换并输出字符串 try: plaintext = int_to_string(m) print(plaintext) except UnicodeDecodeError: print("无法解码")</code></pre><p>得到 flag :</p><pre><code>Redrock{0b46cdfc-4b31-4023-a33d-b8defada9457}</code></pre><h3 id="real1ty的小秘密">real1ty的小秘密</h3><p>由题目可知是凯撒密码,因为不知道偏移量,所以需要枚举26次得到明文</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=cHNtRDNVNE1OV0xyWStWb2I5bUpzUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123210844" data-caption="Pasted image 20241123210844" loading="lazy"></p><h3 id="我解md5真的假的">我解md5真的假的</h3><p>part1-3和5可通过 [[<a href="https://www.somd5.com/">https://www.somd5.com/</a>]] 查到,part4根据提示,可通过穷举得到原文,穷举代码如下:</p><pre><code class="language-python">import hashlib # MD5目标值 target_md5 = "ad5da884551e8e48886ce42b926d7fe8" # 字符来源 special_chars = "!@#$%^&-()" numbers = "0123456789" letters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" # 所有可能的组合 for special_pair1 in special_chars: for special_pair2 in special_chars: # 从特殊字符中选2个 for number in numbers: # 从数字中选1个 for letter in letters: # 从字母中选1个 # 拼接成字符串 candidate = '' + special_pair1 + special_pair2 + number + letter # 计算MD5 md5_hash = hashlib.md5(candidate.encode()).hexdigest() # 判断是否匹配 if md5_hash == target_md5: print(f"找到匹配字符串: {candidate}") break</code></pre><p>最终得到flag:</p><pre><code>youknowmd5isnotsafe%@7D8545</code></pre><h2 id="Pwn">Pwn</h2><h3 id="login">login</h3><h4 id="step-1-5">step 1</h4><p>分析程序逻辑,发现输入-1即可得到shell</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=WFk0OS9pRnVSVVdvN1hLSjU3dzR1eEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123224127" data-caption="Pasted image 20241123224127" loading="lazy"></p><h4 id="step-2-5">step 2</h4><p>nc连接输入-1,得到shell</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=b2FUa0x0V2lTNE45azBZM1lSY201eEFHQnBrUGkzTFlxdz09" alt="4bde6e6ce2d381dbf85a4384dc5a180f" data-caption="4bde6e6ce2d381dbf85a4384dc5a180f" loading="lazy"></p><h3 id="real-login">real_login</h3><p>按照提示操作即可</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=dXh2SmxFSXA4eS9QTEtnWEREbzBNaEFHQnBrUGkzTFlxdz09" alt="1e02562d7e402e99ded2cd20d42287a3" data-caption="1e02562d7e402e99ded2cd20d42287a3" loading="lazy"></p><h3 id="计算猫">计算猫</h3><p>手动计算得到 <code>shell</code></p><h2 id="Web">Web</h2><h3 id="这是真签到">这是真签到</h3><p><code>F12</code> 大法好</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=UVNmR2RkMGtWT1FoMXcvaWxuWXUzUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123132248" data-caption="Pasted image 20241123132248" loading="lazy"></p><h3 id="Ping">Ping</h3><p>注入题,输入 <code>1|ls /</code> 查看根目录</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=bW5yVUVPNWNXZDZuL2Q3N3NXR2ROUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123132438" data-caption="Pasted image 20241123132438" loading="lazy"></p><p>发现有flag,尝试查看文件,输入 <code>1|cat /flag</code></p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=S3Rnb3kva0VoSDJuSGc5K2t5SjhDeEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123132504" data-caption="Pasted image 20241123132504" loading="lazy"></p><p>可能是对 <code>flag</code> 关键字做了特殊处理,用模糊匹配就行了<br />输入 <code>1|cat /fla*</code> 即可</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=TXlnQ0pjekwvRkdTUWhkL0g0RFJKUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123132556" data-caption="Pasted image 20241123132556" loading="lazy"></p><h3 id="贪吃蛇">贪吃蛇</h3><p>打开控制台,给score赋值10000即可</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=RWxnRFZlbGV2L0RvdlgrS01hZnUxUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123230515" data-caption="Pasted image 20241123230515" loading="lazy"></p><h2 id="Reverse">Reverse</h2><h3 id="srand-s">srand%s</h3><p>Linux远程调试后,得到对应的v4值,并将其输出</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=aHQwaythbnFsbUpERC9ySzB1WHpTeEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123232140" data-caption="Pasted image 20241123232140" loading="lazy"></p><pre><code class="language-c">#include <stdio.h> int main() { int v3[41]; v3[0] = 53; v3[1] = 163; v3[2] = 13; v3[3] = 1; v3[4] = 62; v3[5] = 156; v3[6] = 33; v3[7] = 151; v3[8] = 72; v3[9] = 190; v3[10] = 222; v3[11] = 221; v3[12] = 194; v3[13] = 195; v3[14] = 208; v3[15] = 46; v3[16] = 26; v3[17] = 168; v3[18] = 49; v3[19] = 150; v3[20] = 113; v3[21] = 219; v3[22] = 223; v3[23] = 184; v3[24] = 78; v3[25] = 99; v3[26] = 29; v3[27] = 11; v3[28] = 91; v3[29] = 249; v3[30] = 163; v3[31] = 185; v3[32] = 38; v3[33] = 20; v3[34] = 101; v3[35] = 196; v3[36] = 91; v3[37] = 96; v3[38] = 154; v3[39] = 39; printf("Redrock{"); printf("%c",0x29u^v3[8]); printf("%c",0xCDu^v3[9]); printf("%c",0xBAu^v3[10]); printf("%c",0xABu^v3[11]); printf("%c",0xF2u^v3[12]); printf("%c",0xFBu^v3[13]); printf("%c",0xE3u^v3[14]); printf("%c",0x46u^v3[15]); printf("%c",0x7Cu^v3[16]); printf("%c",0xC2u^v3[17]); printf("%c",0x54u^v3[18]); printf("%c",0xF8u^v3[19]); printf("%c",0x1Bu^v3[20]); printf("%c",0xE8u^v3[21]); printf("%c",0xE7u^v3[22]); printf("%c",0x8Du^v3[23]); printf("%c",0x76u^v3[24]); printf("%c",0x5Au^v3[25]); printf("%c",0x2Eu^v3[26]); printf("%c",0x63u^v3[27]); printf("%c",0x33u^v3[28]); printf("%c",0x9Fu^v3[29]); printf("%c",0xC9u^v3[30]); printf("%c",0x9Au^v3[31]); printf("%c",0x66u^v3[32]); printf("%c",0x32u^v3[33]); printf("%c",0xDu^v3[34]); printf("%c",0xB7u^v3[35]); printf("%c",0x31u^v3[36]); printf("%c",0x58u^v3[37]); printf("%c",0xA3u^v3[38]); printf("%c",0x5Au^v3[39]); }</code></pre><p>通过对应的值输出对应的字符</p><h3 id="easy">easy</h3><p>在 IDA 中按下 <code>Shift + F12</code> 查看字符串,即可找到flag</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=MnQ0MHV2ajBLcFlieE9sVERFRDJQaEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123232717" data-caption="Pasted image 20241123232717" loading="lazy"></p><h3 id="花花的世界">花花的世界</h3><p>先查壳,但查不到,根据题目描述猜测使用 <code>UPX</code> 壳<br />无法使用 <code>UPX</code> 直接去壳,使用 <code>010editor</code> 打开发现识别 <code>UPX</code> 的部分被改成了 <code>SRE</code> ,改回去壳即可</p><p>反编译使用 <a href="https://github.com/x1aon1ng/NoMoreFlower/blob/master/NoMoreFlower.py">NoMoreFlower</a> 去花</p><p>再对关键函数按下 <code>P</code> 重构函数,按 <code>F5</code> 得到伪代码</p><p>分析代码逻辑,程序将输入进行 <code>RC4</code> 加密,密钥为 <code>flower</code> ,后将其与随机数进异或位运算,最后与预存数组比较<br /><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=Mjlwa2xoSnlOZXljVTRERCsyQWRtUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123234816" data-caption="Pasted image 20241123234816" loading="lazy"><br /><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=dGpNNHd4ZU5iOUtxTWVmSFBqcDV2aEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123234824" data-caption="Pasted image 20241123234824" loading="lazy"><br /><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=ZUV3N3d6ZnNqbDcrMXUyUmNzUWJSUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123234812" data-caption="Pasted image 20241123234812" loading="lazy"></p><p>srand种子是取了高位,所以随机数种子短时间不变</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=R2doU1pSOWVMS3VueDlSL2liNEh5UkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123234859" data-caption="Pasted image 20241123234859" loading="lazy"></p><p>最后根据逻辑编写程序算出原RC4密文,再进行解密,得到flag</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=Qm1lNFM1QWpqRUhmekM3bFBWTWtoUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123234942" data-caption="Pasted image 20241123234942" loading="lazy"></p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=azdGZVQzU005NzVwRFh5Q1NwN3czaEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123235030" data-caption="Pasted image 20241123235030" loading="lazy"></p><h3 id="Rc4-py">Rc4_py</h3><p>使用 <code>pyinstxtractor</code> 解包,然后在 <code>ereee</code> 文件发现base64字符串后,又根据题目描述使用rc4解密,密钥为 <code>flag{123321321123badbeef012}</code> ,密文即发现的base64字符串</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=b3QrWTM1ekw2cHRBS3A4YVB1WnAwQkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123235454" data-caption="Pasted image 20241123235454" loading="lazy"></p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=dERhdHRkOTFyMStLMXdZUEptR1J3QkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123235502" data-caption="Pasted image 20241123235502" loading="lazy"></p><h3 id="baby-reverse">baby_reverse</h3><p>走迷宫,程序似乎会对行顺序进行调整</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=ZUF6NU5UWDJyUm9taHZqMFdqU1ZmUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241123235742" data-caption="Pasted image 20241123235742" loading="lazy"></p><p>调整后即可得到路径</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=cUtvaXJyeVZQWG5ZWkl6SWZ3RnVseEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241124002424" data-caption="Pasted image 20241124002424" loading="lazy"></p><p>原文wp:[[<a href="https://singularityctf.blogspot.com/2014/03/volgactf-quals-2014-writeup-reverse-100.html">https://singularityctf.blogspot.com/2014/03/volgactf-quals-2014-writeup-reverse-100.html</a>]]</p><h3 id="这是什么语言">这是什么语言</h3><p>下述操作需要先找到入口</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=S0dGVWlnUk9PaVFscE1qc1ErYXI0QkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241124003902" data-caption="Pasted image 20241124003902" loading="lazy"><br /><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=N3ZqWUdtazhHUWFHWllUc1pZS0RBeEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241124003937" data-caption="Pasted image 20241124003937" loading="lazy"><br /><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=U3RsYU14dWVjdFBKMkZqcXRtaHEyUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241124003942" data-caption="Pasted image 20241124003942" loading="lazy"><br /><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=UCtIa0RWOHUzc0RJQWRPN0FUUTNCQkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241124003537" data-caption="Pasted image 20241124003537" loading="lazy"><br /><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=ak9JWENnTyt3UXlxY1Bsem5MR1pqeEFHQnBrUGkzTFlxdz09" alt="Pasted image 20241124003548" data-caption="Pasted image 20241124003548" loading="lazy"></p><p>这是仓颉语言,分析貌似使用了RSA或AES,但无法找到对应公私钥和密文,所以使用动态调试,在栈中找到flag<br />设置断点在解密结束后,在寄存器中找到了flag</p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=ajJrY1ZjNFI1dlNwMy8wK0l6SXpEUkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241124000552" data-caption="Pasted image 20241124000552" loading="lazy"></p><p><img data-fancybox="gallery" src="https://img.24kblog.top/app/hide.php?key=aWpsUjZpalZ5c01FSjUyaUp0YjlyQkFHQnBrUGkzTFlxdz09" alt="Pasted image 20241124000757" data-caption="Pasted image 20241124000757" loading="lazy"></p>]]></content>
<tags>
<tag> CTF </tag>
<tag> 网安 </tag>
</tags>
</entry>
<entry>
<title>不能被看见的,雪</title>
<link href="/posts/1183353236/"/>
<url>/posts/1183353236/</url>
<content type="html"><![CDATA[<h1>不能被看见的,雪</h1><p>海南下了一场雪,在这个葱郁的学校。</p><p>好像大家都其乐融融,可是还是有小部分人看见了雪,当然,大部分人看不见,也有人假装看不见。</p><p>这是一场没有温度的雪,却令人心如刀割。雪并不大,恰恰好雪中有一片不结冰的小池,中间躺着一朵白莲。雪就像眼泪,那么细小,却又那么坚毅。看见雪的人都发着抖,假装看不见的人也发着抖,只可惜,这雪和泪那样的像,泪是最无用的东西,而雪也是。</p><p>大家站在水池边祈祷,那是美好的愿望,可白莲仍静静地躺着,他似乎没有听到。假装看不见雪的人自然也假装看不见白莲,若无其事的踩过去,白莲又碎了几瓣,可看见雪的人没办法,因为他们说自己是“假装看见雪的人”。<br />最后雪也哭了,他恨自己的无用,他太伤心了,于是在这儿落下了所有人都看得见的雨,可那终究不是雪,他愤怒地捶打着大地,又无力地留下了哀嚎,那哀嚎化作雷,向所有看不见雪的人示戚,可是还是没用,他们可以假装看不见雪,也可以假装看不见雷。</p><p>雪仍在下,可他说他已经快耗尽了,如果不能所有人都看见雪,那么就再也见不到白莲了。</p><p>白莲仍躺着,却再也不能活泼地长大了。</p><p>转自抖音号:dyudfdyw7yrk</p>]]></content>
</entry>
<entry>
<title>追番备份</title>
<link href="/posts/4151385849/"/>
<url>/posts/4151385849/</url>
<content type="html"><![CDATA[<p>还有一年就要高考了,在此做一个追番备份,等考完了再补</p><h2 id="2023年7月">2023年7月</h2><ul><li>死神少爷与黑女仆 第2期</li><li>喜欢的人忘记戴眼镜了</li><li>公司里的小小前辈</li><li>AI电子基因</li><li>无职转生 第2期</li><li>间谍教室 第2期</li><li>Liar・Liar 谎言游戏</li><li>满怀美梦的少年是现实主义者</li><li>莱莎的炼金工房</li><li>白圣女与黑牧师</li><li>其实我乃最强?</li><li>总之就是非常可爱 女高篇</li></ul><h2 id="2023年10月">2023年10月</h2><ul><li>间谍过家家 第2期</li><li>石纪元 第3期 Part.2</li><li>葬送的芙莉莲</li><li>晚安 世界</li><li>凹凸魔女的母女故事</li><li>超超超超喜欢你的100个女孩子</li><li>SHY 腼腆英雄</li><li>星灵感应</li><li>16bit的感动 Another Layer</li><li>放学后少年花子君</li><li>药屋少女的呢喃</li><li>堤亚穆帝国物语 从断头台开始的公主重生后的逆转人生</li><li>家里蹲吸血姬的苦闷</li><li>我推是反派大小姐</li><li>捡到被退婚大小姐的我教会她做坏坏的事</li><li>想当冒险者前往大都市的女儿升到了S级</li><li>某大叔的VRMMO活动记</li><li>经验丰富的你和经验为零的我交往的故事</li><li>偶像大师 百万现场</li><li>赛马娘 Pretty Derby 第3期</li><li>铁路浪漫谭 第2期</li></ul><h2 id="想补的番">想补的番</h2><ul><li>赛马娘</li><li>铁路浪漫谭</li><li>妖幻三重奏</li></ul>]]></content>
<tags>
<tag> 番剧 </tag>
</tags>
</entry>
<entry>
<title>树莓派搭建哔哩漫游解析服务器</title>
<link href="/posts/4060428211/"/>
<url>/posts/4060428211/</url>
<content type="html"><![CDATA[<h1>用树莓派搭建哔哩漫游服务器</h1><p>准备:</p><ul><li>懂得提问过程的脑子</li><li>会用搜索引擎的手</li><li>耐心</li><li>树莓派(或其他能长时间运行的计算机)</li><li>魔法</li><li>域名</li><li>一点点Linux知识</li></ul><h2 id="第一步">第一步</h2><h3 id="准备工作">准备工作</h3><p>域名:有许多免费申请域名的方法,Bing搜索都有,这里不再赘述,不过比起免费还是建议去购买域名,一年最多就几十块,不算很贵<br />树莓派:这里我安装了Ubuntu 22.04.1 LTS,下文的许多指令不确定在Ubuntu以外的操作系统有效,尽情留意<br />魔法:懂的都懂,没有的可以散伙了,建议用付费的,比较稳定,详细的我也不敢说,我怕备案掉了,不过后文的配置文件会提一嘴</p><h2 id="第二步">第二步</h2><h3 id="环境搭建">环境搭建</h3><h4 id="Go编译器安装">Go编译器安装</h4><p>我们在这里采用手动安装的方式,因为不确定apt是否能安装到最新的稳定版本<br />先从<a href="https://go.dev/dl/">此处</a>找到合适的软件包(因为是树莓派所以选择linux-arm64),右键复制链接</p><pre><code>wget <下载网址> && tar -C /usr/local -xzf <下载文件名></code></pre><p>如果下载慢或无法下载,请使用魔法或者使用<a href="https://studygolang.com/dl">此处</a>镜像(本人不保证该资源安全,请自行校验或选择可信镜像站)<br />然后编辑<code>/etc/environment</code>,在path变量后加上<code>/usr/local/go/bin</code><br />最后执行<code>go version</code>,如果是类似以下的输出结果则为安装成功</p><pre><code>go version go1.19.4 linux/arm64</code></pre><h4 id="安装PostgreSQL">安装PostgreSQL<sup class="footnote-ref"><a href="#fn1" id="fnref1">[1]</a></sup></h4><p>一行命令</p><pre><code>apt-get install postgresql postgresql-client</code></pre><p>装完后进入PostgreSQL</p><pre><code>psql -h localhost -p 5432 -U postgres</code></pre><p>如果显示类似如下错误信息:</p><pre><code>psql: error: connection to server on socket "/var/run/postgresql/.s.PGSQL.5432" failed: FATAL: role "root" does not exist</code></pre><p>请使用以下指令再试一遍:</p><pre><code>sudo -u postgres psql -h localhost -p 5432 -U postgres</code></pre><p>修改登录密码(password112233修改为你喜欢的任意字符)</p><pre><code>ALTER USER postgres WITH PASSWORD 'password112233';</code></pre><p>创建并进入数据库</p><pre><code>CREATE DATABASE bili;\c bili;</code></pre><p>初始化数据库,复制<a href="https://raw.githubusercontent.com/JasonKhew96/biliroaming-go-server/main/sql/initdb.sql">这个页面</a>内所有内容后粘贴即可(请务必进行这一步,否则后续可能报错)</p><p>如果解析服务器搭建后你想查看使用的用户详情的话建议你安装一个pgadmin4<br />使用docker安装会比较舒服,同时还推荐一个家庭云管理,说是家庭云,其实就像一个小型的docker容器可视化管理器</p><h4 id="sock5端口的建立">sock5端口的建立</h4><p>这是关于魔法的部分,如果没有魔法请自行离开<br />使用某ray软件,配置文件<sup class="footnote-ref"><a href="#fn2" id="fnref2">[2]</a></sup>仅供参考</p><pre><code>{"log": {"loglevel": "warning"},"inbounds": [{"listen": "127.0.0.1","port": 7465,"protocol": "socks","setting": {"auth": "noauth","udp": true},"tag": "gotw"},{"listen": "127.0.0.1","port": 7466,"protocol": "socks","setting": {"auth": "noauth","udp": true},"tag": "gohk"},{"listen": "127.0.0.1","port": 7467,"protocol": "socks","setting": {"auth": "noauth","udp": true},"tag": "goth"}],"outbounds": [{ //Paste your TW config here "protocol": "trojan", "settings": { "servers": [ { "address": "", "port": , "password": "" } ] }, "streamSettings": { "network": "tcp", "security": "tls" },"tag": "taiwan"},{ //Paste your HK config here"protocol": "trojan","settings": {"servers": [{"address": "","port": ,"password": ""}]},"streamSettings": {"network": "tcp","security": "tls"},"tag": "hongkong"},{ //Paste your TH config here"protocol": "trojan","settings": {"servers": [{"address": "","port": ,"password": ""}]},"streamSettings": {"network": "tcp","security": "tls"},"tag": "thailand"}],"routing": {"domainStrategy": "AsIs","rules": [{"type": "field","inboundTag": ["gotw"],"outboundTag": "taiwan"},{"type": "field","inboundTag": ["gohk"],"outboundTag": "hongkong"},{"type": "field","inboundTag": ["goth"],"outboundTag": "thailand"}]}}</code></pre><h4 id="内网穿透">内网穿透</h4><p>使用ddns也可以,只要你有方法使你的网站能在外网被访问就可以<br />这里使用的是<a href="https://www.natfrp.com/">Sakura frp</a><br />你也可以使用其他内网穿透服务,详情请自行搜索<br />注册账号等不再赘述<br />新建隧道,选择可建站的节点<br />注意:海外节点可能被墙无法访问,国内节点需要域名备案,请理清需求条件后再使用,否则请使用其他内网穿透服务<br />除了节点选择以外按照下图进行设置(建议在网络低峰期新建,因为高峰期节点满载就禁止新建了):<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E9%9A%A7%E9%81%93%E9%85%8D%E7%BD%AE%E5%9B%BE.png" alt="隧道配置图" data-caption="隧道配置图" loading="lazy"><br />在<a href="https://www.natfrp.com/tunnel/download">此处</a>下载客户端并上传至服务器<br />选择Linux-arm64<br />在用户信息处复制访问密钥登陆,然后选中隧道继续就可以了<br />之后可以用文末的方式进程保留在后台<br />(ps:目前比较好用的免费穿透服务我知道的就这一家,如果有推荐的更好的免费穿透服务的话建议在下面发出来,我很需要)</p><h4 id="宝塔面板安装">宝塔面板安装</h4><p>非必要步骤,如果你了解Nginx配置和免费证书申请等网站搭建基本步骤请优先使用你的方法(因为宝塔安装Nginx太慢了,<s>我用它纯纯是因为我是懒狗</s>)<br />如果你对宝塔有意见的话可以试试<a href="https://github.com/midoks/mdserver-web">mdserver-web</a>,或者手动搭建Nginx服务和手动申请证书<br />因为写这篇文章的时候我已经用上宝塔了,所以文中就用宝塔进行演示了<br /><a href="https://www.bt.cn/new/download.html#:~:text=%E5%A4%8D%E5%88%B6-,%E4%B8%87%E8%83%BD%E5%AE%89%E8%A3%85%E8%84%9A%E6%9C%AC,-if%20%5B%20%2Df%20/usr">此处</a>复制粘贴指令即可<br />安装完后通过浏览器访问面板,提示lnmp安装的话只需要安装Nginx就可以了,由于是编译安装,所以时间可能比较久,你可以先干其他事<br />安装完成后新建站点,域名填你使用的域名,申请证书的部分网上也有步骤,<s>我是懒狗</s>懒得再复述一遍了</p><h2 id="第三步">第三步</h2><h3 id="哔哩漫游goserver安装">哔哩漫游goserver安装</h3><p><code>mkdir biliroaming && cd biliroaming</code>新建和进入目录后克隆库</p><pre><code>git clone https://github.com/JasonKhew96/biliroaming-go-server</code></pre><p>如果下载缓慢或遇到其他网络问题,建议使用ghproxy的加速服务</p><pre><code>git clone https://ghproxy.com/https://github.com/JasonKhew96/biliroaming-go-server</code></pre><h3 id="配置文件的编写">配置文件的编写<sup class="footnote-ref"><a href="#fn3" id="fnref3">[3]</a></sup></h3><p>参考<a href="https://github.com/JasonKhew96/biliroaming-go-server/blob/main/config.example.yml">此处</a><br />第4行因为要用反代,所以填个合适的端口就行<br />第68-73行根据某ray软件来编写,如果列表里有,注释掉你的树莓派所在地,及你没有的地区魔法<br />最后到第103行,host后改为127.0.0.1,password改为设定的密码的同时取消注释,并把passwordFile注释掉,dbName改为bili,至此改完并保存。</p><h3 id="运行">运行!</h3><p>对于国内服务器,先执行</p><pre><code>`export GOPROXY=https://goproxy.io,direct`</code></pre><p>接着执行</p><pre><code>go run .</code></pre><p>若无报错则说明正常(Ctrl-C退出),若有报错请自行检查是否有遗漏。<br />运行后进入宝塔面板,进入网站新建反向代理,目标url填<code>http://127.0.0.1:<端口号></code></p><h4 id="后台运行">后台运行</h4><p>没什么问题后就进入后台运行<br />使用screen,没有screen就装一个<br />使用</p><pre><code>screen -S <终端名></code></pre><p>选择合适的终端名有利于出现问题时方便排查<br />进入后再次运行各个项目,然后Ctrl-A-D退出<br />恢复则使用</p><pre><code>screen -r <终端名></code></pre><h4 id="补充">补充</h4><p>如果你想要同时搭建网页请在<code>biliroaming/html/</code>目录下放置你的网页文件<br />不知是否支持动态网页,请自行实验</p><h2 id="总结">总结</h2><p>你可以看看<a href="https://bili.24kblog.top">我建的</a><br />以上,如果有疑问的话欢迎留言</p><hr class="footnotes-sep" /><section class="footnotes"><ol class="footnotes-list"><li id="fn1" class="footnote-item"><p>引用自 <a href="https://www.eaglemoe.com/archives/315">Yukie-记录一下哔哩漫游GO版搭建流程</a><br /><s>因为我懒得再写一遍,就直接复制粘贴了</s><br />有稍作修改 <a href="#fnref1" class="footnote-backref">↩︎</a></p></li><li id="fn2" class="footnote-item"><p>参考同上博客,有稍作修改 <a href="#fnref2" class="footnote-backref">↩︎</a></p></li><li id="fn3" class="footnote-item"><p>部分参考同上 <a href="#fnref3" class="footnote-backref">↩︎</a></p></li></ol></section>]]></content>
<tags>
<tag> 哔哩哔哩 </tag>
<tag> 哔哩漫游 </tag>
<tag> 服务器 </tag>
<tag> 技术 </tag>
</tags>
</entry>
<entry>
<title>打扫博客</title>
<link href="/posts/3234727849/"/>
<url>/posts/3234727849/</url>
<content type="html"><![CDATA[<h1>打扫博客</h1><blockquote><p>打扫久未使用的房间非常累,整理久未使用的博客也一样</p></blockquote><p>因为要把自己写的机器人的文档放上来,而且之前博客有一些东西/功能我想加,所以就决定重新打理打理这个博客<br />说着简单,其实打理了一整天,真的要命</p><h2 id="1-万事开头难">1.万事开头难</h2><p>说是万事开头难,其实后面也没有简单多少,主要是我的技术栈不在nodejs这类似的语言上面,所以真的有点要命</p><h3 id="npm包处理">npm包处理</h3><p>我刚建立这个博客的时候,用的这个主题还没有本地搜索的功能,当时就想着用各种方法来弄搜索功能,然而我当时对js啥的一窍不通 <s>(现在也一样)</s> ,所以就把搜索功能给搞残废了,到最后连修都修不回去,就直接放弃了</p><p>来打理的时候第一时间就想到这个,然后看到作者还在维护(作者人间之鉴),而且加了搜索和其他许多功能,一下子开心的不得了,以为之后会轻松许多 <s>(然而等待我的其实是地狱)</s> ,便开始按照<a href="https://docs.nexmoe.com/v3.2/">文档</a>安装:</p><pre><code>npm i [email protected]</code></pre><p>安装完之后打开配置文件(_config.nexmoe.yml)一看,新特性呢?飞了?我直接whats up</p><p>于是我开始尝试包括但不限于以下方式,都没成功:</p><ul><li>删掉主题重装</li><li>通过msi更新了nodejs</li><li>卸载重装了nodejs</li><li><s>重启电脑</s></li><li>…</li></ul><p>就这样纠缠了接近两个小时,问题仍然没有解决,但浏览器标签页已经开了接近30页 <s>(内存:你清高)</s><br />我删掉了主题,删掉了同学的标签页,终于!<s>(李纪哲&同学:你有事?)</s><br />在必应和谷歌之间反复横跳有了结果<br /><a href="https://www.cnblogs.com/shy1766IT/p/11112065.html#:~:text=%E6%88%91%E4%BB%AC%E9%9C%80%E8%A6%81%E5%85%88%E6%9B%B4%E6%96%B0%20package.json%E6%96%87%E4%BB%B6%EF%BC%9A%20%E5%AE%89%E8%A3%85%22npm-check-updates%22%E6%A8%A1%E5%9D%97%20npm%20install%20-g%20npm-check-%20updates,-check-%20updates%20%E4%BB%A5%E4%B8%8A%E4%B8%A4%E6%9D%A1%E5%91%BD%E4%BB%A4%E9%83%BD%E5%8F%AF%E6%A3%80%E6%9F%A5%E5%8F%AF%E6%9B%B4%E6%96%B0%E6%A8%A1%E5%9D%97%E3%80%82%20%E6%8E%A5%E4%B8%8B%E6%9D%A5%E6%9B%B4%E6%96%B0package.json%E7%9A%84%E4%BE%9D%E8%B5%96%E5%8C%85%E5%88%B0%E6%9C%80%E6%96%B0%E7%89%88%E6%9C%AC%EF%BC%9A%20ncu%20-%20u%20%E4%BB%A5%E4%B8%8A%E5%91%BD%E4%BB%A4%E6%89%A7%E8%A1%8C%EF%BC%8C%E6%9B%B4%E6%96%B0%E5%85%A8%E9%83%A8%E6%A8%A1%E5%9D%97%E3%80%82">这篇文章</a>教会了我怎么升级,分析之后我才明白我之前是多么傻</p><p>npm包在某一区域内是根据<code>package.json</code>这个文件来安装本区域包的<br />意思就是我之前对这这个npm包管理器虚空打靶<br />npm一滴血没掉,我:好厚的血</p><p>我通过下面的指令成功更新了主题,顺便连hexo也一起更新了</p><pre><code>npm install -g npm-check-updatesncu // 查看可更新包ncu -u // 更新package.jsonnpm install // 升级到最新版本</code></pre><p>上面的指令是ncu这个插件自动检测<code>package.json</code>这个文件里的包信息,并查找更新,然后更改这个文件,最后重新安装一遍就好了</p><p>不过主题的最新版本是4.0.0,配置文件的内容有许多不同,不过我通过修改<code>package.json</code>里的版本信息,重新安装就安装到了目标版本</p><h2 id="2-我超-二次元">2.我超!二次元</h2><p>我超!二次元!怎么会有人为了二次元捣鼓半天代码啊,妈妈让我不要跟傻卵二次元玩,啊,原来我就是啊,那没事了</p><p>其实是为了添加看板娘插件而一波三折,又研究挺久,还被迫捡回了一点<s>我快忘光光了只学了一点点的</s>js/html</p><h3 id="live2d看板娘插件">live2d看板娘插件</h3><p>在我原来的博客中,里面有我插入的live2d看板娘插件,不过由于上一节的一些操作 <s>(删掉主题重装的逆天操作)</s> ,这些插件已经不复存在,需要重新配置<br />然后我先上GitHub <s>(全球最大同性交友网站)</s> 搜了一下,最先看到的相关的插件是hexo的<code>hexo-helper-live2d</code><br />然后就按照<a href="https://github.com/EYHN/hexo-helper-live2d/blob/master/README.zh-CN.md">文档</a>开始造<br />然后一个<code>hexo g</code>一个<code>hexo s</code>就开始部署,在本地就部署好了<br />打开一看,生效是生效了,但这样还不够!<s>(渊薮_Crowd:你有事吗?)</s><br />功能确实太严重了,换模型,换衣,拍照等等功能都缺失了,真的就看板娘了,而且配置文件还不生效,无奈之下只能寻找其它办法</p><p>又在GitHub找了半天,中间还去必应找了几下,回到了起点<br />文档的底下写了相关项目<code>live2d-widget.js</code>,点进去存档了,不过有另一个链接<br />指向了现在仍在维护的<a href="https://github.com/stevenjoezhang/live2d-widget">live2d-widget</a>(作者人间之鉴)</p><p>但是问题又随之而来,怎么添加<br />文档说的很简单:</p><blockquote><p>将这一行代码加入 <code><head></code> 或 <code><body></code>,即可展现出效果:<br /><code><script src="https://fastly.jsdelivr.net/gh/stevenjoezhang/live2d-widget@latest/autoload.js"></script></code></p></blockquote><p>对js/html一窍不通的我:?<br />然后就开始搜索是什么意思,一开始还不太敢改,也不知道改哪里,怕跟上次一样改坏了<br />我披星戴月,我奋不顾身,终于!(你这荔枝太假了)<br />在<code>node_modules</code>文件夹中的文件夹海中找到了主题的文件夹,并且通过对比hexo生成的页面的html源码找到了主题的生成模板,依靠那渣都不剩的js/html知识成功添加了看板娘,并且功能齐全<br /><s>嘿嘿,看板娘,小小的,香香的</s></p><p>修改后的代码如下:</p><pre><code><head> <link rel="stylesheet" href="https://fastly.jsdelivr.net/npm/@fortawesome/fontawesome-free@6/css/all.min.css"> <script src="https://fastly.jsdelivr.net/gh/stevenjoezhang/live2d-widget@latest/autoload.js"></script> ...</head></code></pre><p>看板娘可爱捏</p><h2 id="3-代码高亮-没有你我怎么活啊">3.代码高亮,没有你我怎么活啊</h2><p>如果有人能用Windows自带的记事本写下几百行代码,那我可能会叫他爹<br />黑底白字对于写代码来说有点难受,但对于看代码来说,也一样难受</p><h3 id="代码高亮">代码高亮</h3><p>处理完上面的事情之后,我发现了一个严重的问题<br />代码高亮没了,不仅没了,因为字体颜色和背景一样,就跟黑幕一样</p><p>继续翻<a href="https://docs.nexmoe.com/v3.2/">文档</a>,在常见问题里发现了这一条:</p><blockquote><p>代码高亮<br />自2.9.0版本后,需要在 _config.yml 文件中进行如下配置使用高亮</p><pre><code>highlight: enable: true hljs: true auto_detect: true</code></pre><p>更多内容:<a href="https://hexo.io/zh-cn/docs/syntax-highlight#Highlight-js">代码高亮 | Hexo</a></p></blockquote><p>修改了配置文件,然而并没有什么卵用,只是变成了黑底白字,而且能看得更清楚了<br />多了一些没对齐的行号</p><p>地狱又来了,为了解决搜了各种办法,什么装第三方插件啦,换另一个官方支持的代码高亮啦<br />都没用</p><p>写入绝望中看到了希望,这篇文章的作者对于官方的<code>highlight.js</code>使用很失望,所以决定自己嵌入使用这个js脚本~~(我:作者你一定要幸福啊)~~<br /><s>搜索n小时,highlight.js治好了我的精神内耗</s><br />不过由于与上一节一样的原因,并且加上搜索了半天脑子已经有点不清醒了,我还是找了十几分钟在哪修改<br /><s>?怎么跟看板娘的地方一样啊</s></p><p>修改后的代码如下:</p><pre><code><head> <link rel="stylesheet" href="https://fastly.jsdelivr.net/npm/@fortawesome/fontawesome-free@6/css/all.min.css"> <link rel="stylesheet" href="https://unpkg.com/@highlightjs/[email protected]/styles/vs2015.min.css"> <script src="https://fastly.jsdelivr.net/gh/stevenjoezhang/live2d-widget@latest/autoload.js"></script> <script src="https://unpkg.com/@highlightjs/[email protected]/highlight.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/highlightjs-line-numbers.js/dist/highlightjs-line-numbers.min.js"></script> <script> hljs.initHighlightingOnLoad(); hljs.initLineNumbersOnLoad(); </script> ... </head></code></pre><p>顺便加了<a href="https://github.com/wcoder/highlightjs-line-numbers.js">行号显示</a>(<a href="https://blog.lucien.ink/archives/491/">参考博客</a>),这个问题也是我后面才发现的,跟高亮一样的路线,不过搜索没花那么长时间就是了 <s>(主要是我懒得再写一遍了)</s><br />行号显示也有问题,有一些代码快和行号黏在一起了 <s>(贴贴好耶)</s> 不过我在修改<code>article.styl</code>之后就好多了:</p><pre><code>/* for block of numbers */.hljs-ln-numbers { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; text-align: center; color: #ccc; border-right: 10px solid #8000000F; vertical-align: top; padding-right: 20px; /* your custom style here */}/* for block of code */.hljs-ln-code { padding-left: 20px;}</code></pre><p>上面的代码是通过在代码和行号之间加了一条10px的透明线来实现分离的 <s>(竟然拆散他们,24k你坏事做尽😡)</s></p><p>下面是效果图,感觉非常滴不戳:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BB%A3%E7%A0%81%E6%95%88%E6%9E%9C%E5%9B%BE.png" alt="代码效果图" data-caption="代码效果图" loading="lazy"></p><p>还有一些小插曲,但是我懒得写了,简单描述下吧:<br />使用完代码高亮后似乎和后面的背景颜色不同,然后通过修改styl文件解决了</p><h2 id="4-can-can-need">4.can can need</h2><p>我的图片很大,你要忍一下↗~~</p><h3 id="图片大小">图片大小</h3><p>在编写帮助文档的时候,发现一个问题<br />图片太大在网站中似乎并不美观,于是我先用网上搜的办法尝试 <s>(没错又是搜索地狱)</s><br />先是这篇<a href="https://www.zhihu.com/question/23378396/answer/234858357">知乎回答</a>,在markdown代码块后面追加css代码<br />我的编辑器是显示有更改了,但生成代码后令人眼前一黑<br />页面竟然把css源码原封不动的显示了出来</p><p>于是我开始寻求另一种解决方式,找到了一个<a href="https://github.com/bobcn/hexo_resize_image.js">脚本</a><br />按照里面的方式部署完代码如下:</p><pre><code><body>... <script src="https://gcore.jsdelivr.net/gh/bobcn/hexo_resize_image.js@latest/hexo_resize_image.js"></script></body></code></pre><p>然后再按照他的写法,引用图片这样引用:<code>图片链接?缩放百分比</code><br />生成!<br />终于成功了,脚本作者,你做得好,你做的好啊</p><h2 id="5-世界很大-我想要看看">5.世界很大,我想要看看</h2><p>由于一些众所周知的原因,一些网站无法访问,或者访问困难<br />而去年年底jsdelivr的备案被注销后,jsdelivr的资源获取便成了困难,他的链接也被DNS污染了<br />而我写的文档面向的受众有很多都是没有科学上网知识的同学,所以打破这道阻碍也是很重要的事</p><h3 id="更换CDN">更换CDN</h3><p>这件事情很简单,换CDN嘛<br />不过GitHub库的CDN还真没几个,无奈之下,试了下<code>fastly.jsdelivr.net</code><br />不太行,随后又试了几个二级域名,最后发现<code>gcore.jsdelivr.net</code>可以使用,vscode全局替换就ok了</p><h2 id="尾声">尾声</h2><p>这篇文章写了两天,在写这篇文章的时候还遇到了一些小瑕疵,左下的版权信息不是在指定位置换行,看的很难受,不过在经历历练之后,好好的修改了主题文件,就好了<br />这篇文章也算是我重拾这个博客之后第一篇正经文章,要开学了,不知道这篇博客还有没有机会更新<br />不过题材还是有的,是两个审核的故事,如果我有时间的话可能会继续写<br />两个审核:工信部和腾讯机器人运营部</p><p><s>另:石蒜好看,千1是神</s></p>]]></content>
<tags>
<tag> 博客 </tag>
<tag> npm </tag>
<tag> hexo </tag>
<tag> js </tag>
</tags>
</entry>
<entry>
<title>机器人帮助文档</title>
<link href="/posts/2372181853/"/>
<url>/posts/2372181853/</url>
<content type="html"><![CDATA[<h1>欢迎来到海中bot帮助文档</h1><blockquote><p>观感提示:若部分图片未加载请多刷新几次<br />部分设备显示比例可能有问题,点击图片可查看正常比例<br />若仍存在问题,请联系我,或使用其他设备访问(建议使用电脑端访问)</p></blockquote><p>在这里,你可以获得各个指令的用法<br />至于为什么是在我的博客,原因还是我懒得再建一个文档网站 <s>(虽然不要钱就是了)</s></p><h2 id="签到">签到</h2><p>用法:<code>@海中bot /签到</code><br />描述:签到,获得随机数量的一堂二堂三堂饭券<br />效果图片:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/1.jpg?40" alt="签到" data-caption="签到" loading="lazy"><br />注:后续可能会增加抽卡功能,所以建议每天都来签签到<br />\ 顺便征集一二三堂菜名或其他内容作为抽卡项目</p><h2 id="查询">查询</h2><p>用法:<code>@海中bot /查询</code><br />描述:查询你所持有的一二三堂饭券<br />效果图片:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/2.jpg?40" alt="查询" data-caption="查询" loading="lazy"><br />注:后续若添加了抽卡功能,还可查询所抽到的内容</p><h2 id="天气">天气</h2><p>用法:<code>@海中bot /天气 [城市名]</code>(请注意指令后的空格,不可删除,否则会报错)<br />使用效果:获取天气<br />参数:<br />城市名:选填,留空默认查询海口天气<br />效果图片:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/3.jpg?40" alt="天气" data-caption="天气" loading="lazy"> <img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/3_1.jpg?40" alt="天气_城市" data-caption="天气_城市" loading="lazy"></p><h2 id="每日一图">每日一图</h2><p>用法:<code>@海中bot /每日一图 [图片类型]</code>(请注意指令后的空格,不可删除,否则会报错)<br />使用效果:获取随机图片<br />参数:<br />图片类型:选填,可选二次元,留空默认获取美景图片<br />效果图片:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/4.jpg?40" alt="每日一图" data-caption="每日一图" loading="lazy"> <img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/4_2.jpg?40" alt="每日一图_二次元" data-caption="每日一图_二次元" loading="lazy"></p><p>注:有时候带二次元参数返回会比较慢,请耐心等待,或再试一遍,如下图:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/4_1.jpg?40" alt="每日一图_二次元_加载慢" data-caption="每日一图_二次元_加载慢" loading="lazy"></p><h2 id="土味骚话">土味骚话</h2><p>用法:<code>@海中bot /土味骚话</code><br />使用效果:获得随机土味情话或骚话<br />效果图片:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/5.jpg?40" alt="土味骚话" data-caption="土味骚话" loading="lazy"> <img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/5_1.jpg?40" alt="土味骚话" data-caption="土味骚话" loading="lazy"></p><h2 id="查词">查词</h2><p>用法:<code>@海中bot /查词 [待查询词]</code><br />使用效果:获取单词释义或语言<br />参数:<br />待查单词:必填,当语言为英语时,返回单词释义及有道词典链接,当语言为其他时,返回语言代码及有道词典链接<br />效果图片:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/6.jpg?40" alt="查词_英语" data-caption="查词_英语" loading="lazy"> <img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/6_1.jpg?40" alt="查词_日语" data-caption="查词_日语" loading="lazy"></p><h2 id="视频解析">视频解析</h2><p>用法:<code>@海中bot /视频解析 [AV/BV号]</code><br />使用效果:获取哔哩哔哩视频封面、下载链接<br />参数:<br />AV/BV号:必填,哔哩哔哩视频AV/BV号<br />效果图片:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/7.jpg?40" alt="视频解析" data-caption="视频解析" loading="lazy"></p><h2 id="视频封面">视频封面</h2><p>用法:<code>@海中bot /视频封面 [AV/BV号]</code><br />使用效果:获取哔哩哔哩视频封面<br />参数:<br />AV/BV号:必填,哔哩哔哩视频AV/BV号<br />效果图片:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/8.jpg?40" alt="视频封面" data-caption="视频封面" loading="lazy"></p><h2 id="音乐下载">音乐下载</h2><p>用法:<code>@海中bot /音乐下载 [网易云音乐id]</code><br />使用效果:获取网易云音乐音频下载链接(注意:黑胶歌曲下载只有前30秒,无版权歌曲或其他歌曲自行测试)<br />参数:<br />网易云音乐id:必填,网易云音乐id,可在音乐分享链接里获取<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/9.jpg?40" alt="音乐下载" data-caption="音乐下载" loading="lazy"></p><h1>管理员选项</h1><p>以下条目仅管理员可用,请注意自身权限</p><h2 id="禁言">禁言</h2><p>用法:<code>@海中bot /禁言 @禁言对象 [时间]</code><br />使用效果:快速禁言某个成员,范围为整个频道<br />参数:<br />时间:选填,单位为秒,留空默认7200(两小时)(注意:此处填纯数字即可,不要带单位,否则会报错)<br />效果图片:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/10.jpg?40" alt="禁言" data-caption="禁言" loading="lazy"> <img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/10_1.jpg?40" alt="禁言_时间" data-caption="禁言_时间" loading="lazy"></p><h2 id="解禁">解禁</h2><p>用法:<code>@海中bot /解禁 @解禁对象</code><br />使用效果:快速解禁某个成员,范围为整个频道<br />效果图片:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/11.jpg?40" alt="解禁" data-caption="解禁" loading="lazy"></p><h2 id="全员禁言">全员禁言</h2><p>用法:<code>@海中bot /全员禁言</code><br />使用效果:快速全员禁言(注意:由于范围为整个频道而非子频道,所以非特殊情况请不要使用)<br />效果图片:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/12.jpg?40" alt="全员禁言" data-caption="全员禁言" loading="lazy"></p><h2 id="全员解禁">全员解禁</h2><p>用法:<code>@海中bot /全员解禁</code><br />使用效果:快速全员解禁<br />效果图片:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/%E4%BA%8B%E4%BE%8B%E7%85%A7%E7%89%87/13.jpg?40" alt="全员解禁" data-caption="全员解禁" loading="lazy"></p><h1>写在最后</h1><p>目前就写了这些功能,如果你有什么想添加的功能,可以在底下留言,或者通过QQ向我反馈<br />感谢:@Developing. @怎么能有这么难学的东西 协助测试</p><p><s>突发奇想就写了这个机器人,也不知道会有多少人用(悲)</s></p>]]></content>
<tags>
<tag> QQ频道 </tag>
<tag> QQ机器人 </tag>
</tags>
</entry>
<entry>
<title>刷题记录</title>
<link href="/posts/4267985632/"/>
<url>/posts/4267985632/</url>
<content type="html"><![CDATA[<h1>刷题记录</h1><h2 id="1-P1179-NOIP2010-普及组-数字统计">1.<a href="https://www.luogu.com.cn/problem/P1179">P1179 [NOIP2010 普及组] 数字统计</a></h2><h3 id="解题思路">解题思路:</h3><p>声明一个整型变量,作为计数器,再计算两个值之间2的出现次数</p><p>核心代码:</p><pre><code>while(g!=0){ if(g%10==2)ans++; g/=10; }</code></pre><h3 id="我的代码">我的代码:</h3><pre><code>#include <bits/stdc++.h>using namespace std;int main(){ int l,r,ans=0; cin>>l>>r; for(int i=l;i<=r;i++){ int g=i; while(g!=0){ if(g%10==2)ans++; g/=10; } } cout<<ans<<endl; return 0;}</code></pre><h2 id="2-P1307-NOIP2011-普及组-数字反转"><a href="https://www.luogu.com.cn/problem/P1307">2.P1307 [NOIP2011 普及组] 数字反转</a></h2><h3 id="解题思路-2">解题思路:</h3><p>声明待输入数和输出数,输出数扩充一位给输入数最后一位,输入数再舍去最后一位</p><p>核心代码:</p><pre><code>for(na;na!=0;na/=10) nb=nb*10+na%10;</code></pre><h3 id="我的代码-2">我的代码</h3><pre><code>#include <iostream>using namespace std;int na,nb=0;int main(){ cin>>na; for(na;na!=0;na/=10) nb=nb*10+na%10; cout<<nb;}</code></pre><h2 id="3-P1075-NOIP2012-普及组-质因数分解"><a href="https://www.luogu.com.cn/problem/P1075">3.P1075 [NOIP2012 普及组] 质因数分解</a></h2><h3 id="解题思路-3">解题思路:</h3><p>从小到大轮流除,找到最小因数,质因数/最小因数=最大因数</p><p>核心代码:</p><pre><code> for(int i=2;i<=n;++i){ if(n%i==0){ cout<<n/i; return 0; } }</code></pre><h3 id="我的代码-3">我的代码:</h3><pre><code>#include <cstdio>#include <iostream>using namespace std;int main(){ int n; cin>>n; for(int i=2;i<=n;++i){ if(n%i==0){ cout<<n/i; return 0; } }}</code></pre><h2 id="4-P1980-NOIP2013-普及组-计数问题"><a href="https://www.luogu.com.cn/problem/P1980">4.P1980 [NOIP2013 普及组] 计数问题</a></h2><h3 id="解题思路-4">解题思路:</h3><p>每个数都进行判断,使用计数器计数</p><p>核心代码:</p><pre><code>for(i=1;i<=n;i++){ temp=i; while(temp!=0){ t=temp%10; temp/=10; if(t==x) c++; }</code></pre><h3 id="我的代码-4">我的代码:</h3><pre><code>#include <iostream>using namespace std;int n,x,temp,i,t,c;int main(){ cin>>n>>x; for(i=1;i<=n;i++){ temp=i; while(temp!=0){ t=temp%10; temp/=10; if(t==x) c++; } } cout<<c<<endl; return 0;}</code></pre><h2 id="5-P2141-NOIP2014-普及组-珠心算测验"><a href="https://www.luogu.com.cn/problem/P2141">5.P2141 [NOIP2014 普及组] 珠心算测验</a></h2><h3 id="解题思路-5">解题思路:</h3><p>暴力查找</p><p>核心代码:</p><pre><code>for(i=1;i<=n;i++){ cin>>a[i]; tf[a[i]]++; } for (i=1;i<=n;i++){ for(g=1+1;g<=n;g++){ ti[a[i]+a[g]]++; mn=max(mn,a[i]+a[g]); } } for(i=1;i<=mn;i++){ if(ti[i]>0&&tf[i]) ans++; }</code></pre><h3 id="我的代码-5">我的代码:</h3><pre><code>#include <iostream>#include <cstdio>using namespace std;const int M=20005;int ti[M],tf[M],n,a[205],ans,mn,i,g;int main(){ cin>>n; for(i=1;i<=n;i++){ cin>>a[i]; tf[a[i]]++; } for (i=1;i<=n;i++){ for(g=1+1;g<=n;g++){ ti[a[i]+a[g]]++; mn=max(mn,a[i]+a[g]); } } for(i=1;i<=mn;i++){ if(ti[i]>0&&tf[i]) ans++; } cout<<ans;}</code></pre><h2 id="6-P2669-NOIP2015-普及组-金币"><a href="https://www.luogu.com.cn/problem/P2669">6.P2669 [NOIP2015 普及组] 金币</a></h2><h3 id="解题思路-6">解题思路:</h3><p>自加,后减去超出部分</p><p>核心代码:</p><pre><code> for(i=1;k-i>0;k-=i++){ coin+=i*i; } cout<<coin+k*i;</code></pre><h3 id="我的代码-6">我的代码:</h3><pre><code class="language-cpp">#include <cstdio>#include <iostream>using namespace std;long long int k,i,coin;int main(){ cin>>k; for(i=1;k-i>0;k-=i++){ coin+=i*i; } cout<<coin+k*i;}</code></pre>]]></content>
<tags>
<tag> CSP </tag>
</tags>
</entry>
<entry>
<title>海中信息学夏令营学习笔记&心得</title>
<link href="/posts/2933809653/"/>
<url>/posts/2933809653/</url>
<content type="html"><![CDATA[<h1>海中信息学夏令营学习笔记&心得</h1><h2 id="第一天">第一天</h2><h3 id="递归算法">递归算法</h3><p>百度上的定义是在计算机科学中是指一种通过重复将问题分解为同类的子问题而解决问题的方法。<br />有点难懂,但结合一些例子就容易理解了,比如:<br />1.如何给一堆数字排序?答:分成两半,先排左半边再排右半边,最后合并就行了,至于怎么排左边和右边,请重新阅读这句话。<br />2.<img data-fancybox="gallery" src="https://oi-wiki.org/basic/images/divide-and-conquer-1.png" alt="递归" data-caption="递归" loading="lazy"><br />简单来说,递归就是函数自己调用自己本身,以解决问题。</p><p>典型问题:<a href="https://www.luogu.com.cn/problem/P4285">汉诺塔问题</a></p><h3 id="基础知识">基础知识</h3><blockquote><p>这些知识主要靠记背,加油吧!</p></blockquote><p>1、计算机的基本常识<br />●计算机和信息社会(信息社会的主要特征、计算机的主要特征、数字通信网络的主要特征、数字化)<br />●信息输入输出基本原理(信息交换环境、文字图形多媒体信息的输入输出方式)<br />信息的表示与处理(信息编码、微处理部件MPU、内存储结构、指令,程序,和存储程序原理、程序的三种基本控制结构)<br />●信息的存储、组织与管理(存储介质、存储器结构、文件管理、数据库管理)<br />●信息系统组成及互连网的基本知识(计算机构成原理、槽和端口的部件间可扩展互连方式、层次式的互连结构、互联网络、TCP/IP协议、HTTP协议、WEB应用的主要方式和特点)<br />●人机交互界面的基本概念(窗口系统、人和计算机交流信息的途径(文本及交互操作))<br />●信息技术的新发展、新特点、新应用等。</p><p>2、计算机的基本操作<br />●WINDOWS和LINUX的基本操作知识<br />●联网的基本使用常识(网上浏览、搜索和查询等)<br />●常用的工具软件使用(文字编辑、电子邮件收发等)</p><p>3、程序设计的基本知识<br />(1)、数据结构<br />●程序语言中基本数据类型(字符、整数、长整数、浮点)<br />●浮点运算中的精度和数值比较<br />●一维数组(串)与线性表<br />●记录类型(PASCAL)/结构类型©<br />(2)、程序设计<br />●结构化程序设计的基本概念阅读理解程序的基本能力<br />●具有将简单问题抽象成适合计算机解决的模型的基本能力<br />●具有针对模型设计简单算法的基本能力<br />●程序流程描述(自然语言/伪码/NS图/其他)<br />●程序设计语言(PASCAL/C / C++,)<br />(3)、基本算法处理<br />●初等算法(计数、统计、数学运算等)<br />●排序算法(冒泡法、插入排序、合并排序、快速排序)<br />●查找(顺序查找、二分法)<br />●回溯算法</p><p>上面这些是初赛的考察范围,刚见到的时候,<s>其实我是拒绝的。</s></p><p>这节课讲了计算机发展及应用、保护知识产权、计算机病毒<br />、计算机系统的组成、计算机指令系统、计算机的数字系统、在计算机中带符号数的表示法、信息存储单位及计算机网络知识。(讲的好多,<s>总结起来都有点害怕</s>)</p><p>知识点:<br />1.第一台电子计算机的诞生: ENIAC(1946,以约翰·莫克利、普雷斯伯·埃克特两人名字命名)<br />2.第一台具有存储程序功能的计算机:EDVAC(冯·诺依曼(美籍匈牙利人),由运算器、控制器、存储器、输人设备和输出设备这五部分组成)<br />3.EDVAC的进步:采用二进制、提出了“存储程序”<br />4.图灵(英国人),发明了图灵机,提出图灵试验<br />5.图灵奖(1966,美国计算机协会,纪念图灵为目的之一)(计算机界的诺贝尔奖,<s>啥时候我也能拿</s>)获得此奖的华人:姚期智(目前在清华,有清华姚班)<br />6.世界上第一位软件工程师:Ada Lovelace(爱达)(英国诗人拜伦的女儿)<br />7.中国第一个程序员:董铁宝(王选的老师,死于文革)<br />8.计算机发展阶段:电子管(1946-1958)、晶体管(1958-1964)、中小规模集成电路(1964-1975)、大规模/超大规模集成电路(1975-至今)<br />9.计算机的运用:科学计算(数值计算)、数据处理(信息处理)、人工智能、自动控制、计算机辅助设计和制造(CAI计算机辅助教学、CAM计算机辅助制造、CAT计算机辅助测试、CAD计算机辅助设计、CAE计算机辅助教育、CIMS计算机集成制造系统)<br />10.知识产权保护:法律文件<a href="http://www.gangcha.gov.cn/html/2110/282251.html#:~:text=%E7%AC%AC%E5%85%AB%E6%9D%A1,%E8%BD%AC%E8%AE%A9%E5%85%B6%E8%BD%AF%E4%BB%B6%E8%91%97%E4%BD%9C%E6%9D%83%EF%BC%8C%E5%B9%B6%E6%9C%89%E6%9D%83%E8%8E%B7%E5%BE%97%E6%8A%A5%E9%85%AC%E3%80%82">《计算机软件保护条例》</a>(此法用于保护软件的著作权)<br />11.计算机病毒:功能比较特殊的计算机程序(特点:能够将复制在其他程序中;不以独立文件形式存在,仅依附于其他程序上)(是程序,不能感染人!)<s>(谁都知道吧)</s><br />12.硬件系统的组成:运算器、控制器、存储器、输入设备、输出设备<br />13.运算器+控制器=CPU(中央处理器)<br />14.存储器:外存储器(硬盘、光盘、软盘、优盘等)、内存储器(ROM只读存储器、RAM随机存取存储器(平常说的运行内存))、高速缓存器:cache<br />15.速度:高速缓存器>内存>外存<br />16.rom是只读内存,相当于电脑的硬盘,断电后数据不易丢失/ram是随即访问存储器断电后数据不保存会丢失/内存包括ROM RAM/高速缓存的作用是协调设备之间的存取速度不一致<br />17.计算机的三总线结构:总线是一组导线、是公共通路,微型计算机中各个组成部件之间的信息传输都是通过它们来实现的/地址总线(AB)是单向总线,用以传送CPU向外设或存储器发出的地址信息。/数据总线(DB)是双向总线,用以CPU与内存或接口之间传输数据信息。/控制总线(CB)是双向总线,有的作为输出,有的作为输入,用以CPU与内存或I/O接口之间传送控制信息。分别传送地址信号、数据信号和控制信号。<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files/%E5%9B%BE%E7%89%871.png" alt="参考图片" data-caption="参考图片" loading="lazy"><br />18.软件系统:系统软件(操作系统软件(Windows系列、Linux系列、macOS、DOS、OS/2等)、计算机语言(机器语言、汇编语言、高级语言:basic,pascal,c,c++,viscal basic))应用软件(Adobe全家桶、office、3dmax、flash等)<br />19.面向对象语言是一类以对象作为基本程序结构单位的程序设计语言(纯面向对象语言,如Smalltalk、EIFFEL等;混合型面向对象语言,即在过程式语言及其它语言中加入类、继承等成分,如C++、Objective-C等;Visual B\C,Java)<br />20.计算机指令系统:计算机能直接识别和执行的命令称为指令。<br />指令本身是二进制代码。是要计算机执行某种操作的命令。<br />用机器指令编写的程序称之为机器语言程序。<br />一条指令通常由操作码和地址码两部分组成。<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files/%E5%9B%BE%E7%89%872.png" alt="参考图片" data-caption="参考图片" loading="lazy"><br />21.计算机的数字系统(n进制):逢n进位(考试常见进制:二进制、八进制、十进制、十六进制)<br />具体的转换方法请参考<a href="https://baike.baidu.com/item/%E8%BF%9B%E5%88%B6%E8%BD%AC%E6%8D%A2/3117222">这里</a><br />22.在计算机中带符号数的表示法:<br />原码(二进制,首位为符号位,1为负,0为正)<br />反码(正数原反相同,负数符号位保留,其余取反(即0变1,1变0)[+0]反表示为00…0,[-0]反表示为11…1)<br />补码(非负数数原补相同,负数两头1不变,中间取反)<br />BCD码(8421码)<a href="http://c.biancheng.net/cpp/html/1945.html">(关于BCD码)</a><br />23.信息存储单位:<br />位(bit,缩写为b):度量数据的最小单位,表示一位二进制信息<br />字节(Byte,缩写为B):一个字节由八位二进制数字组成(l Byte=8bit)字节是信息存储中最常用的基本单位<br />常见转换:<br />KB 1K=1024B<br />MB 1M=1024K<br />GB 1G=1024M<br />TB 1T=1024G<br />24.机器字:字是位的组合,并作为一个独立的信息单位处理。字又称为计算机字,它取决于机器的类型、字长以及使用者的要求。常用的固定字长有8位、16位、32位等。<br />25.计算机网络体系结构:国际标准化组织(ISO)提出的开放系统互联参考模型(OSI)<s>(上海自来水来自海上)</s><br />图示:<br /><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files/%E5%9B%BE%E7%89%873.png" alt="图示" data-caption="图示" loading="lazy"><br />26.TCP/IP:Transmission Control Protocol/Internet Protocol的简写,中文译名为传输控制协议/因特网互联协议,又叫网络通讯协议<br />超文本传输协议(HTTP),文件传输协议(FTP),Telnet和简单邮件传输协议(SMTP:发送收电子邮件,pop3:接收电子邮件)<br />27.Internet 网络地址(IP地址):<a href="https://baike.baidu.com/item/IP%E5%9C%B0%E5%9D%80/1508592">百度百科</a><br />IP地址共32位<br /><a href="https://baike.baidu.com/item/IP%E5%9C%B0%E5%9D%80/150859#:~:text=%E7%B1%BB%20192.168.0.0--192.168.255.255-,IP%E5%9C%B0%E5%9D%80%E7%BC%96%E5%9D%80%E6%96%B9%E5%BC%8F,-%E7%BC%96%E8%BE%91">IP地址编址方式</a></p><h4 id="未完待续-今回はここまで">未完待续~~(今回はここまで)~~</h4><h2 id="心得">心得</h2><p>从初级班转过来,原因是C++的基本语法已经掌握<br />转过来不仅是提升自我,也是对自己的一种挑战<br />虽然刚加进来时,所知道的算法寥寥无几<br />但,这几天的学习,补上了这一窟窿<br />每一次用算法解决了问题,虽感疲惫,但成就感满满<br />不过,结营的测试,也让我意识到了问题<br />基础知识的不牢固,对算法理解的不透彻,以及数论<br />现在也在改进的路上(背基础知识,上洛谷刷题、做以往真题等等)<br /><s>(说实话,背基础真的好痛苦)</s><br /><strong>那么,2021NOIP加油!</strong></p>]]></content>
</entry>
<entry>
<title>哔哩漫游解析服务器</title>
<link href="/posts/440813061/"/>
<url>/posts/440813061/</url>
<content type="html"><![CDATA[<h2 id="哔哩漫游解析服务器">哔哩漫游解析服务器</h2><h3 id="地址">地址</h3><pre><code>bili.24kblog.top</code></pre><h3 id="配置方法">配置方法</h3><p><a href="https://github.com/yujincheng08/BiliRoaming/wiki">哔哩漫游使用方法</a></p><h3 id="关于">关于</h3><p>此服务器搭建在树莓派上,如有问题请在下方留言,随缘回复/修复问题<br />关于解析服务器的搭建请参照<a href="https://24kblog.top/2023/01/28/%E6%A0%91%E8%8E%93%E6%B4%BE%E6%90%AD%E5%BB%BA%E5%93%94%E5%93%A9%E6%BC%AB%E6%B8%B8%E8%A7%A3%E6%9E%90%E6%9C%8D%E5%8A%A1%E5%99%A8/">树莓派搭建哔哩漫游解析服务器</a></p><h3 id="捐赠">捐赠</h3><h4 id="微信">微信</h4><p><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/donate_wechat.png" alt="微信" data-caption="微信" loading="lazy"></p><h4 id="支付宝">支付宝</h4><p><img data-fancybox="gallery" src="https://gcore.jsdelivr.net/gh/24kcsplus/home_files@latest/donate_alipay.jpg" alt="支付宝" data-caption="支付宝" loading="lazy"></p><p>送一杯咖啡提提神~</p>]]></content>
<tags>
<tag> 哔哩哔哩 </tag>
</tags>
</entry>
<entry>
<title>有点紧张</title>
<link href="/posts/3773936012/"/>
<url>/posts/3773936012/</url>
<content type="html"><![CDATA[<h1>明天就要进行海中的自主招生考试了</h1><h3 id="有点紧张">有点紧张</h3>]]></content>
<tags>
<tag> 考试 </tag>
</tags>
</entry>
<entry>
<title>每日播报(2021-06-14)</title>
<link href="/posts/601714408/"/>
<url>/posts/601714408/</url>
<content type="html"><![CDATA[<p><strong>距离中考仅剩 11 天</strong></p><h3 id="海口市天气">海口市天气</h3><ul><li>多云</li><li>温度:31°C(26~33°C)</li><li>风级:西南风 4-5级</li><li>空气质量:20 优</li></ul><h3 id="节日">节日</h3><ul><li>今天是端午节!🐲</li><li>父亲节: 6天</li><li>夏至日: 7天</li><li><strong>建党节、香港回归日</strong>: 17天</li></ul>]]></content>
<tags>
<tag> 每日播报 </tag>
</tags>
</entry>
<entry>
<title>每日播报(2021.06.13)</title>
<link href="/posts/18028602/"/>
<url>/posts/18028602/</url>
<content type="html"><![CDATA[<p><strong>距离中考仅剩 12 天</strong></p><h3 id="海口市天气">海口市天气</h3><ul><li>雷阵雨转多云</li><li>温度:30°C(26~32°C)</li><li>风级:微风<3级</li><li>空气质量:18 优</li></ul><h3 id="节日">节日</h3><ul><li>端午节: 1天</li><li>父亲节: 7天</li><li>夏至日: 8天</li><li><strong>建党节、香港回归日</strong>: 18天</li></ul>]]></content>
<tags>
<tag> 每日播报 </tag>
</tags>
</entry>
<entry>
<title>我的第一篇文章</title>
<link href="/posts/2054644849/"/>
<url>/posts/2054644849/</url>
<content type="html"><![CDATA[<h1>我是24k,你好啊</h1><p><strong>距离中考仅剩 13 天</strong></p><h3 id="海口市天气">海口市天气</h3><ul><li>雷阵雨</li><li>温度:28°C(27~31°C)</li><li>风级:东南风3~4级</li><li>空气质量:14 优</li></ul><h3 id="节日">节日</h3><ul><li>端午节: 2天</li><li>父亲节: 8天</li><li>夏至日: 9天</li><li><strong>建党节、香港回归日</strong>: 19天</li></ul><p>以上<br />2021.06.12</p>]]></content>
<tags>
<tag> 初见 </tag>
</tags>
</entry>
</search>