其他分享
首页 > 其他分享> > Mics学习笔记#1

Mics学习笔记#1

作者:互联网

Mics学习笔记#1

记录今日学习成果

分离pdf图片

​ 在linux系统可以用命令 pdftotext file.pdf outfile.txt 从而得到一个txt格式的文件,里面内容是PDF的所有文字。

Rot_13 加密

​ 从头开始学Misc,刷题就遇到了Rot_13 加密,正好练习一下写py脚本,于是就写了个python的Rot13加解密的脚本:

#Rot_13 decrypto

a = "yrghfyrneapgs" #要加密或解密的数据
b = ""

for i in a:
    k = ord(i)
    if 65<= k <= 77 :
        k += 13
    elif 78<= k <= 90 :
        k -= 13
    elif 97<= k <=109 :
        k += 13
    elif 110<= k <=122 :
        k -= 13
    b += chr(k)
print(b)

#output:
#>>>letuslearnctf

python注意点

1 在 Python 2.2 :

​ 要引用: from __future__ import division
​ " / “就表示 浮点数除法,返回浮点结果;” // "表示整数除法。

2 Python 3以后 :
" / “就表示 浮点数除法,返回浮点结果;” // "表示整数除法。

linux挂载ext3系统光盘

通过指令 mount /filename /mnt/ 来挂载

然后就可以 ll /mnt/来查看文件

同时学到了可以用 find "flag" /mnt/ | grep "flag" 来找含有关键词的文件和列出有关键词文件,以及cat 读取。

RAR学习

1,签名

RAR 5.0签名由8个字节组成:
0x52 0x61 0x72 0x21 0x1A 0x07 0x01 0x00
RAR 4.x 签名由7字节组成:
0x52 0x61 0x72 0x21 0x1A 0x07 0x00

2,

第一块为标记块(MARK_HEAD),其数据为:

52 61 72 21 1A 07 00 // 左边是低字节 ,右边是高字节,这是RAR4.x的签名
//签名即标志着该文件是由支持rar4.x版本的软件压缩而成,如果使用支持5.0版本的压缩软件压缩,其签名可能会不同

52 61 为头部校验和(HEAD_CRC),占两个字节,每一块均从HEAD_CRC开始,所有的RAR都以 52 61 开头

72 为 块类型(HEAD_TYPE) 占一个字节,所有文件都如此

21 1A 为 块标记(HEAD_FLAGS) 占两个字节

07 00表示块大小 ,即 52 61 72 21 1A 07 00 (标记块)共占7个字节

3,
头类型是0x73表示压缩文件头块
位标记为0x0000 没有位被置为1 ,如果块头被加密,则位标记应该为:0x8000
文件头大小为0x0D00,由上图可以看出这个压缩文件头块占13个字节

4,RAR文件格式及其字段含义:
标记块:HEAD_TYPE=0x72
压缩文件头:HEAD_TYPE=0x73
文件头:HEAD_TYPE=0x74
旧风格的注释头:HEAD_TYPE=0x75
旧风格的用户身份信息:HEAD_TYPE=0x76
旧风格的子块:HEAD_TYPE=0x77
旧风格的恢复记录:HEAD_TYPE=0X78
旧风格的用户身份信息:HEAD_TYPE=0X79
子块:HEAD_TYPE=0x7A
最后的结束块:HEAD_TYPE=0x7B

参考https://www.rarlab.com/technote.htm#filehead
正好最近开始恶补Misc,所以有这笔记,学习rar也是因为攻防世界SimpleRAR的这道题

摘录链接:https://blog.csdn.net/Claming_D/article/details/105899397

标签:文件,HEAD,字节,标记,Mics,笔记,学习,RAR,TYPE
来源: https://blog.csdn.net/weixin_62586193/article/details/123122875