从客户端到服务器的流量被标记为红色,而从服务器到客户端的流量被标记为蓝色。
TCP扫描确认端口开放的标志就是返回SYN+ACK
的包,所以只需要过滤SYN、ACK
状态都为1
的包即可
html
tcp.flags.syn==1 and tcp.flags.ack==1
选择HTTP流是因为经过gzip解码的,如果是追踪TCP流还需要解码gzip
就比如在Cyberchef解密wireshark中AES加密后的流量时,要复制原始数据,再在Cyberchef中选择From Hex的Auto,后AES Decrypto,最后还要Gunzip
查看Nginx中的访问日志,tail /var/log/nginx/access.log
计算md5: php -r "var_dump(md5('81.70.166.3'));"
echo -n 'shirodeserialization'|md5sum|cut -d '' -f1
last
查看登录记录
DiskGenius
打开.vmdk
发现是BitLocker加密的磁盘,但是给了内存镜像,直接尝试EFDD
提取恢复密钥,先使用ArsenalImageMounter
将BitLocker加密磁盘挂载起来
thekeyis
经过rot47后E96<6J:D
pslist
之前一眼便签,西湖论剑2021中国杭州网络安全技能大赛部分Writeup_西湖论剑题目附件-CSDN博客肯定有东西,直接寻找.snt
结尾的文件,导出StikyNot.exe
:Windows便签程序
用`
R-Studio翻,最后在
C:/Users/admin/Music下找到个
i4ak3y`
PS:
R-Studio
是个神器,好好利用
根据请求正确过滤返回特征根据返回特征,直接尝试检索:tcp contains "{\"errCode\":200}"
直接过滤关键字:tcp contains "jdbc" and tcp contains "username" and tcp contains "password"
直接检索jdbc
的payload:tcp contains "jdbc:"
flask框架的session是存储在客户端的,那么就需要解决session是否会被恶意纂改的问题,而flask通过一个secret_key,也就是密钥对数据进行签名来防止session被纂改。
如果知道key可以使用下面这条命令进行session伪造
python flask_session_cookie_manager3.py encode -s 'LitCTF' -t '{"name":"admin"}'
下面是如果要解密session
flask_session_cookie_manager3.py decode -s "ssti_flask_hsfvaldb" -c ".eJwdx1EKwyAMANCrDEGiPz1Ar1KGZBi7gBpplH2Idy_d-3vTDKWrYiGzm2k5vZRUWeo2WsRObkLKeMKeuekoB4RwZvlg1hDg_S917lSeOhAFf0CTRvXp7ytYGPx2EUbnl7drWqqRk11m3cGmKw0.YpIQcw.J5vs8t8bAr0xDIxF6EqUAH2kkLE"
{'username': "{%if session.update({'flag':lipsum['globals']['getite']('os')['popen']('whoami').read()})%}{%endif%}"}
参考的writeup:2023第二届陇剑杯网络安全大赛 预选赛Writeup_陇剑杯writeup_末 初的博客-CSDN博客