账号获取

1、优先github、gitee等代码托管平台。
2、社工获取,重点关注咸鱼、某宝(图书馆账号)、qq群(代课、代体测、兼职群等)、微信群、贴吧等等。
3、TG社工机器人

实例

1、打开github,搜寻幸运儿,成功发现某高校的账号信息。
搜索关键字: *.edu.cn password,类型选择python,排序方式选择按更新时间进行排序。
image.png
2、登录webvpn
image.png
3、通过webvpn跳转访问其他web系统,可以看到url如下
https://webproxy.xxx.edu.cn/https/77726476706e69737468656265737421f3f652d223387d1e7b0c9ce29b5b/authserver/login?service=https%3A%2F%2Fjffp.xxx.edu.cn%2F
image.png
4、分析与解密url
我们把url进行拆解分析
第一部分:webvpn的域名
https://webproxy.xxx.edu.cn
第二部分:比较明显,应该是跳转使用的协议
/https
第三部分:加密信息,暂时不清楚是啥
/77726476706e69737468656265737421f3f652d223387d1e7b0c9ce29b5b
第四部分:跳转目标系统的路径
/authserver/login?service=https%3A%2F%2Fjffp.xxx.edu.cn%2F

第三部分的加解密分析:
通过查看webvpn登录界面的前端代码,发现加密方式为aes-js,相对应的解密函数也在其中。
image.png
直接打开浏览器控制台,使用解密函数直接解密

console.log(decrypt("77726476706e69737468656265737421f3f652d223387d1e7b0c9ce29b5b",wrdvpnKey));

image.png

5、利用webvpn访问内网系统
假设内网应用IP段为192.168.1.1/24,使用aes-js直接对连接进行加密处理
url拼接规则如下:
webvpn域名 + /协议-端口 + /加密文本 + /路径
例如访问内网192.168.1.1的8080端口,使用http协议,拼接结果如下:
https://webproxy.xxx.edu.cn/http-8080/77726476706e69737468656265737421a1ae13d27666301e2f46d8
拼接完成后即可访问内网资产,可以针对诸如7001、8080等高危端口进行渗透,以获取内网权限。

for(var i = 1;i <=255;i++){
    var ip = "192.168.1."
    var target = ip + i
    console.log(encrypt(target,wrdvpnKey,wrdvpnIV))
}

image.png
6、完整的加密流程
加密方式采用AES-CFB 128位
填充方式PKCS5Padding
解密key和偏移量默认为:wrdvpnisthebest!
image.png
加密结果切片及拼接方式:加密结果取加密字符串长度的2倍,后续截断,例如加密字符串长度为6,加密结果选取前12位,后续部分丢弃;最后使用偏移量得hex值和加密截取部分进行拼接,得到最终加密文本。
偏移量hex值默认为:77726476706e69737468656265737421

Q.E.D.