From 6ab0bae5872978b9f6c4aed27589fc4af043e402 Mon Sep 17 00:00:00 2001 From: Ylian Saint-Hilaire Date: Wed, 3 Mar 2021 11:03:04 -0800 Subject: [PATCH] Updated MeshCentral Router. --- agents/MeshCentralRouter.exe | Bin 3179328 -> 3179328 bytes agents/modules_meshcore/amt-mei.js | 28 ++++++++++++++++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/agents/MeshCentralRouter.exe b/agents/MeshCentralRouter.exe index 035015f74230bedc05698c95e114b5fa17de4071..4fba78ebf08e2387472a8694c1166c6e82f6abfe 100644 GIT binary patch delta 1369 zcmZ9{eKga190%~t3~QFB*_x*-tclEz(Tt+og9u$uMH)9x>&a1h>K<-pro~;6l<7fv zis~S?SUQ=dj3^~+*yQdCJ0VZ2RIcu~f9@ZB&Ut;_=X}oRe9rlZIqh&Ua4{G0T;Wy7 z4M13oL5=bpToE6SE4qb8BTZJ}7*tUdp2)t3KX(rg7v95bEZ)*|v4{&0mI*Z;%k-)9 zX`9hI4(}@HvOD70E~`J6P=Ek50VJRWXahO`3RnZ60bKwCtOfJ{eZT-P1dISIU<}{@ zJg^QR049JbU$79e?0!=XOplAq&+K$COJ3aRDwCnlL!*M|#0P@kTANc;UqZP%s?h z3?svwU^JK;=+45q2#EL7j8{a5Jbqe})1hKLNZ_{ET+Im1x1HLCE1wFTJPl>N_hG~n zFSxUo3aAyV3X#NAZ+t(EB>glUlEi5emM1`$4Iry49bJ7hVit8KX}RfD)`kqb&y>`6 zFWxlzKj|-_mki>ksQnv`mYTdw;#552U>kVxnNS`xrm@SiQZnqnWL}3s-qi~2mJ}-4 zY~_?f7Jck^*WRIq1D0ikCo!nj>L7l$d!WMpgG@(sX;bZq5%EjmD{dJwWwj+?3uof; zm{sQ6knLpS*O{4A*UMMSX^b1PTE-e>pJV4thfA{DW7tuJ!Kd{N=!|Sl^Ou*lg&-_X zU1vr`6W;QI*}n;z+Yq#nJ)FJr}izhZe&tw&-Tdw+FO)rji4k4HSVF; zCa0H3U7OAvF*D97NQOV&?)l2ZF(fC^MH0&losL z)5%#Aay?{wQY$QZfo2q|I9TLD%AwxZv!5l`PVTglkV`(~)|$13@8XhYR|O6?{uv0Q zLzw>$z~M-kX0`^*Y+r^r>On%r(JQ3>&NR!k*#!3Fw`}{e+hN>d4kh-GnRCE-rlWy_ zVzl7Upe*&OtMy{e?0v>PnTs3LmC9KWt^TXhs!*d4*LuIL!#WYu z|00`P>9u%rlC*Yyw0pDX zL}S&sCBHC{e4e1^YaduuzB4%+G$cF-z zY#r+0ND}q%-{k|yyEZ-S>(`z#(?b~DHLj@9ZmBGb%MYgb`ZfBe5Bdbt%An>y9K8cV z43xYu^GMdmQm@d6XpvxPH+HXIZ^`xL4&0T`}hawi(uhhtOt zHUX=GA-C?1tHp|(6-4*Vyg5Bz;iOGVyqXbXv|dE~*7SBE`p%t&F9<@R?c#nUdpM-= J{nla_>^}ysbA8QE&gXp2`ACzS;Zh(gRRcM{ z<68PY4Q(vFYA}hIolG*zP9SM!SCfbW5h+DPf=fgs#Ht9%Fm&Zh3MGh!K3!z9^N`KG zyPlP*YQ*vtlk$}CObq}Dpa4xk3(yA800vkCtOc;ZIzR`|1#rN6Ko7tJ1b_&TfDHf{ z*a+wY2EZo35HJFa0TW;|U<#N4=70t86R-ua1So(NU=2_u;h8k{)^A@6+hsJeZfk(> z1T#I*wZnd>-LKEn_RgTuZh69!7CG{%!8S^m(^a4a20gE9VZ zJD7uHIsg*>FcW68A*UbK2HDU}9q7*EHWYK{7`yUtl|<|f94r^g;%HL5#p_ulHS&Rrk>Ca9ejKf7;SpveM>DB{U97JmHoM9?w1^)|83 z=b+X4d;Zp#giqU4^35(=fA4#{_xR=CdgpPAR!{_=T=YUZTKt9CfmD&nxAENqOz%ma zzWuZ`s{Y}I2EfTMXHF2S$@@NuF@H_$>I9a`t+Wpzt7yS zwLed3@3|VOIAOkb_vKSTsu|8B-=QO%{7|tYwck>csw0@J@_deyYpyg|m?$TPXEcVz zoQ*S`%G&%{J7x0mr1K?Xs}i=Azb4`tSvbXm=6R5<9RsopfS8(SO0q}t0v3)&(ruB@ z^QRNXTc^y99tbgCR0;?y*o8zCJ7i6HU`Rz$wpTx!dbsXX@sO&)nJ>3gIMneW?Dqq3 zI0}a3BVZKqoP2=f{|wseIcaK&iN2ESt6SFivWB^CDSZgH=RCLX$Y&lsa@sgCl;8az zUlfq!Pfzo6tZQQs?IxPVYIbI~@5q|D!tqA;l^3&dp3WR}X-mau#&Te20Se__t`e`; zdoh#3x*4Y9`;Hr1RC~H7bgJK=ZmiVJh1+gQwxOu;*;Ozq zm&TPE5?DP1Y;o`hp8mm4Wioo4;Ood3c|yI@WX>k*&sqze+rfSnc&{Ptd?aesK#FBmS}7xmW>Y4igoF!S$8NJFZDQgqktAuoR?K%m!m-H6aBt+8qbu+w7hE#D=FKO9?bI5wpnOK z=TZdS+?wEyGUtS<;_)apkz&iZ<>TeYQi}#k5^fno!%e&b86#;t1dL>^^|l)`=!T)CS69V%ipH(W*zg*j=*65 E0isQ9a{vGU diff --git a/agents/modules_meshcore/amt-mei.js b/agents/modules_meshcore/amt-mei.js index 4761e352..353bada7 100644 --- a/agents/modules_meshcore/amt-mei.js +++ b/agents/modules_meshcore/amt-mei.js @@ -419,6 +419,34 @@ function amt_heci() { }, this, callback, optional); } + this.startConfigurationHBased = function startConfigurationHBased(certHash, hostVpn, dnsSuffixList, callback) { + var optional = []; + for (var i = 4; i < arguments.length; ++i) { optional.push(arguments[i]); } + + var data = Buffer.alloc(4 + 64 + 4 + 4 + 320); + data.writeUInt32LE((certHash.length == 48) ? 3 : 2, 0); // Write certificate hash: SHA256 = 2, SHA384 = 3 + data.write(certHash, 4); // Write the hash + data.writeUInt32LE(hostVpn ? 1 : 0, 68); + data.writeUInt32LE(0, 72); // dnsSuffixList.length + // TODO: Write up to 4 DNS Suffix with null seperation. + + console.log('Sending', data.toString('hex')); + + this.sendCommand(139, data, function (header, fn, opt) { + console.log('Status', header.Status); + console.log('DataLength', header.Data.length); + console.log('Data', header.Data.toString('hex')); + /* + if (header.Status == 0 && header.Data.length == 68) { + opt.unshift({ user: trim(header.Data.slice(0, 33).toString()), pass: trim(header.Data.slice(33, 67).toString()), raw: header.Data }); + } + else { + opt.unshift(null); + } + */ + fn.apply(this, opt); + }, callback, optional); + } } module.exports = amt_heci; \ No newline at end of file