New Managed Rule Set on Azure WAF for Front Door Premium

Published Aug 09 2021 12:40 PM 1,898 Views
Microsoft

A new managed rule set called Microsoft_DefaultRuleSet_2.0 has been launched in public preview on Azure Web Application Firewall (WAF) for Front Door Premium. To simplify, we often refer to this rule set as DRS 2.0

 

The new managed rule set offers enhanced rule definitions to help reduce false positives, additional managed rules to detect and protect against more web application attacks, anomaly scoring mode and support for additional content-types. 

 

 

camilamartins_0-1628536692380.png

 

 

What are the requirements to use DRS 2.0? 

You must be using Azure Front Door Premium SKU*.  

 

*Note: Azure Front Door Premium (which includes DRS 2.0) is currently in Public Preview status. We do not recommend using this version on production workloads until it becomes Generally Available (GA). This is a great time to invest in a proof of concept or testing, though.

 

What changes when using DRS 2.0? 

DRS 2.0 introduces updated rule definitions, Microsoft Threat Intelligence rules, anomaly scoring mode, and additional content-type support.

 

Let's talk a little more about each one of these items:

 

Updated Rule Definitions 

Our managed rules that protect against the most common web application attacks, such as the OWASP Top 10, are based on OWASP ModSecurity Core Rule Set (CRS). In DRS 2.0, the definitions were updated based on version CRS 3.2.  

 

CRS 3.2 has several improvements in comparison to the previous CRS versions. Multiple security rules have received fixes that help lower the occurrence of false positives, and new security rules have been added to detect and protect against more threats, such as new types of Cross-Site Scripting (XSS) and SQL Injection (SQLi) attacks.

 

For more detailed information on what changed from CRS 3.1 to CRS 3.2, you can refer to the OWASP ModSecurity Core Rule Set Version 3.2.0 change log

 

 

camilamartins_1-1628536692409.png

 

 


Microsoft Threat Intelligence Rules 

We have added our own Microsoft-authored security rules. These rules were created by the Microsoft Threat Intelligence Center (MSTIC) team based on signatures developed internally and are not open-sourced. 

 

 

camilamartins_2-1628536692436.png

 

 

Anomaly Scoring Mode 

Previous versions of the managed rule sets in Azure WAF for Front Door follow the “Traditional Mode” for threat response. This means that as soon as an HTTP request matches a rule, the WAF takes the configured action (allow, block, log, or redirect) and no further rules are processed. It has a binary "match-or-not-match" approach. This mode is easy to understand, but it lacks information about how many rules a specific HTTP request would match. 

 

