0%

Hello World

观察

浏览器打开,只有一个Hello, World!
查看源代码看到有个

1
<script src="flag.xmas.js"></script>

结果没有该文件,尝试打开flag.js,看到混淆过的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
28
29
30
31
32
33
34
var Key = "7a57a5a743894a0e";
CryptoJS.pad.Iso10126 = {
pad: function(data, blockSize) {
var blockSizeBytes = blockSize * 4;
var nPaddingBytes = blockSizeBytes - data.sigBytes % blockSizeBytes;
data.concat(CryptoJS.lib.WordArray.random(nPaddingBytes - 1)).concat(CryptoJS.lib.WordArray.create([nPaddingBytes << 24], 1))
},
unpad: function(data) {
var nPaddingBytes = data.words[(data.sigBytes - 1) >>> 2] & 0xff;
data.sigBytes -= nPaddingBytes
}
};
var aesEncrypt = function(data, keyStr, ivStr) {
var sendData = CryptoJS.enc.Utf8.parse(data);
var key = CryptoJS.enc.Utf8.parse(keyStr);
var iv = CryptoJS.enc.Utf8.parse(ivStr);
var encrypted = CryptoJS.AES.encrypt(sendData, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Iso10126
});
return CryptoJS.enc.Base64.stringify(encrypted.ciphertext)
};
var aesDecrypt = function(data, keyStr, ivStr) {
var key = CryptoJS.enc.Utf8.parse(keyStr);
var iv = CryptoJS.enc.Utf8.parse(ivStr);
var decrypted = CryptoJS.AES.decrypt(data, key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.Iso10126
});
return decrypted.toString(CryptoJS.enc.Utf8)
};
var hint = "SSNRTPIuHLUxqtJmq8mDDPtexRU7RTjNO34tLqz+Tpw=";
阅读全文 »

概述

Adobe Flash Player 从 30 版本开始,中国大陆地区用户只能使用特供版
后台存在广告服务、弹出广告窗口、捆绑流氓软件的行为。
由于有的网站只能用flash,而安装国际版flash又提示地区不符,所以需要找个办法解决。

解决方案

安装直装版(由roustar31制作)

运行程序后,会卸载原版flash再自动安装。

IE浏览器使用AX版本
Chrome系浏览器及QQ使用PPAPI版本
Firefox或其他使用NPAPI版本

PS:若安装后仍无效,请使用压缩包中的文件替换系统及浏览器的pepflashplayer.dll(具体路径自行搜索)

下载地址

直装版

https://lanzous.com/b00e2zxej
密码:gz09

补丁

https://lanzous.com/b00dx336j
密码:f0ph

来源

Adobe Flash Player AX/NP/PP 特别版

问题

使用pygame开发游戏(完成作业时),VS Code总是在pygame处报E1101错误,刚开始设置的python.linting.mypyArgs毫无用处

1
"python.linting.mypyArgs": ["--disable=E1101",]

解决

继续谷歌一下,找到vs code中pylint报错E1101问题的解决
于是设置python.linting.pylintArgs参数,值为”–generate-members”,总算解决了这个问题

修改settings.json代码

1
"python.linting.pylintArgs": ["--generate-members",],

原因

函数或值是动态被设置的,而pylint的推断系统里没有该值,因此触发了E1101报错。可以通过配置 generate-members 参数来避免此类报错。

思路

获取到cookie后转化为dictionary(使用requests.utils.dict_from_cookiejar方法转化CookieJar为dictionary),再以字符串形式保存到文件
读取时把字符串转换为字典(json.load方法),再设置为requests请求的cookies

注意

这里有个坑,保存到文件时是单引号,使用json读取时需要双引号,所以需要replace一下

代码

保存

1
2
3
4
5
6
#转换为dictionary
load_cookies = requests.utils.dict_from_cookiejar(res.cookies)
#转换为字符串保存到文件
fo = open("cookie", "w")
fo.write(str(load_cookies))
fo.close()

读取

1
2
3
4
##读取文件内容到text变量后
#转换为dictionary
dic = json.loads(text.replace("'","\""))
res = requests.post(url,cookies=dic)

参考

Python——Cookie保存到本地

概述

服务器恢复快照以后,一大堆东西都要重新安装。
安装PyCrypto时发生错误,提示
Python.h: No such file or directory
于是 首先执行 yum upgrade,升级下试试
然而还是编译错误,所以肯定是没有安装依赖

解决方案

查了一下是没安装开发环境(然而之前好像是可以直接编译的。。)
python-devel已安装,然而搜不到python3-devel
于是搜索python3,找到了python36u-devel
yum install python36u-devel
安装后编译成功

参考

Centos7 “fatal error: Python.h: No such file or directory “commmand ‘gcc’ failed with exit status 1

摘要

由于截图后手动上传到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(对象存储)搭建个人图床