From 2145770963e84f682700317aed570556b1366595 Mon Sep 17 00:00:00 2001 From: Esteban Mathia Date: Mon, 30 Oct 2023 15:45:02 +0100 Subject: [PATCH] add more documentation --- Kexa/services/alerte.service.ts | 22 +++++++++++++++------- Kexa/services/analyse.service.ts | 2 +- README.md | 10 +++++++++- images/Exemple_Scan_Security_html.png | Bin 29821 -> 29609 bytes 4 files changed, 25 insertions(+), 9 deletions(-) diff --git a/Kexa/services/alerte.service.ts b/Kexa/services/alerte.service.ts index ddeb90ae..8e923957 100644 --- a/Kexa/services/alerte.service.ts +++ b/Kexa/services/alerte.service.ts @@ -90,6 +90,8 @@ export function alertLogGlobal(alert: GlobalConfigAlert, compteError: number[], Object.entries(subResult).forEach(([key, value]) => { context?.log("rule:"+key); logger.info("rule:"+key); + context?.log("description:"+value[0].rule?.description); + logger.info("description:"+value[0].rule?.description); context?.log("all resources who not respect the rules:"); logger.info("all resources who not respect the rules:"); value.map((scan:ResultScan) => scan.objectContent).forEach((resource, index) => { @@ -231,10 +233,12 @@ export function alertLog(rule: Rules, conditions: SubResultScan[], objectResourc switch(rule.level){ case LevelEnum.INFO: if(fullDetail){ - context?.log("info:"+rule.name); - logger.error("critical:"+rule.name); + context?.log("info name:"+rule.name); + logger.info("info name:"+rule.name); + context?.log("info description:"+rule?.description); + logger.info("info description:"+rule?.description); context?.log(sentenceConditionLog(objectResource.id)); - logger.error(sentenceConditionLog(objectResource.id)); + logger.info(sentenceConditionLog(objectResource.id)); } logger.debug(jsome.getColoredString(conditions)); context?.log(propertyToSend(rule, objectResource, true)); @@ -245,8 +249,10 @@ export function alertLog(rule: Rules, conditions: SubResultScan[], objectResourc break; case LevelEnum.ERROR: if(fullDetail){ - context?.log("error:"+rule.name); - logger.error("critical:"+rule.name); + context?.log("error name:"+rule.name); + logger.error("error name:"+rule.name); + context?.log("error description:"+rule?.description); + logger.error("error description:"+rule?.description); context?.log(sentenceConditionLog(objectResource.id)); logger.error(sentenceConditionLog(objectResource.id)); } @@ -256,8 +262,10 @@ export function alertLog(rule: Rules, conditions: SubResultScan[], objectResourc break; case LevelEnum.FATAL: if(fullDetail){ - context?.log("critical:"+rule.name); - logger.fatal("critical:"+rule.name); + context?.log("critical name:"+rule.name); + logger.fatal("critical name:"+rule.name); + context?.log("critical description:"+rule?.description); + logger.fatal("critical description:"+rule?.description); context?.log(sentenceConditionLog(objectResource.id)); logger.fatal(sentenceConditionLog(objectResource.id)); } diff --git a/Kexa/services/analyse.service.ts b/Kexa/services/analyse.service.ts index 077d1373..3e6ac7eb 100644 --- a/Kexa/services/analyse.service.ts +++ b/Kexa/services/analyse.service.ts @@ -550,7 +550,7 @@ export function checkIncludeNS(condition:RulesConditions, value:any): boolean { export function checkRegex(condition:RulesConditions, value:any): boolean { logger.debug("check regex"); if (typeof value == "number") { - if (value.toString().match(condition.value.toString())) + if (RegExp(condition.value.toString()).exec(value.toString())) return true; else return false; diff --git a/README.md b/README.md index d5dec74d..09a2a6e2 100644 --- a/README.md +++ b/README.md @@ -383,6 +383,9 @@ If you want explanations and details about rules in Kexa, please refer to [this #
**Roadmap**

+
+All Achievements + - ✅ Setting notification levels - ✅ Azure check in: - ✅ virtual machine (vm) @@ -468,8 +471,13 @@ If you want explanations and details about rules in Kexa, please refer to [this - ✅ alert - ✅ incident - ✅ app_access_policy -- [ ] VM Ware + +
+ +Next step: + - [ ] Kexa SaaS +- [ ] VM Ware - [ ] OVH - [ ] Database - [ ] Postgres diff --git a/images/Exemple_Scan_Security_html.png b/images/Exemple_Scan_Security_html.png index b2187d8b42f0efaff731b9d558d257132d650e76..4d3477e6a3eb5d494c99940402e734499a71e8a9 100644 GIT binary patch literal 29609 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