In DRS 2.0, the Azure WAF runs in “Anomaly Scoring Mode”. This means that an HTTP request gets inspected by all rules in the rule set, each rule has a specific severity level, and points are assigned based on the criticality of each rule. The WAF adds up these points, and if they reach the anomaly scoring threshold, then the WAF takes the configured action (block, log, or redirect. 

 

Anomaly Scoring Mode allows analysts and administrators to get a holistic view of the attack, as the WAF will log all matches for a single HTTP request. It also helps improve the rates of false positives because it blocks requests based on severity levels and anomaly thresholds, instead of a simpler binary approach. 

camilamartins_3-1628536692438.png

 

 

Additional Content-Type Support 

DRS 2.0 supports additional Content-Types for HTTP request body inspection. Azure WAF for Front Door can inspect HTTP request body sizes up to 128KB. If requests are larger than 128KB, the WAF will stop inspection at that limit mark. 

 

The supported Content-Types when using the DRS 2.0 managed rule set are: 

 

  • applicationhttps://techcommunity.microsoft.com/json 
  • application/xml 
  • application/x-www-form-urlencoded 
  • multipart/form-data 
%3CLINGO-SUB%20id%3D%22lingo-sub-2628959%22%20slang%3D%22en-US%22%3ENew%20Managed%20Rule%26nbsp%3BSet%20on%26nbsp%3BAzure%20WAF%26nbsp%3Bfor%26nbsp%3BFront%20Door%20Premium%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2628959%22%20slang%3D%22en-US%22%3E%3CP%3E%3CFONT%20size%3D%224%22%3EA%20new%20managed%20rule%20set%20called%26nbsp%3B%3CEM%3E%3CSTRONG%3EMicrosoft_DefaultRuleSet_2.0%3C%2FSTRONG%3E%3C%2FEM%3E%26nbsp%3Bhas%20been%20launched%20in%20public%20preview%20on%20Azure%20Web%20Application%20Firewall%20(WAF)%26nbsp%3Bfor%26nbsp%3BFront%20Door%20Premium.%26nbsp%3BTo%20simplify%2C%20we%20often%20refer%26nbsp%3Bto%20this%20rule%20set%20as%26nbsp%3B%3CEM%3E%3CSTRONG%3EDRS%202.0%3C%2FSTRONG%3E%3C%2FEM%3E.%26nbsp%3B%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CFONT%20size%3D%224%22%3EThe%20new%20managed%20rule%20set%26nbsp%3Boffers%26nbsp%3Benhanced%20rule%20definitions%20to%26nbsp%3Bhelp%20reduce%20false%20positives%2C%26nbsp%3Badditional%26nbsp%3Bmanaged%20rules%20to%20detect%20and%20protect%20against%26nbsp%3Bmore%26nbsp%3Bweb%20application%20attacks%2C%20anomaly%20scoring%20mode%20and%26nbsp%3Bsupport%20for%26nbsp%3Badditional%26nbsp%3Bcontent-types.%26nbsp%3B%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-360px%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-center%22%20image-alt%3D%22camilamartins_0-1628536692380.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F301876iC6F68FB3FB522B8E%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22camilamartins_0-1628536692380.png%22%20alt%3D%22camilamartins_0-1628536692380.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CFONT%20size%3D%224%22%3E%3CSTRONG%3EWhat%20are%20the%20requirements%20to%20use%26nbsp%3BDRS%202.0%3F%26nbsp%3B%3C%2FSTRONG%3E%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%3E%3CFONT%20size%3D%224%22%3EYou%20must%20be%20using%20Azure%26nbsp%3BFront%20Door%20Premium%20SKU*.%26nbsp%3B%26nbsp%3B%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CFONT%20size%3D%222%22%20color%3D%22%23333333%22%3E%3CEM%3E*Note%3A%26nbsp%3BAzure%20Front%20Door%20Premium%26nbsp%3B(which%20includes%20DRS%202.0)%20is%20currently%20in%20Public%20Preview%20status.%20We%20do%20not%20recommend%20using%26nbsp%3Bthis%26nbsp%3Bversion%26nbsp%3Bon%20production%20workloads%20until%20it%20becomes%20Generally%20Available%20(GA).%20This%20is%20a%20great%20time%20to%20invest%20in%20a%20proof%20of%20concept%20or%20testing%2C%20though.%3C%2FEM%3E%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSTRONG%3E%3CFONT%20size%3D%224%22%3EWhat%26nbsp%3Bchanges%20when%26nbsp%3Busing%26nbsp%3BDRS%202.0%3F%26nbsp%3B%3C%2FFONT%3E%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%3E%3CFONT%20size%3D%224%22%3EDRS%202.0%20introduces%20updated%20rule%20definitions%2C%20Microsoft%20Threat%20Intelligence%20rules%2C%20anomaly%20scoring%20mode%2C%20and%20additional%20content-type%20support.%20%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CFONT%20size%3D%224%22%3ELet's%20talk%20a%20little%20more%20about%20each%20one%20of%20these%20items%3A%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20color%3D%22%230000FF%22%3E%3CSTRONG%3E%3CFONT%20size%3D%224%22%3EUpdated%26nbsp%3BRule%20Definitions%26nbsp%3B%3C%2FFONT%3E%3C%2FSTRONG%3E%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20size%3D%224%22%3EOur%20managed%20rules%20that%20protect%20against%20the%20most%20common%26nbsp%3Bweb%20application%20attacks%2C%20such%20as%20the%20OWASP%20Top%2010%2C%20are%20based%20on%26nbsp%3BOWASP%26nbsp%3BModSecurity%26nbsp%3BCore%20Rule%20Set%26nbsp%3B(CRS).%20In%20DRS%26nbsp%3B2.0%2C%20the%20definitions%20were%20updated%20based%20on%20version%20CRS%203.2.%26nbsp%3B%26nbsp%3B%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20size%3D%224%22%3ECRS%203.2%20has%20several%20improvements%20in%20comparison%20to%20the%20previous%20CRS%20versions.%20Multiple%20security%20rules%20have%20received%20fixes%20that%20help%20lower%20the%20occurrence%20of%20false%20positives%2C%20and%20new%20security%20rules%20have%20been%20added%20to%20detect%20and%20protect%20against%20more%20threats%2C%20such%26nbsp%3Bas%26nbsp%3Bnew%26nbsp%3Btypes%20of%26nbsp%3BCross-Site%20Scripting%20(XSS)%26nbsp%3Band%26nbsp%3BSQL%20Injection%20(SQLi)%26nbsp%3Battacks.%20%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20size%3D%224%22%3EFor%20more%20detailed%20information%20on%20what%20changed%20from%20CRS%203.1%20to%20CRS%203.2%2C%20you%20can%20refer%20to%20the%26nbsp%3B%3CA%20href%3D%22https%3A%2F%2Fcoreruleset.org%2F20190924%2Fowasp-modsecurity-core-rule-set-version-3-2-0%2F%22%20target%3D%22_blank%22%20rel%3D%22noopener%20nofollow%20noreferrer%22%3EOWASP%20ModSecurity%20Core%20Rule%20Set%20Version%203.2.0%20change%20log%3C%2FA%3E.%26nbsp%3B%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-90px%22%3E%3CFONT%20size%3D%224%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-center%22%20image-alt%3D%22camilamartins_1-1628536692409.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F301878iC13DDC5B4943CE85%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22camilamartins_1-1628536692409.png%22%20alt%3D%22camilamartins_1-1628536692409.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%3CBR%20%2F%3E%3CFONT%20color%3D%22%230000FF%22%3E%3CSTRONG%3E%3CFONT%20size%3D%224%22%3EMicrosoft%20Threat%20Intelligence%20Rules%26nbsp%3B%3C%2FFONT%3E%3C%2FSTRONG%3E%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20size%3D%224%22%3EWe%20have%20added%20our%20own%20Microsoft-authored%20security%20rules.%20These%20rules%20were%20created%26nbsp%3Bby%26nbsp%3Bthe%26nbsp%3BMicrosoft%E2%80%AFThreat%20Intelligence%20Center%20(MSTIC)%26nbsp%3Bteam%20based%20on%20signatures%20developed%20internally%20and%20are%20not%20open-sourced.%26nbsp%3B%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-90px%22%3E%3CFONT%20size%3D%224%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-center%22%20image-alt%3D%22camilamartins_2-1628536692436.png%22%20style%3D%22width%3A%20999px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F301877i2E06C7C469AFBD43%2Fimage-size%2Flarge%3Fv%3Dv2%26amp%3Bpx%3D999%22%20role%3D%22button%22%20title%3D%22camilamartins_2-1628536692436.png%22%20alt%3D%22camilamartins_2-1628536692436.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20color%3D%22%230000FF%22%3E%3CSTRONG%3E%3CFONT%20size%3D%224%22%3EAnomaly%20Scoring%20Mode%26nbsp%3B%3C%2FFONT%3E%3C%2FSTRONG%3E%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20size%3D%224%22%3EPrevious%20versions%20of%20the%20managed%20rule%20sets%20in%20Azure%20WAF%20for%26nbsp%3BFront%20Door%26nbsp%3Bfollow%20the%20%E2%80%9CTraditional%26nbsp%3BMode%E2%80%9D%20for%20threat%20response.%20This%20means%20that%26nbsp%3Bas%20soon%20as%20an%20HTTP%20request%20matches%20a%20rule%2C%26nbsp%3Bthe%20WAF%20takes%20the%20configured%20action%26nbsp%3B(allow%2C%20block%2C%20log%2C%20or%20redirect)%26nbsp%3Band%20no%20further%20rules%20are%20processed.%20It%20has%20a%20binary%20%22match-or-not-match%22%20approach.%26nbsp%3BThis%20mode%20is%20easy%20to%20understand%2C%20but%20it%26nbsp%3Blacks%26nbsp%3Binformation%20about%20how%20many%20rules%26nbsp%3Ba%26nbsp%3Bspecific%26nbsp%3BHTTP%26nbsp%3Brequest%26nbsp%3Bwould%20match.%26nbsp%3B%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20size%3D%224%22%3EIn%20DRS%202.0%2C%20the%26nbsp%3BAzure%20WAF%20runs%20in%20%E2%80%9CAnomaly%20Scoring%20Mode%E2%80%9D.%26nbsp%3BThis%20means%20that%26nbsp%3Ban%20HTTP%20request%20gets%20inspected%20by%20all%20rules%20in%20the%20rule%20set%2C%26nbsp%3Beach%20rule%20has%20a%20specific%20severity%20level%2C%26nbsp%3Band%26nbsp%3Bpoints%26nbsp%3Bare%20assigned%20based%20on%20the%20criticality%20of%20each%20rule.%26nbsp%3BThe%26nbsp%3BWAF%20adds%20up%26nbsp%3Bthese%20points%2C%20and%20if%20they%20reach%20the%20anomaly%20scoring%20threshold%2C%20then%26nbsp%3Bthe%20WAF%20takes%20the%20configured%20action%20(block%2C%20log%2C%20or%20redirect.%26nbsp%3B%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20size%3D%224%22%3EAnomaly%20Scoring%20Mode%20allows%26nbsp%3Banalysts%20and%20administrators%20to%20get%20a%20holistic%20view%20of%20the%20attack%2C%20as%20the%20WAF%20will%20log%26nbsp%3Ball%26nbsp%3Bmatches%20for%20a%20single%26nbsp%3BHTTP%26nbsp%3Brequest.%20It%20also%26nbsp%3Bhelps%20improve%20the%20rates%20of%20false%20positives%20because%20it%20blocks%20requests%20based%20on%20severity%20levels%20and%20anomaly%20thresholds%2C%20instead%20of%20a%20simpler%20binary%20approach.%26nbsp%3B%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-330px%22%3E%3CFONT%20size%3D%224%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-center%22%20image-alt%3D%22camilamartins_3-1628536692438.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CIMG%20src%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F301879i205945AF340A04CD%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22camilamartins_3-1628536692438.png%22%20alt%3D%22camilamartins_3-1628536692438.png%22%20%2F%3E%3C%2FSPAN%3E%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20color%3D%22%230000FF%22%3E%3CSTRONG%3E%3CFONT%20size%3D%224%22%3EAdditional%20Content-Type%26nbsp%3BSupport%26nbsp%3B%3C%2FFONT%3E%3C%2FSTRONG%3E%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20size%3D%224%22%3EDRS%202.0%26nbsp%3Bsupports%26nbsp%3Badditional%20Content-Types%26nbsp%3Bfor%20HTTP%20request%20body%20inspection.%20Azure%20WAF%26nbsp%3Bfor%20Front%20Door%26nbsp%3Bcan%20inspect%26nbsp%3BHTTP%20request%20body%26nbsp%3Bsizes%26nbsp%3Bup%20to%26nbsp%3B128KB.%20If%20requests%20are%26nbsp%3Blarger%20than%20128KB%2C%20the%26nbsp%3BWAF%20will%20stop%20inspection%20at%20that%20limit%26nbsp%3Bmark.%26nbsp%3B%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20size%3D%224%22%3EThe%20supported%20Content-Types%26nbsp%3Bwhen%20using%26nbsp%3Bthe%20DRS%202.0%20managed%20rule%20set%20are%3A%26nbsp%3B%3C%2FFONT%3E%3C%2FP%3E%0A%3CP%20class%3D%22lia-indent-padding-left-30px%22%3E%26nbsp%3B%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20size%3D%224%22%3Eapplication%2Fjson%26nbsp%3B%3C%2FFONT%3E%3C%2FLI%3E%0A%3CLI%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20size%3D%224%22%3Eapplication%2Fxml%26nbsp%3B%3C%2FFONT%3E%3C%2FLI%3E%0A%3CLI%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20size%3D%224%22%3Eapplication%2Fx-www-form-urlencoded%26nbsp%3B%3C%2FFONT%3E%3C%2FLI%3E%0A%3CLI%20class%3D%22lia-indent-padding-left-30px%22%3E%3CFONT%20size%3D%224%22%3Emultipart%2Fform-data%26nbsp%3B%3C%2FFONT%3E%3C%2FLI%3E%0A%3C%2FUL%3E%3C%2FLINGO-BODY%3E%3CLINGO-TEASER%20id%3D%22lingo-teaser-2628959%22%20slang%3D%22en-US%22%3E%3CP%3EThe%20new%20managed%20rule%20set%26nbsp%3Boffers%26nbsp%3Benhanced%20rule%20definitions%20to%26nbsp%3Bhelp%20reduce%20false%20positives%2C%26nbsp%3Badditional%26nbsp%3Bmanaged%20rules%20to%20detect%20and%20protect%20against%26nbsp%3Bmore%26nbsp%3Bweb%20application%20attacks%2C%20anomaly%20scoring%20mode%20and%26nbsp%3Bsupport%20for%26nbsp%3Badditional%26nbsp%3Bcontent-types.%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-TEASER%3E%3CLINGO-LABS%20id%3D%22lingo-labs-2628959%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3EAzure%20Front%20Door%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EAzure%20Network%20Security%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EAzure%20WAF%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E
Co-Authors
Version history
Last update:
‎Aug 11 2021 09:32 AM
Updated by:
www.000webhost.com