原创 NOVASEC
在学习本文技术或工具使用前,请您务必审慎阅读、充分理解各条款内容。
1、本团队分享的任何类型技术、工具文章等文章仅面向合法授权的企业安全建设行为与个人学习行为,严禁任何组织或个人使用本团队技术或工具进行非法活动。
2、在使用本文相关工具及技术进行测试时,您应确保该行为符合当地的法律法规,并且已经取得了足够的授权。如您仅需要测试技术或工具的可行性,建议请自行搭建靶机环境,请勿对非授权目标进行扫描。
3、如您在使用本工具的过程中存在任何非法行为,您需自行承担相应后果,我们将不承担任何法律及连带责任。
4、本团队目前未发起任何对外公开培训项目和其他对外收费项目,严禁任何组织或个人使用本团队名义进行非法盈利。
5、本团队所有分享工具及技术文章,严禁不经过授权的公开分享。
如果发现上述禁止行为,我们将保留追究您法律责任的权利,并由您自身承担由禁止行为造成的任何后果。
https://github.com/lovechoudoufu/cobaltstrike4.5_cdf
原文描述节选:
使用windows/foreign/reverse_http(s)进行spawn时候报错
该版本在ScListener中增加了相关Custom的getScalar操作,
但未考虑到foreign的情况,
导致var1.customDLL、customFileName为空报错
暂时的修复方式是通过判断payload为foreign时候,
直接返回shellcode,修复后可正常使用。
修改了checksum8的值,会导致该请求不被MSF6接受。
stagers/ForeignHTTPStagerX86.java
stagers/ForeignHTTPSStagerX86.java
//common/CommonUtils.java 修改
public static String MSFURI(int var0, long sum) {
String[] var1 = toArray("a, b, c, d, e, f, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, 1, 2, 3, 4, 5, 6, 7, 8, 9, 9");
StringBuffer var2;
do {
var2 = new StringBuffer(var0 + 1);
var2.append("/");
for(int var3 = 0; var3 < var0; ++var3) {
var2.append(pick(var1));
}
} while(checksum8(var2.toString()) != sum);
return var2.toString();
}
//修改stagers/ForeignHTTPStagerX86.java
public String getURI() { return CommonUtils.MSFURI(32,92L); }
//修改stagers/ForeignHTTPSStagerX86.java
public String getURI() { return CommonUtils.MSFURI(32,92L); }
END
如您有任何投稿、问题、建议、需求、合作、请后台留言NOVASEC公众号!
或添加NOVASEC-余生 以便于及时回复。
感谢大哥们的对NOVASEC的支持点赞和关注
加入我们与萌新一起成长吧!
本团队任何技术及文件仅用于学习分享,请勿用于任何违法活动,感谢大家的支持!!