在使用CTFd上传题目附件时候发现题目文件只能使用英文,中文名文件上传后会直接只剩拓展名。 原因在于CTFd使用了flask原生的filename = secure_filename(filename),导致中文名被抹去。
于是修复如下:
/CTFd/utils/init.py 增加如下:
1 |
|
/CTFd/api/v1/challenges.py 修改如下:
1 |
|
/CTFd/utils/uploads/uploaders.py 修改如下:
1 |
|
1 |
|
1 |
|
完活!
另外为了让前端好看点,让文件按钮占满全宽:
/CTFd/themes/主题名称/templates/challenge.html
将col-md-4 col-sm-4的class改为 col-md-12 col-sm-12
完活下机。
PS:我们Scr1w战队二次开发的CTFd整合版地址:https://github.com/dlut-sss/CTFD-Public