From fe9ffb98097e3fc1e68e10c0116b84a7b0f25418 Mon Sep 17 00:00:00 2001 From: v-shukore Date: Mon, 20 Jan 2025 16:34:03 +0530 Subject: [PATCH 1/4] symantecVIP packaged --- .../Data/Solution_SymantecVIP.json | 2 +- Solutions/Symantec VIP/Package/3.0.2.zip | Bin 0 -> 8629 bytes .../Symantec VIP/Package/mainTemplate.json | 68 +++++++++--------- Solutions/Symantec VIP/ReleaseNotes.md | 1 + 4 files changed, 34 insertions(+), 37 deletions(-) create mode 100644 Solutions/Symantec VIP/Package/3.0.2.zip diff --git a/Solutions/Symantec VIP/Data/Solution_SymantecVIP.json b/Solutions/Symantec VIP/Data/Solution_SymantecVIP.json index 6e6adf912a1..37532b78383 100644 --- a/Solutions/Symantec VIP/Data/Solution_SymantecVIP.json +++ b/Solutions/Symantec VIP/Data/Solution_SymantecVIP.json @@ -17,7 +17,7 @@ "azuresentinel.azure-sentinel-solution-syslog" ], "BasePath": "C:\\GitHub\\Azure-Sentinel\\Solutions\\Symantec VIP", - "Version": "3.0.1", + "Version": "3.0.2", "Metadata": "SolutionMetadata.json", "TemplateSpec": true } \ No newline at end of file diff --git a/Solutions/Symantec VIP/Package/3.0.2.zip b/Solutions/Symantec VIP/Package/3.0.2.zip new file mode 100644 index 0000000000000000000000000000000000000000..eac6bd14df766d23839a25aa5bd7b6281d39a418 GIT binary patch literal 8629 zcmZ{~Q*b2=(5@TX_QbYr&BPO~*tTu2*qmr$+gh=0+t$SU`}fT`XP?^L7hT=e)z?qg z`zp&pLScb{fx&?-hj40NeUn*;!hwOc5rKi>{x>yoHZyWHQ@4^dGqXSQ~6 zu-^h)*b}y6e;MT8h?X(A25~xX;xNUS<5uLBfM3?2`y~HpKv(8S34fY&OgofSnFsSr z6V}fAyR)Y|m^d7l%zs)ay6ZVQ;PN`1`Z!|n62L&FL&3=GWjxrn25_X1xM|Xf359Q-w4-`eV%K9U8aUxW=Ff5nPHl3kr;V9Su!JWA z4Fi6E<>(rzn3HEhFw*h~X)>6Vm?J7z!|hQ0Lz?t~GRSn5r`7#<49=lC(2zF-ELc(`L=YpGXeXu-qy8OX{PD zclY)p@;#(4K&q2%`=y=I^)scNc=0%`WZNNcNqkXSUwv}&v4Z`PXGF$9Ur&)?JI*aZ zTH<$TBK1mrAc$^9+=IJ!Vv*WpJ_EE8xI=~$q(@c1yvlo?hGz$9~-I0XgdtXejo zyq8#D=1eAuXX|tM z9)1V$wktYH%n%w5PBn^(uR#xLlV8S?{Co?%h4>E{bU{0`_6Groj z!UUD^q8o7&OhseAUp2A`2=jmG1q!~;p=seJgeM*S4W7*3CDjlts%OHqsGDZ z`Yn*482O^{Fuqd^yZhqx3mg~zANk!rVSjlesT~4&SlTFcSY}7V2Gmzdsc+JFYWTVY zE_~4()e5b6_%Fz&AFNp1k%*5lq_!S? zK^t2mG(Q?7QxiSFaNj86+m7A|7o*KWqs5r6YuO96YBOUJNo}bZlhc@*e_i|vtgC4( z4=OCqt;J||u%fg!*mA#7>2^PrtB(E<4Zs3#_PWz2k6=GP*T5AndRsY9&$_Fr=PB6p z_=g0LcOMvjSlbxJGGOSOA|9J&QqY3s$enhMA~0?KwO*R?tA+|N=R)O8he@EcYTPLi z6OGwQi&_VN)F1TT0Se?p%MhzYQpwQnQrRQt(L{fF9Y>b)PKdNMI}k%0>}MrKj5sLT zvjc|Vh!m)<*N{eG$I5i4v(#)PMv+YnE0P~l2*UU~izmbk`>_y`WQ*=R=qgs+UGvdj z&mEq|Cl^`x(QY1X-AU+g3eE?WS~8!CSZE(v;1Oys!W%?}j&>H2Db-wm%nPFEmUw>zTN~_{-3RjXRSLG1Y_Ibu>}s8(uAd zG8S|Wu=9J|4JTcNmYs-=aJp0~6_rRLZZCL`a=6GZkFol31%-as@@D=j_JCelPs*BN zH?Ykjvi+E>LouDL8xmMnc}D6#Aua9>1o|OwGpD>Bureu?Ot9#B4HWop`d2gQW;*0% zFl{J?NwHE%o&7#xVAS-Q;p1aj%FWYSm90;cKmb}Ou>?;x6Z*r8Uga>-1fDM<5BuAf z^X2AY{X!bEzF4J$cd`ABMLamk+oqq*Zf;B*vdE!F@~*IrjHcz82%F(0hY!WgcAX94 z&mV z>F?@8pEEPnO!=My&dWBjJIEv>T?-s4n5}5>;^urG;-0xqET&eL-a`XjJKb;|D>VhY z@OB7hOsm#nQ}4jFgV{eB0tW|%{n?c|KCSVDVp;udow%H>vovSWxuCBJ{n_fh^ygsd z#yklY%UJzIet zwUJTPuigM3;=g+W_(HvEo@;W{vBfu=kcR@_{r}Dg#gV^NxkDEuLC+kCKhdYeH$x_q zo5Q5Hz5zP4TS4jEzd&e91UGg|X3|w>A&v9?I4&|&+n5l}u{pog!L!ebS)6xSuV;;x zVwWyU7t&WAS?*u&FyB6;OpXk0Phl6#ul!H+we-!}Zbsq0Ps04(@_D~rVZu7!?i=C{ zqS8o^B`sW)9U0}IUfzWM=u5q}=m*mhN49b8_y48tH=1_-xC0;I-L7^Es)(a`SBBa# z)m`mW+1Fd-TmEiTbNS5kto7)A{cUXmYv2Wt$tz@dUeRA2k>wFwTB6yE?ZnwBlWV3I z|DeOp$jV;L%+AsFKlJ$DxN)WD_gC7fj^i(;>9! z3ta${ySQ3tK8tdUaa+d#m#&)*`7}cTknni=&S@+}lQZ7s={MWzQT$fK@$(IJBQUOvBv$zhcxy|KU<(#JCtaIcO39{r$`E0e=K+=ZkT#ZXB8iDxv2 z`v)`3$ult$l(UJI9nJQ_`?vrVnIy?A&kTwrGJrgRcNv|LsnyZCD6+Jara*`V|Dmnw zf2vHGNF!$KEMy`pqDanyS6Py%$>KR3?8F|VE1=}Q2CeXUXmMWJwQV)H&l*eg%!sf6 zu&6H8=3B5*e`B&5QaqfZRH{xl5}(g#*JJ;MiNSizo=!=YImb)QnWg>n9;f36&Ed*P z1Nwz0MoEv2nEFL;#uH?$E={O)?=#$M7&=QNrnKJQUrF#3z4~Eu8=lg{=5*WvRGOGG znP@E3%)l-=%X@N!(yo6GkV)#hMZmoHeITCYsbs2Y;~f*~;rxIb!aNMJ`?|ww2BNfV zsArPaSaeo)h89i~{x4_*lxHP2#4%x)Tb<5qIfc^d`wbf#3*fu{>3z>hO4aV$_NAsmLsDg!<6Ged;tB~DP3mIo~i<0Kw`}M5-GBwpNm>sV`f=*{-04Im3 zjD2bDPvslh$nHDJs1^0Qwk;}x-X-_;;S@rZiJ`j~K3@2in*NS$Gx{a{i!K^p=lTUZBq#y{4=ZN0Zk5= zV|erQHvkPs*oaE)Sy_}xJ6dm?IFB3q@KGSuBNIbRD6`8}wJ?fa=SB}f^D8d7^sQD* z{$CZHTut=`YB)v$*STmTwbZ8cYFVs(Km2(b;-B-cg^A8gUjpb{_F5US=Y2R z{-$dEBOjM8YG~lP4C8L*N_J*oE18QO;?>bi#1$(BVgF>Xp1udCD zU1g1pjZ!?VGRu7=Ys<$iohEaLyY40tc6HUc#Jk>V44{w=pkwlLHt=>AG0L$~pOFj{ z!omWIeQQz zrXlwa;nr6*R%lt(X^%|puEn*&mN&@*O zE@b^?QC3y8J?0>F21uxzUc1%|RKo|d;}GOO*Jl7$ozw4;-u?=Q6_m}@o ziyQS}tVpYgH=6sxGkc2vzQBx+<=L=EN!v-!Q_GqWkd)>Mr; zkhZvDWaALo#vs9dQ74R|vt={^*&Ii9frU^g3tG{WP2-2^{RQR!u@z9g${*Z;UyuX% zIpyL7z0uN23z=?X(^PL{*U@5grN1h$3$(LGJ{`V(uJP-K=d^|vn32ozRDBMIF&R$w z<2UwCQ@lr7D^~a$Kbw1+kd1)(3E{PM?I3)5a8kq=Fo}_ps+EGBL1#@c@}+izK*??T z>HKD|&{0iLg|=Q(S>FywZfs{O8}q8u(;V5xUvy$!U9T=GMOF*j&F|G2c{5z7p~`GF zAKhs9VY_^Eb$J_X$2UHbmWOs7H2rD(6MhdA)KQEl+-cex`0&}0>mr}wim(-Uqd|)9^AGI9o*+@1Nt#aj;7nLsC-?3lk*iY z+7(NG+mEng_Ao6~%T!{#91DHpk406UPya?R>9K8y6fg`;9N%n_==gne{Ei%S&-M}; z*N{ZRNznLrR3q(GF!{uSF%adgaLV=X68)j+rlH+hy}-d9jcy4aHJVR-5auL{dHNb3 zgFNI9+6-_X<(%MH=m|3;h-2$~&%)Gld{4n#)XbrOZPL4A%J13kR6+|2uKduYw?Y&% z+eBT0Ue2=5{VzZJf3}|z@ses9{xW7IHVw!_ieSYq#PScD8re%umqDzI6mNiGSp`Te zu-*rw(C1|6Wz;giCeZC}^FrJ(onU^DLj7j+ma2tLbYc7I>rl%blsi<51RPc+(4>Qu zcPuUf&F6rst{_h~eZNpkq}V|96zmU;XEyR%g!WTw{89jlcc{3}VTu!f!H?+a7>Z#C zx|CuBXHfLft1-mZ{~TQrdMJ{2?RRNKNECF zU|Hz(v}fPT)G4M)nt?7``&?mH_`+_smry9feo1C65FXnKs?|I;ijdV5@2#302#6n8 zdlE|ZQ}O!(v1%%9vyR6~b^n_Yy@f<2clkSo%he+do#7=v{yjdut+m|68)!G>nx^Zq zO+-ZU>FNvC2JFW{>};={An-=fBOl}puj=yG95b>Cp@<~C=QI$%5~hg*Ma3b(Rpu+8 zAmq<>r>{93woA!C1;>|g&WRE^63koO22;ne>iR}{9#xfbD(`#rlpdgjqAo(4h>m`e zNt(62#Es<5!4N(k)ZdV4<=myhjcIt3CJ|;@i$#H<`0RF&Ce^3Z`Y^mRyuL$yu|&+B zA4%1mu;2}fcE0Ec_8cGiHd?k^<4p9fuEEf{?rKe6ANQ>jU0!N+7BQ`?J8cSsmFTz@ zeec4Q(K46Jfcr596+-MC%GuHAzkl@6s*un8`0B_(CjoXT3HHhGva=PiwRYd;y)|`c zkrgV=zmf#}`F-&j^t5BKQvpHzv2)jI^Sv8(#f$;L8}?luSPy@>UTX-ZcJRvk!L_UI z%CMVA{-*Y|(t(7PIP7if@vhoVqz9ZNyf#PqneP!A@umi~nRq+d*r@e(9^YiTNX+sVbUlnV zogU|zqKD(x;?J7>iqY1fMwwMi4tDUA_#xK6|FO<%EFYJ;WrltkXG|aU3-vDWBLoGg)<16HxYGOF_Lz+ zx{;n5=O#*d#>vjXP4}aV9kWXv8B2mWt=cP|ebe$1&^2kO;meuj#Sr0UZbo^N^!fGq zg|7;noLoG4EZm%yc(*P=wiW(-{SocHM?AQke+f$)@jZK{;0J!;iXo$y+g|fk z3ICb7>LUH}yDkM4YN)~^rMzB;{pO2#po1z0a(fSP6FhG(HMP0Jg*q_Vhx2-RX$|0> z;%fQCYlKWJjmUOaNElM~C1vT*MV=Ql>4Z-&yLno1qm(p}(PUaxnT(|PnrDH+#L`VYnWM2lc~j@W`ad##&yoKE%IZXQd?BZ3HRM7TebU8X?vpHKGi%glF#R+%egs|7)pR4 z3eEagVNDu+@W+Ut_~r?f+n2oa)n(&$)ebjVkh51aK{T;2O)ql7=KhbZF2BG6+e|#gbZsl_GJ#-b>{m|%1iM!g;0`7!tjGN za0kKRd$OB22ob?#;EnB)!#7=F60ZZWNK=naqD;R7#_FiV({}lk7H-iFl5u=&Dw@fx zMaDY|LiVFk9?z!*Zgt=quvC>py$-)_Flrnz8!Cn*bcFkck=1?K}m!|JSz$8 z;)${_O@I2y0~ z?sJNTc8_H&v1+OvX#3>X`ejsp#vAUvbV7$@?fzmG97t+f?%K?P$DKg>8M3~pTPYCa zZ(ZTMlAakmudB3VCH!GQ`sDa%J&rRjpJ~2%Qkc-2a+MZh`(KlVv!5UdDv8%LJUTNZ zkvYpHH14xWgr{1uPejebMTu`urwQf28*HFYWp0Nv-=w;jq33MapE6}9ctU&F>^$WXB>jEG>f-if^^gH5?a!4pw`U%;nqm5oSB3#8cH-nT11O| zBjKn;G03gzLjKt0Dy^!Uz`{lRW&EB8GymCjYKLrIDW2@6)r2#k7nI4s+DN;{!0G~R zeopNKZLT5A!20kNl4<6EBiKFzZH~hY$pglLT(v_msXN{O$!TalfE-TQ3BjRhXuj8o zu=hb}Xs$ZpXu|rC*4apypX;VKZlGN+xZchSRsp^)HhH}e-4iE_?0py*(Jv}oHine{fes)O^9tkq`{`^N7Ze^k0cq3=&aG~NO_7kWV4SlQ@l^G zt%KT9-z5cQ(LRXMaRS8JG z(82kdp6Q|VW){U*-nOJ%qlo1`P)Nnx4Zms7k&R=_L!obGm7N(FycqX?$D>q+xi^R_ z71G9#MAV#$)i1hhoFjK96~PTb=_@mTfFT~dzQ(8s+ewpnxRA8x2*VHs@ATQy+6-vf zs3tci?ldjz&kqm5h2Hz}hUQs#E}*0rkn~#7P-J^RTd2@Xu~^a0LsvsJ*nF?Op2fQ& zAEegDs!|l%vD0ULx{q-YT+@X&}ciw@C;#O$}swsh5HX%- z$C&*gQTP)zA+9m}pjt$GUVDGQ#H^|{eNUHOKhsVgW+D?XD#eNTGJx1!?uA#3b9)&_ z*b~hnS_pF-d46<|oSN6Vd)a9z>?8I}AO4h9SL=9sez#4a=_591J(a!F@BuR|7;jCl zDbyL{qZ=5~J1a-Zx_0w(xF=+8lh!FIoSExuaUpc^7Gi=)=ocwMy5=R)4I z!LNsjQ%ChXLi<-8k6V)EwW%EzMgw6Tf5eNz`q6D>+n2Xuo|WT&_bXdbgzFcbu=O_i z)i93hcFLXEy$&rn<6PvXu}h`^$tpIC7V$m}xK#vj9Wp}(DBG~WYP33*h(IpU9&0of zih1>QLLRXeYcwV%w3AEKVOq5t4ZVHErR;Z`7yR*xkh-++nygTQP1MNq8t$^EghgUe z6)v%%D-tpNw6P@KW$ykdF*SP z$gm8AUiq~$2PCct3)Y!Z8spw3aKgWqw;;kPz}4PTpQ4A*6ys&0(V%e$(q+`9AdF6u zAVZRV1$=+t3L*{hF<_DIs6Z$IS)OBgYJM2Xr~K+v(SM|1M#x%P|WE^FEXgI4|srO zaB&;?O}!Yll?QvER@C`A{yf|qesz z(?;Kt9OsT=9W0F{%drYoa*6(A2f3lNcZOFYPpToZ7_;? zCa~})>2V-VHd!IfW)WGAq)d1xi4jTRM%(uCtd|_aZFaSQsaoSg-MW6J-q=cU@SYw| zRptB9xp1mNO(CPpJKZKqHHVktG1w!xevI@T7gpP#Kb>Pxr#H4!+x;`}66qB0pJkaG zf+qmwt+66Lb&cywAvX))w(@89gNuDqEer>XzYFNfVAe5Nr?JxS&&+plqjlc(eQjsg z#xbJ1_m~dr^=;%tLv9U_p?!fjZA188w?*|yjAqCld)dV43pBosTx{Econ6Cj_qZK` z$P%5rVtn9EI~^ulW;fB$3X}t`Bc@Nuw@@tN%?|use2_~%bCwWHHHKRXX&pkyK-N!v zN}{slNBCS2NV$5yAzGzyle08$_dF}7sV~;aR1WV-}{ZKEC&vO1@?b8NBk#M t{J-M=VwLzmkNlrv$NzJ|?LXhe|4;f*mV<`*pB0GzGW5SnNcKP7{{jXHlo|j4 literal 0 HcmV?d00001 diff --git a/Solutions/Symantec VIP/Package/mainTemplate.json b/Solutions/Symantec VIP/Package/mainTemplate.json index 15ca9633496..2faee8c016e 100644 --- a/Solutions/Symantec VIP/Package/mainTemplate.json +++ b/Solutions/Symantec VIP/Package/mainTemplate.json @@ -39,7 +39,7 @@ }, "variables": { "_solutionName": "Symantec VIP", - "_solutionVersion": "3.0.1", + "_solutionVersion": "3.0.2", "solutionId": "azuresentinel.azure-sentinel-solution-symantecvip", "_solutionId": "[variables('solutionId')]", "workbookVersion1": "1.0.0", @@ -50,18 +50,18 @@ "workspaceResourceId": "[resourceId('microsoft.OperationalInsights/Workspaces', parameters('workspace'))]", "_workbookcontentProductId1": "[concat(take(variables('_solutionId'),50),'-','wb','-', uniqueString(concat(variables('_solutionId'),'-','Workbook','-',variables('_workbookContentId1'),'-', variables('workbookVersion1'))))]", "analyticRuleObject1": { - "analyticRuleVersion1": "1.0.3", + "analyticRuleVersion1": "1.0.4", "_analyticRulecontentId1": "a9956d3a-07a9-44a6-a279-081a85020cae", "analyticRuleId1": "[resourceId('Microsoft.SecurityInsights/AlertRuleTemplates', 'a9956d3a-07a9-44a6-a279-081a85020cae')]", "analyticRuleTemplateSpecName1": "[concat(parameters('workspace'),'/Microsoft.SecurityInsights/',concat(parameters('workspace'),'-ar-',uniquestring('a9956d3a-07a9-44a6-a279-081a85020cae')))]", - "_analyticRulecontentProductId1": "[concat(take(variables('_solutionId'),50),'-','ar','-', uniqueString(concat(variables('_solutionId'),'-','AnalyticsRule','-','a9956d3a-07a9-44a6-a279-081a85020cae','-', '1.0.3')))]" + "_analyticRulecontentProductId1": "[concat(take(variables('_solutionId'),50),'-','ar','-', uniqueString(concat(variables('_solutionId'),'-','AnalyticsRule','-','a9956d3a-07a9-44a6-a279-081a85020cae','-', '1.0.4')))]" }, "analyticRuleObject2": { - "analyticRuleVersion2": "1.0.3", + "analyticRuleVersion2": "1.0.4", "_analyticRulecontentId2": "c775a46b-21b1-46d7-afa6-37e3e577a27b", "analyticRuleId2": "[resourceId('Microsoft.SecurityInsights/AlertRuleTemplates', 'c775a46b-21b1-46d7-afa6-37e3e577a27b')]", "analyticRuleTemplateSpecName2": "[concat(parameters('workspace'),'/Microsoft.SecurityInsights/',concat(parameters('workspace'),'-ar-',uniquestring('c775a46b-21b1-46d7-afa6-37e3e577a27b')))]", - "_analyticRulecontentProductId2": "[concat(take(variables('_solutionId'),50),'-','ar','-', uniqueString(concat(variables('_solutionId'),'-','AnalyticsRule','-','c775a46b-21b1-46d7-afa6-37e3e577a27b','-', '1.0.3')))]" + "_analyticRulecontentProductId2": "[concat(take(variables('_solutionId'),50),'-','ar','-', uniqueString(concat(variables('_solutionId'),'-','AnalyticsRule','-','c775a46b-21b1-46d7-afa6-37e3e577a27b','-', '1.0.4')))]" }, "parserObject1": { "_parserName1": "[concat(parameters('workspace'),'/','SymantecVIP')]", @@ -82,7 +82,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "SymantecVIP Workbook with template version 3.0.1", + "description": "SymantecVIP Workbook with template version 3.0.2", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('workbookVersion1')]", @@ -137,10 +137,6 @@ "contentId": "Syslog", "kind": "DataType" }, - { - "contentId": "SymantecVIP", - "kind": "DataConnector" - }, { "contentId": "SyslogAma", "kind": "DataConnector" @@ -173,7 +169,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "ClientDeniedAccess_AnalyticalRules Analytics Rule with template version 3.0.1", + "description": "ClientDeniedAccess_AnalyticalRules Analytics Rule with template version 3.0.2", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('analyticRuleObject1').analyticRuleVersion1]", @@ -190,7 +186,7 @@ "description": "Creates an incident in the event a Client has an excessive amounts of denied access requests.", "displayName": "ClientDeniedAccess", "enabled": false, - "query": "let threshold = 15;\nlet rejectedAccess = SymantecVIP\n| where isnotempty(RADIUSAuth)\n| where RADIUSAuth =~ \"Reject\"\n| summarize Total = count() by ClientIP, bin(TimeGenerated, 15m)\n| where Total > threshold\n| project ClientIP;\nSymantecVIP\n| where isnotempty(RADIUSAuth)\n| where RADIUSAuth =~ \"Reject\"\n| join kind=inner rejectedAccess on ClientIP\n| summarize StartTime = min(TimeGenerated), EndTime = max(TimeGenerated), count() by ClientIP, User\n| extend timestamp = StartTime, IPCustomEntity = ClientIP, AccountCustomEntity = User\n", + "query": "let threshold = 15;\nlet rejectedAccess = SymantecVIP\n| where isnotempty(RADIUSAuth)\n| where RADIUSAuth =~ \"Reject\"\n| summarize Total = count() by ClientIP, bin(TimeGenerated, 15m)\n| where Total > threshold\n| project ClientIP;\nSymantecVIP\n| where isnotempty(RADIUSAuth)\n| where RADIUSAuth =~ \"Reject\"\n| join kind=inner rejectedAccess on ClientIP\n| summarize StartTime = min(TimeGenerated), EndTime = max(TimeGenerated), count() by ClientIP, User\n", "queryFrequency": "PT1H", "queryPeriod": "PT1H", "severity": "Medium", @@ -201,10 +197,10 @@ "status": "Available", "requiredDataConnectors": [ { - "connectorId": "SyslogAma", "datatypes": [ "Syslog" - ] + ], + "connectorId": "SyslogAma" } ], "tactics": [ @@ -215,22 +211,22 @@ ], "entityMappings": [ { - "entityType": "Account", "fieldMappings": [ { - "columnName": "AccountCustomEntity", - "identifier": "FullName" + "identifier": "FullName", + "columnName": "User" } - ] + ], + "entityType": "Account" }, { - "entityType": "IP", "fieldMappings": [ { - "columnName": "IPCustomEntity", - "identifier": "Address" + "identifier": "Address", + "columnName": "ClientIP" } - ] + ], + "entityType": "IP" } ] } @@ -285,7 +281,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "ExcessiveFailedAuthenticationsfromInvalidInputs_AnalyticalRules Analytics Rule with template version 3.0.1", + "description": "ExcessiveFailedAuthenticationsfromInvalidInputs_AnalyticalRules Analytics Rule with template version 3.0.2", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('analyticRuleObject2').analyticRuleVersion2]", @@ -302,7 +298,7 @@ "description": "Creates an incident in the event that a user generates an excessive amount of failed authentications due to invalid inputs, indications of a potential brute force.", "displayName": "Excessive Failed Authentication from Invalid Inputs", "enabled": false, - "query": "let threshold = 15;\nSymantecVIP\n| where isnotempty(RADIUSAuth)\n| where RADIUSAuth =~ \"Reject\"\n| summarize Total = count() by bin(TimeGenerated, 15m), User, ClientIP\n| where Total > threshold\n| extend timestamp = TimeGenerated, IPCustomEntity = ClientIP, AccountCustomEntity = User\n", + "query": "let threshold = 15;\nSymantecVIP\n| where isnotempty(RADIUSAuth)\n| where RADIUSAuth =~ \"Reject\"\n| summarize Total = count() by bin(TimeGenerated, 15m), User, ClientIP\n| where Total > threshold\n", "queryFrequency": "PT1H", "queryPeriod": "PT1H", "severity": "Medium", @@ -313,10 +309,10 @@ "status": "Available", "requiredDataConnectors": [ { - "connectorId": "SyslogAma", "datatypes": [ "Syslog" - ] + ], + "connectorId": "SyslogAma" } ], "tactics": [ @@ -327,22 +323,22 @@ ], "entityMappings": [ { - "entityType": "Account", "fieldMappings": [ { - "columnName": "AccountCustomEntity", - "identifier": "FullName" + "identifier": "FullName", + "columnName": "User" } - ] + ], + "entityType": "Account" }, { - "entityType": "IP", "fieldMappings": [ { - "columnName": "IPCustomEntity", - "identifier": "Address" + "identifier": "Address", + "columnName": "ClientIP" } - ] + ], + "entityType": "IP" } ] } @@ -397,7 +393,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "SymantecVIP Data Parser with template version 3.0.1", + "description": "SymantecVIP Data Parser with template version 3.0.2", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('parserObject1').parserVersion1]", @@ -523,7 +519,7 @@ "apiVersion": "2023-04-01-preview", "location": "[parameters('workspace-location')]", "properties": { - "version": "3.0.1", + "version": "3.0.2", "kind": "Solution", "contentSchemaVersion": "3.0.0", "displayName": "Symantec VIP", diff --git a/Solutions/Symantec VIP/ReleaseNotes.md b/Solutions/Symantec VIP/ReleaseNotes.md index e006062a44c..eb526bf4eab 100644 --- a/Solutions/Symantec VIP/ReleaseNotes.md +++ b/Solutions/Symantec VIP/ReleaseNotes.md @@ -1,5 +1,6 @@ | **Version** | **Date Modified (DD-MM-YYYY)** | **Change History** | |-------------|--------------------------------|------------------------------------------------| +| 3.0.2 | 20-01-2025 | Removed Custom Entity mappings from **Analytic rules** | | 3.0.1 | 31-12-2024 | Removed Deprecated **Data connector** | | 3.0.0 | 01-08-2024 | Update **Parser** as part of Syslog migration | | | | Deprecating data connectors | From 6e6a55abf785e8896a1b7462e1bc353e36b043bd Mon Sep 17 00:00:00 2001 From: v-shukore Date: Mon, 20 Jan 2025 16:41:27 +0530 Subject: [PATCH 2/4] SymantecProxySG packaged --- .../Data/Solution_SymantecProxySG.json | 2 +- Solutions/SymantecProxySG/Package/3.0.3.zip | Bin 0 -> 9054 bytes .../SymantecProxySG/Package/mainTemplate.json | 46 ++++++++---------- Solutions/SymantecProxySG/ReleaseNotes.md | 1 + 4 files changed, 23 insertions(+), 26 deletions(-) create mode 100644 Solutions/SymantecProxySG/Package/3.0.3.zip diff --git a/Solutions/SymantecProxySG/Data/Solution_SymantecProxySG.json b/Solutions/SymantecProxySG/Data/Solution_SymantecProxySG.json index 854e8a06c65..f11cb73fe1a 100644 --- a/Solutions/SymantecProxySG/Data/Solution_SymantecProxySG.json +++ b/Solutions/SymantecProxySG/Data/Solution_SymantecProxySG.json @@ -17,7 +17,7 @@ "azuresentinel.azure-sentinel-solution-syslog" ], "BasePath": "C:\\GitHub\\Azure-Sentinel\\Solutions\\SymantecProxySG", - "Version": "3.0.2", + "Version": "3.0.3", "Metadata": "SolutionMetadata.json", "TemplateSpec": true } \ No newline at end of file diff --git a/Solutions/SymantecProxySG/Package/3.0.3.zip b/Solutions/SymantecProxySG/Package/3.0.3.zip new file mode 100644 index 0000000000000000000000000000000000000000..6a5e83a5346fe2411b8c761cad849f47da27feba GIT binary patch literal 9054 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 LzdAtsKi&TVX|GoB literal 0 HcmV?d00001 diff --git a/Solutions/SymantecProxySG/Package/mainTemplate.json b/Solutions/SymantecProxySG/Package/mainTemplate.json index 1983bb8b699..2996df837e1 100644 --- a/Solutions/SymantecProxySG/Package/mainTemplate.json +++ b/Solutions/SymantecProxySG/Package/mainTemplate.json @@ -41,7 +41,7 @@ "email": "support@microsoft.com", "_email": "[variables('email')]", "_solutionName": "SymantecProxySG", - "_solutionVersion": "3.0.2", + "_solutionVersion": "3.0.3", "solutionId": "azuresentinel.azure-sentinel-symantec-proxysg", "_solutionId": "[variables('solutionId')]", "parserObject1": { @@ -59,18 +59,18 @@ "workspaceResourceId": "[resourceId('microsoft.OperationalInsights/Workspaces', parameters('workspace'))]", "_workbookcontentProductId1": "[concat(take(variables('_solutionId'),50),'-','wb','-', uniqueString(concat(variables('_solutionId'),'-','Workbook','-',variables('_workbookContentId1'),'-', variables('workbookVersion1'))))]", "analyticRuleObject1": { - "analyticRuleVersion1": "1.0.4", + "analyticRuleVersion1": "1.0.5", "_analyticRulecontentId1": "7a58b253-0ef2-4248-b4e5-c350f15a8346", "analyticRuleId1": "[resourceId('Microsoft.SecurityInsights/AlertRuleTemplates', '7a58b253-0ef2-4248-b4e5-c350f15a8346')]", "analyticRuleTemplateSpecName1": "[concat(parameters('workspace'),'/Microsoft.SecurityInsights/',concat(parameters('workspace'),'-ar-',uniquestring('7a58b253-0ef2-4248-b4e5-c350f15a8346')))]", - "_analyticRulecontentProductId1": "[concat(take(variables('_solutionId'),50),'-','ar','-', uniqueString(concat(variables('_solutionId'),'-','AnalyticsRule','-','7a58b253-0ef2-4248-b4e5-c350f15a8346','-', '1.0.4')))]" + "_analyticRulecontentProductId1": "[concat(take(variables('_solutionId'),50),'-','ar','-', uniqueString(concat(variables('_solutionId'),'-','AnalyticsRule','-','7a58b253-0ef2-4248-b4e5-c350f15a8346','-', '1.0.5')))]" }, "analyticRuleObject2": { - "analyticRuleVersion2": "1.0.4", + "analyticRuleVersion2": "1.0.5", "_analyticRulecontentId2": "fb0f4a93-d8ad-4b54-9931-85bdb7550f90", "analyticRuleId2": "[resourceId('Microsoft.SecurityInsights/AlertRuleTemplates', 'fb0f4a93-d8ad-4b54-9931-85bdb7550f90')]", "analyticRuleTemplateSpecName2": "[concat(parameters('workspace'),'/Microsoft.SecurityInsights/',concat(parameters('workspace'),'-ar-',uniquestring('fb0f4a93-d8ad-4b54-9931-85bdb7550f90')))]", - "_analyticRulecontentProductId2": "[concat(take(variables('_solutionId'),50),'-','ar','-', uniqueString(concat(variables('_solutionId'),'-','AnalyticsRule','-','fb0f4a93-d8ad-4b54-9931-85bdb7550f90','-', '1.0.4')))]" + "_analyticRulecontentProductId2": "[concat(take(variables('_solutionId'),50),'-','ar','-', uniqueString(concat(variables('_solutionId'),'-','AnalyticsRule','-','fb0f4a93-d8ad-4b54-9931-85bdb7550f90','-', '1.0.5')))]" }, "_solutioncontentProductId": "[concat(take(variables('_solutionId'),50),'-','sl','-', uniqueString(concat(variables('_solutionId'),'-','Solution','-',variables('_solutionId'),'-', variables('_solutionVersion'))))]" }, @@ -84,7 +84,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "SymantecProxySG Data Parser with template version 3.0.2", + "description": "SymantecProxySG Data Parser with template version 3.0.3", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('parserObject1').parserVersion1]", @@ -216,7 +216,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "SymantecProxySG Workbook with template version 3.0.2", + "description": "SymantecProxySG Workbook with template version 3.0.3", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('workbookVersion1')]", @@ -272,10 +272,6 @@ "contentId": "Syslog", "kind": "DataType" }, - { - "contentId": "SymantecProxySG", - "kind": "DataConnector" - }, { "contentId": "SyslogAma", "kind": "DataConnector" @@ -308,7 +304,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "ExcessiveDeniedProxyTraffic_AnalyticalRules Analytics Rule with template version 3.0.2", + "description": "ExcessiveDeniedProxyTraffic_AnalyticalRules Analytics Rule with template version 3.0.3", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('analyticRuleObject1').analyticRuleVersion1]", @@ -325,7 +321,7 @@ "description": "This alert creates an incident when a client generates an excessive amounts of denied proxy traffic.", "displayName": "Excessive Denied Proxy Traffic", "enabled": false, - "query": "let threshold = 100;\nSymantecProxySG\n| where sc_filter_result =~ \"DENIED\"\n| summarize StartTime = min(TimeGenerated), EndTime = max(TimeGenerated), count() by c_ip, cs_host\n| where count_ > threshold\n| extend timestamp = StartTime, HostCustomEntity = cs_host, IPCustomEntity = c_ip\n", + "query": "let threshold = 100;\nSymantecProxySG\n| where sc_filter_result =~ \"DENIED\"\n| summarize StartTime = min(TimeGenerated), EndTime = max(TimeGenerated), count() by c_ip, cs_host\n| where count_ > threshold\n", "queryFrequency": "PT1H", "queryPeriod": "PT1H", "severity": "Low", @@ -336,10 +332,10 @@ "status": "Available", "requiredDataConnectors": [ { - "connectorId": "SyslogAma", "datatypes": [ "Syslog" - ] + ], + "connectorId": "SyslogAma" } ], "tactics": [ @@ -355,7 +351,7 @@ "fieldMappings": [ { "identifier": "FullName", - "columnName": "HostCustomEntity" + "columnName": "cs_host" } ], "entityType": "Host" @@ -364,7 +360,7 @@ "fieldMappings": [ { "identifier": "Address", - "columnName": "IPCustomEntity" + "columnName": "c_ip" } ], "entityType": "IP" @@ -423,7 +419,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "UserAccessedSuspiciousURLCategories_AnalyticalRules Analytics Rule with template version 3.0.2", + "description": "UserAccessedSuspiciousURLCategories_AnalyticalRules Analytics Rule with template version 3.0.3", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('analyticRuleObject2').analyticRuleVersion2]", @@ -440,7 +436,7 @@ "description": "Creates an incident in the event the requested URL accessed by the user has been identified as Suspicious, Phishing, or Hacking.", "displayName": "User Accessed Suspicious URL Categories", "enabled": false, - "query": "SymantecProxySG\n| mv-expand cs_categories\n| where cs_categories has_any (\"Suspicious\",\"phishing\", \"hacking\")\n| summarize StartTime = min(TimeGenerated), EndTime = max(TimeGenerated), count() by sc_filter_result, cs_userdn, c_ip, cs_host, Computer, tostring(cs_categories)\n| extend timestamp = StartTime, AccountCustomEntity = cs_userdn, IPCustomEntity = c_ip, HostCustomEntity = Computer\n", + "query": "SymantecProxySG\n| mv-expand cs_categories\n| where cs_categories has_any (\"Suspicious\",\"phishing\", \"hacking\")\n| summarize StartTime = min(TimeGenerated), EndTime = max(TimeGenerated), count() by sc_filter_result, cs_userdn, c_ip, cs_host, Computer, tostring(cs_categories)\n", "queryFrequency": "PT1H", "queryPeriod": "PT1H", "severity": "Medium", @@ -451,10 +447,10 @@ "status": "Available", "requiredDataConnectors": [ { - "connectorId": "SyslogAma", "datatypes": [ "Syslog" - ] + ], + "connectorId": "SyslogAma" } ], "tactics": [ @@ -470,7 +466,7 @@ "fieldMappings": [ { "identifier": "FullName", - "columnName": "AccountCustomEntity" + "columnName": "cs_userdn" } ], "entityType": "Account" @@ -479,7 +475,7 @@ "fieldMappings": [ { "identifier": "FullName", - "columnName": "HostCustomEntity" + "columnName": "Computer" } ], "entityType": "Host" @@ -488,7 +484,7 @@ "fieldMappings": [ { "identifier": "Address", - "columnName": "IPCustomEntity" + "columnName": "c_ip" } ], "entityType": "IP" @@ -543,7 +539,7 @@ "apiVersion": "2023-04-01-preview", "location": "[parameters('workspace-location')]", "properties": { - "version": "3.0.2", + "version": "3.0.3", "kind": "Solution", "contentSchemaVersion": "3.0.0", "displayName": "SymantecProxySG", diff --git a/Solutions/SymantecProxySG/ReleaseNotes.md b/Solutions/SymantecProxySG/ReleaseNotes.md index 9edb7dd9cad..d4ffa38dd8a 100644 --- a/Solutions/SymantecProxySG/ReleaseNotes.md +++ b/Solutions/SymantecProxySG/ReleaseNotes.md @@ -1,5 +1,6 @@ | **Version** | **Date Modified (DD-MM-YYYY)** | **Change History** | |-------------|--------------------------------|---------------------------------------------| +| 3.0.3 | 20-01-2025 | Removed Custom Entity mappings from **Analytic rules** | | 3.0.2 | 24-12-2024 |Removed Deprecated **Data Connector** | | 3.0.1 | 01-08-2024 |Update **Parser** as part of Syslog migration | | | |Deprecating data connectors | From 38bef2137cc82523e767b4ce25e56117856ac19f Mon Sep 17 00:00:00 2001 From: v-prasadboke Date: Wed, 22 Jan 2025 11:39:16 +0530 Subject: [PATCH 3/4] Vmware carbon black packaged --- .../Package/3.0.5.zip | Bin 0 -> 61100 bytes .../Package/mainTemplate.json | 44 +++++++++--------- 2 files changed, 22 insertions(+), 22 deletions(-) create mode 100644 Solutions/VMware Carbon Black Cloud/Package/3.0.5.zip diff --git a/Solutions/VMware Carbon Black Cloud/Package/3.0.5.zip b/Solutions/VMware Carbon Black Cloud/Package/3.0.5.zip new file mode 100644 index 0000000000000000000000000000000000000000..b8d4481f2c9207d3047058927b0d0a4ef48e36e7 GIT binary patch literal 61100 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 threshold\n| extend eventTime = datetime(1970-01-01) + tolong(threatHunterInfo_time_d/1000) * 1sec\n| summarize StartTime = min(TimeGenerated), EndTime = max(TimeGenerated), count() by eventTime, Threat_Name = threatHunterInfo_reportName_s, Device_Name = deviceInfo_deviceName_s, Internal_IP = deviceInfo_internalIpAddress_s, External_IP = deviceInfo_externalIpAddress_s, Threat_Score = threatHunterInfo_score_d\n| project-away count_\n| extend timestamp = StartTime, HostCustomEntity = Device_Name, IPCustomEntity = Internal_IP\n", + "query": "let threshold = 8;\nCarbonBlackNotifications_CL\n| where threatHunterInfo_score_d >= threshold\n| extend eventTime = datetime(1970-01-01) + tolong(threatHunterInfo_time_d/1000) * 1sec\n| summarize StartTime = min(TimeGenerated), EndTime = max(TimeGenerated), count() by eventTime, Threat_Name = threatHunterInfo_reportName_s, Device_Name = deviceInfo_deviceName_s, Internal_IP = deviceInfo_internalIpAddress_s, External_IP = deviceInfo_externalIpAddress_s, Threat_Score = threatHunterInfo_score_d\n| project-away count_\n", "queryFrequency": "PT1H", "queryPeriod": "PT1H", "severity": "Medium", @@ -3085,7 +3085,7 @@ { "fieldMappings": [ { - "columnName": "HostCustomEntity", + "columnName": "Device_Name", "identifier": "FullName" } ], @@ -3094,7 +3094,7 @@ { "fieldMappings": [ { - "columnName": "IPCustomEntity", + "columnName": "Internal_IP", "identifier": "Address" } ], @@ -3154,7 +3154,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "KnownMalwareDetected_AnalyticalRules Analytics Rule with template version 3.0.4", + "description": "KnownMalwareDetected_AnalyticalRules Analytics Rule with template version 3.0.5", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('analyticRuleObject2').analyticRuleVersion2]", @@ -3171,7 +3171,7 @@ "description": "This creates an incident when a known Malware is detected on a endpoint managed by a Carbon Black.", "displayName": "Known Malware Detected", "enabled": false, - "query": "CarbonBlackEvents_CL\n| extend eventTime = datetime(1970-01-01) + tolong(eventTime_d/1000) * 1sec\n| where targetApp_effectiveReputation_s =~ \"KNOWN_MALWARE\"\n| summarize StartTime = min(TimeGenerated), EndTime = max(TimeGenerated), count() by eventTime, deviceDetails_deviceName_s, deviceDetails_deviceIpAddress_s, processDetails_fullUserName_s, processDetails_targetName_s\n| extend timestamp = StartTime, AccountCustomEntity = processDetails_fullUserName_s, HostCustomEntity = deviceDetails_deviceName_s, IPCustomEntity = deviceDetails_deviceIpAddress_s\n", + "query": "CarbonBlackEvents_CL\n| extend eventTime = datetime(1970-01-01) + tolong(eventTime_d/1000) * 1sec\n| where targetApp_effectiveReputation_s =~ \"KNOWN_MALWARE\"\n| summarize StartTime = min(TimeGenerated), EndTime = max(TimeGenerated), count() by eventTime, deviceDetails_deviceName_s, deviceDetails_deviceIpAddress_s, processDetails_fullUserName_s, processDetails_targetName_s\n", "queryFrequency": "PT1H", "queryPeriod": "PT1H", "severity": "Medium", @@ -3198,7 +3198,7 @@ { "fieldMappings": [ { - "columnName": "AccountCustomEntity", + "columnName": "processDetails_fullUserName_s", "identifier": "FullName" } ], @@ -3207,7 +3207,7 @@ { "fieldMappings": [ { - "columnName": "HostCustomEntity", + "columnName": "deviceDetails_deviceName_s", "identifier": "FullName" } ], @@ -3216,7 +3216,7 @@ { "fieldMappings": [ { - "columnName": "IPCustomEntity", + "columnName": "deviceDetails_deviceIpAddress_s", "identifier": "Address" } ], @@ -3276,7 +3276,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "VMwareCarbonBlack Workbook with template version 3.0.4", + "description": "VMwareCarbonBlack Workbook with template version 3.0.5", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('workbookVersion1')]", @@ -3372,7 +3372,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "CarbonBlackConnector Playbook with template version 3.0.4", + "description": "CarbonBlackConnector Playbook with template version 3.0.5", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('playbookVersion1')]", @@ -5006,7 +5006,7 @@ ], "metadata": { "comments": "This connector used to perform different actions on alerts , device and threats using CarbonBlack cloud endpoint API.", - "lastUpdateTime": "2024-11-19T15:06:50.446Z", + "lastUpdateTime": "2025-01-22T11:36:36.320Z", "releaseNotes": { "version": "1.0", "title": "[variables('blanks')]", @@ -5038,7 +5038,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "EndpointTakeActionFromTeams-CarbonBlack Playbook with template version 3.0.4", + "description": "EndpointTakeActionFromTeams-CarbonBlack Playbook with template version 3.0.5", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('playbookVersion2')]", @@ -6841,7 +6841,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "IsolateEndpoint-CarbonBlack Playbook with template version 3.0.4", + "description": "IsolateEndpoint-CarbonBlack Playbook with template version 3.0.5", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('playbookVersion3')]", @@ -7584,7 +7584,7 @@ "[extensionResourceId(resourceId('Microsoft.OperationalInsights/workspaces', parameters('workspace')), 'Microsoft.SecurityInsights/contentPackages', variables('_solutionId'))]" ], "properties": { - "description": "EndpointEnrichment-CarbonBlack Playbook with template version 3.0.4", + "description": "EndpointEnrichment-CarbonBlack Playbook with template version 3.0.5", "mainTemplate": { "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "[variables('playbookVersion4')]", @@ -8008,7 +8008,7 @@ "apiVersion": "2023-04-01-preview", "location": "[parameters('workspace-location')]", "properties": { - "version": "3.0.4", + "version": "3.0.5", "kind": "Solution", "contentSchemaVersion": "3.0.0", "displayName": "VMware Carbon Black Cloud", From 119660b0730249727df58ec783360cc28a3a2eab Mon Sep 17 00:00:00 2001 From: v-shukore Date: Wed, 22 Jan 2025 12:29:48 +0530 Subject: [PATCH 4/4] Update ReleaseNotes.md --- Solutions/VMware Carbon Black Cloud/ReleaseNotes.md | 1 + 1 file changed, 1 insertion(+) diff --git a/Solutions/VMware Carbon Black Cloud/ReleaseNotes.md b/Solutions/VMware Carbon Black Cloud/ReleaseNotes.md index c21d2f75395..7c9bf345869 100644 --- a/Solutions/VMware Carbon Black Cloud/ReleaseNotes.md +++ b/Solutions/VMware Carbon Black Cloud/ReleaseNotes.md @@ -1,5 +1,6 @@ | **Version** | **Date Modified (DD-MM-YYYY)** | **Change History** | |-------------|--------------------------------|-----------------------------------------------------------| +| 3.0.5 | 22-01-2025 | Removed Custom Entity mappings from **Analytic rules** | | 3.0.4 | 19-11-2024 | Modified TransformKQL queries of CCP **Data Connector** | | 3.0.3 | 28-10-2024 | Added Sample Queries to the CCP **Data Connector** template | | 3.0.2 | 15-10-2024 | Added new CCP **Data Connector** to the Solution |