0%

摘要

由于截图后手动上传到COS比较麻烦,而ShareX(一个截图工具)支持SFTP上传到服务器
于是决定在服务器上配置腾讯云COS同步方案,然后就可以愉快地截图后上传图片了

流程

在腾讯云的对象存储(COS)配置好密钥以后,在服务器上配置同步方案
(建议设置一个用户组给予COS读写权限)

操作

安装依赖

1
sudo yum install automake gcc-c++ git libcurl-devel libxml2-devel fuse-devel make openssl-devel

安装cosfs

1
2
3
4
5
6
git clone https://github.com/tencentyun/cosfs-v4.2.1 /usr/cosfs
cd /usr/cosfs
./autogen.sh
./configure
make
sudo make install

修改配置文件(格式为bucket_name-bucket_appid:secretId:secredKey)

1
2
echo xhy-1252675344:AKIDXXXXXXXXXXXXXXXXXXXXXXXXX:XXXXXXXXXXXXXXXXXXXXXXXXXXXX > /etc/passwd-cosfs
chmod 640 /etc/passwd-cosfs

挂载(以挂载到/usr/upload/为例)

格式为cosfs bucket_appid:bucket_name 挂载目录 -ourl=对象储存url -odbglevel=info
例如:

1
cosfs 1252675344:xhy /usr/upload/ -ourl=xhy-1252675344.cos.ap-beijing.myqcloud.com -odbglevel=info

卸载

1
2
3
fusermount -u /u01/docker/kenny_hexo/public
或者
umount -l /u01/docker/kenny_hexo/public

参考

ImgURL配合腾讯云COS(对象存储)搭建个人图床

流程

将以下代码放到主题源文件目录下,如 /themes/yilia/source/js/ 下新建文件 click-word.js,代码见下文。
下载jquery文件(目前最新版本),放到同一目录下(个人喜好)。
修改布局文件,/themes/next/layout/_layout.ejs,在末尾body中添加

1
2
3
<!-- 页面点击特效 -->
<script type="text/javascript" src="/js/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="/js/click-word.js"></script>

保存后重新生成即可

js代码

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
var a_idx = 0;
jQuery(document).ready(function($) {
$("body").click(function(e) {
var a = new Array("富强", "民主", "文明", "和谐", "自由", "平等", "公正" ,"法治", "爱国", "敬业", "诚信", "友善");
var $i = $("<span />").text(a[a_idx]);
a_idx = (a_idx + 1) % a.length;
var x = e.pageX,
y = e.pageY;
$i.css({
"z-index": 999999999999999999999999999999999999999999999999999999999999999999999,
"top": y - 20,
"left": x,
"position": "absolute",
"font-weight": "bold",
"color": "#ff6651"
});
$("body").append($i);
$i.animate({
"top": y - 180,
"opacity": 0
},
1500,
function() {
$i.remove();
});
});
});

参考

jquery”富强、民主、文明、和谐”特效代码
Hexo NexT主题添加点击爱心效果

原理

把库克隆到本地后,创建新分支,删除原master分支后,将临时分支更名
在库目录下执行以下代码

代码

1
2
3
4
5
6
git checkout --orphan tmp
git add -A
git commit -m "clean project"
git branch -D master
git branch -m master
git push -f origin master

参考

Gitlab删除历史commit清理空间

问题


在函数中F5失败,提示堆栈指针为正数,故需要修复堆栈平衡

解决方案

去设置中打开堆栈指针(Stack pointer)显示(也就是sp)

按G定位到4012B9,发现return时的指针是-10(hex)

找到最接近的call(401295),在该行修改sp值(按alt+K或者右键修改),设置偏移值为-0x10
(目的就是使return前的sp为0)

修复后:

然后就可以愉快地F5了

参考

IDA sp-analysis failed 不能F5的 解决方案之(二)
IDA sp-analysis failed 不能F5的 解决方案之(一)

Web - Code Check(湖湘杯)

源码分析

从get请求id参数中解密出正确id,然后执行sql查询语句,将查询结果返回到数组
decode函数:
将传入的data(也就是get方法的id参数)解2次base64后
使用aes-128位 CBC模式 填充为ZeroPadding 解密,key为ydhaqPQnexoaDuW3 iv为2018201920202021
检测解密后的数据后7位是否为hxb2018
如果不是则输出<script>window.location.href="/index.php";</script>
也就是js跳转到/index.php
否则,返回去除首尾空格以及末尾hxb2018后的明文数据

阅读全文 »

签到题

  1. 直接查看源代码
  2. 注意到url命名不正常 (居然是indxe.htm)
    使用Fiddler请求index.htm文件
    阅读全文 »

由于不小心把.gitignore设置成了以文本形式打开,导致在Explorer中显示为空文件名的文本文件(非常不顺眼)
(Windows的默认设置中无法删除打开方式)
而且有的文件手动设置了默认打开方式后也不管用
于是通过修改注册表实现

参考

HKEY_LOCAL_MACHINE\Software\Classes:该注册表项包括适用所有用户的默认文件关联设置
HKEY_CURRENT_USER\Software\Classes:该注册表项包含只适用当前用户的文件关联设置(将覆盖HKEY_LOCAL_MACHINE项中的设置)
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts:该注册表项包含用户自定义的打开方式(勾选始终使用该方式打开)

操作

Win+r, regedit定位到上述路径,把.gitignore项删除即可
如果需要修复其他拓展名的打开方式,可删除该项,导入.reg文件(修改为需要的拓展名)

1
2
3
4
5
6
7
8
9
10
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.md]

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.md\OpenWithList]
"a"="NOTEPAD.EXE"
"MRUList"="a"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.md\OpenWithProgids]
"txtfile"=hex(0):

最后重启资源管理器即可

附上Windows Explorer中直接创建无文件名文件的方法

显示文件拓展名后,右键新建文件

1
.gitignore.

保存即可(由于没有拓展名,会自动删除末尾的点)

参考:windows注册表文件关联机制