Interactive Web-based 3D Visualization of large scientific datasets using Azure Batch

Interactive Web-based 3D Visualization of large scientific datasets using Azure Batch

This article is contributed. See the original author and article here.

Scientific computing has long relied on HPC systems to accelerate scientific discovery. What constitutes an HPC system has continued to evolve. Access to computing keeps getting democratized and HPC is no longer limited to multi-billion dollar government laboratories and industries who can afford the infrastructure. Anyone with access to the Internet can now easily leverage the ubiquitous cloud for their computing task du jour! Azure natively supports HPC by providing hardware suitable for high performance computing needs together with software infrastructure to make it easy to harness these resources. In this post, we focus on one such Azure infrastructure component, Azure Batch, and see how we can be used to support a common use-case: data browser with interactive 3D visualization support.


 


Use-Case: the problem statement


 


Recently, a customer came to us with an interesting use-case. They wanted to provide their users with an interactive data browser. The datasets are HPC simulation and analysis results which can easily be several gigabytes in size. They wanted to present their users with a web app where users can browse the datasets and then select any of the datasets to interactively visualize it with some canned visualizations.


 


Variations of this use-case are a very common request in the scientific computing world so let’s generalize (and perhaps simplify) the problem. We want to develop the following web application:


 


New Wireframe 1.png


 


Design Considerations


 


A few things to qualify the problem and help guide our design choices.


 



  1. We want to a scalable solution. Of course, we can set all of this up on a workstation and expose that to the world wide web, however not only is that scary (for security reasons) but also not scalable. We want this to scale no matter how many users are accessing the portal at the same time.

  2. The datasets are large and require processing before they can be visualized. Hence, we want a remote rendering capable system where the rendering can happen on remote computing resources, rather than the browser itself.


These requirements help us make the following design choices:


 



  1. Azure Batch provides us with the ability to allocate (and free up) compute resources as and when needed. We can setup the web app to submit jobs on Azure Batch for visualizing datasets and then Batch can allocate those jobs to nodes in a node pool that can be setup to auto-scale using fancy rules, as needed. This frees us from having to do any management of the nodes in the pool such as setting them up, ensuring they have access to appropriate storage to read the datasets, etc. Batch takes care of that in addition to providing us with tools for monitoring, debugging and diagnosing issues.

  2. For visualization and data processing, we use ParaView. Together with trame, ParaView makes it easy for us to develop a remote-rendering capable custom web applications that offer all the sophistication and flexibility available in the desktop app. Thus we can easily develop complex data analysis pipelines to satisfy the specific user requirements. trame enables use to access the visualization viewport through a web browser using web sockets. 


Deploying the resources


 


One of the first steps when dealing with cloud computing is deploying the resources necessary on the Cloud. Infrastructure as Code (IaC) refers to the ability of deploying the resources needed and configuring them programmatically. As we go about building our HPC environment in the Azure Cloud, there are many ways to do it. We can use the Azure Portal to setup the system interactively. We can use Azure CLI to script the setup. We can also use domain-specific languages like Terraform or Bicep to define and deploy the infrastructure. For this post, we use Bicep which is a language for declaratively defining the Azure resources. For deploying the Bicep specifications and for other operations like populating datasets, we use Azure CLI.


 


All the resources needed for this demo can be deployed using the bicep code available in this Github repository. The readme goes over the prerequisites and the detailed steps to deploy all necessary resources. The project includes several different applications. The demo we cover this post is referred to as trame. Ensure you pass enableTrame=true to the `az deployment sub create ….` command to deploy the web application.


 


Demo in action


 


Once the deployment is successful, follow the steps described here to upload datasets to the storage account deployed. Finally, you should be able to browse to the URL specific to your deployed web app and start visualizing your datasets! Here’s a short video of the demo in action:


 


Demo: Cloud Dataset VIewer in actionDemo: Cloud Dataset VIewer in action


 


Architecture


 


Let’s dive into the details on how this is put together. Of course, there’s no one way to do this. Discussing the details of the resources and their configuration should help anyone trying to adapt a similar solution for their specific requirements.


 


Here’s a schematic of the main Azure resources deployed in this demo.


 


Drawing.png


 


App ServiceThis the Azure resource that hosts our main web application. As described in the initial sections, we want our web app to let the user browse datasets and then visualize them. Thus, the web application has two major roles: list datasets, and start/stop visualization jobs. For first role, the web app needs to talk with the storage account on which all the datasets are stored to get the list of available datasets. For the second, the web app needs to communicate with the Batch service to submit jobs/stop jobs etc. In this demo, we decided to write this web app using node.js. The source code is available here. The app uses Azure JavaScript SDK to communicate with the storage account and batch service. The web app also has another role that is a little less obvious: it acts as communication proxy to communicate with the visualization web servers running on the compute nodes in the batch pool. This will become clear when we discuss the Batch resource.


 


Batch: This is the Azure Batch resource that orchestrates the compute node pools, job submission, etc. Batch takes care of managing all the compute nodes that are available for handling all the visualization requests. When the user “clicks” on a dataset, the web app uses Azure Batch JavaScript API to communicate with the Batch service and request it to start a job to visualize the corresponding dataset. Batch takes care on mounting the storage account on all compute nodes in the pool when they are initialized thus any process running on the compute nodes can access the datasets. The visualization job, in our case, is a simple Python application that uses ParaView/trame APIs to visualize the data. The application, named vizer, is available in this Github repository. When launched with a dataset filename passed on the command line, vizer starts up a Python web-server that one can connect to access the visualization. vizer is running on one of the compute nodes in the pool. The compute nodes in the pool are not accessible from the outside network. Thus, there’s no direct way for the user to connect to this internal visualization web-server. This is why we need the web app deployed in our outward facing app service to also act as a proxy. When a visualization web-server is ready, the main web app creates a iframe that proxies to this internal visualization web-server thus making the visualization accessible by the user. Since trame uses websockets, we need to ensure that this proxy supports websocket proxying as well. Luckily, node.js makes this very easy for us. Look at the web app source code for details on ho this can be done. For simplicity, the demo doesn’t add any additional authorization for the proxying. For production, one should consider adding authorization logic to avoid any random user from accessing any other users visualization results.


 


Container Registry: Azure Container Registry is used to store container images. In this demo, we containerize both the main web app and the visualization application, vizer. It’s not necessary to use containers, of course. Both App Service and Batch can work without containers, if needed. Containers just make it easier to setup the runtime environments for our demo.


 


Key Vault: Key Vault is generally used to store secrets and other private information. In this demo, we need the Key Vault for the Batch resource. Batch uses the Key Vault to store certificates etc. that is needs for setting up the compute nodes in the pools.


 


Wrapping up


 


As we can see, it’s fairly straight forward to get a interactive visualization portal setup using Azure and ParaView. For this demo, we tried to keep things simple and yet follow best practices when it comes to public access to resources in the cloud. Of course, for a production deployment one would want to add authentication to the web app, along with autoscaling for batch pool and add smarts for resource cleanup and fault tolerance to the web application, etc. One thing we have not covered in this post is how to use Azure’s HPC SKUs and ParaView’s distributed rendering capabilities and GPUs for processing massive datasets. We will explore that and more in subsequent posts.

5 ways Microsoft Viva helps businesses save time and money

5 ways Microsoft Viva helps businesses save time and money

This article is contributed. See the original author and article here.

A new Total Economic Impact™ Of Microsoft Viva study by Forrester Consulting, commissioned by Microsoft, details five ways Microsoft Viva can help organizations save time and money while improving business outcomes.

The post 5 ways Microsoft Viva helps businesses save time and money appeared first on Microsoft 365 Blog.

Brought to you by Dr. Ware, Microsoft Office 365 Silver Partner, Charleston SC.

Vulnerability Summary for the Week of November 28, 2022

This article is contributed. See the original author and article here.

acer — aspire_a315-22g_firmware Vulnerability in the HQSwSmiDxe DXE driver on some consumer Acer Notebook devices may allow an attacker with elevated privileges to modify UEFI Secure Boot settings by modifying an NVRAM variable. 2022-11-28 8.2 CVE-2022-4020
MISC adrotate_banner_manager_project — adrotate_banner_manager Cross-Site Request Forgery (CSRF) in AdRotate Banner Manager Plugin <= 5.9 on WordPress. 2022-11-30 8.8 CVE-2022-26366
MISC aerocms_project — aerocms AeroCMS v0.0.1 was discovered to contain a SQL Injection vulnerability via the Search parameter. This vulnerability allows attackers to access database information. 2022-11-29 7.5 CVE-2022-45329
MISC apache — fineract Apache Fineract allowed an authenticated user to perform remote code execution due to a path traversal vulnerability in a file upload component of Apache Fineract, allowing an attacker to run remote code. This issue affects Apache Fineract version 1.8.0 and prior versions. We recommend users to upgrade to 1.8.1. 2022-11-29 8.8 CVE-2022-44635
MISC
MLIST automotive_shop_management_system_project — automotive_shop_management_system Automotive Shop Management System v1.0 was discovered to contain a SQL injection vulnerability via the id parameter at /asms/products/view_product.php. 2022-11-25 7.2 CVE-2022-44858
MISC automotive_shop_management_system_project — automotive_shop_management_system Automotive Shop Management System v1.0 was discovered to contain a SQL injection vulnerability via the id parameter at /asms/admin/products/manage_product.php. 2022-11-25 7.2 CVE-2022-44859
MISC automotive_shop_management_system_project — automotive_shop_management_system Automotive Shop Management System v1.0 was discovered to contain a SQL injection vulnerability via the id parameter at /admin/transactions/update_status.php. 2022-11-25 7.2 CVE-2022-44860
MISC avs4you — avs_audio_converter AVS Audio Converter 10.3 is vulnerable to Buffer Overflow. 2022-11-28 9.8 CVE-2022-44283
MISC belden — hirschmann_bat-c2_firmware The web server of Hirschmann BAT-C2 before 09.13.01.00R04 allows authenticated command injection. This allows an authenticated attacker to pass commands to the shell of the system because the dir parameter of the FsCreateDir Ajax function is not sufficiently sanitized. The vendor’s ID is BSECV-2022-21. 2022-11-25 8.8 CVE-2022-40282
MISC
FULLDISC
MISC book_store_management_system_project — book_store_management_system A vulnerability classified as critical was found in SourceCodester Book Store Management System 1.0. This vulnerability affects unknown code of the file /bsms_ci/index.php. The manipulation leads to improper access controls. The attack can be initiated remotely. The exploit has been disclosed to the public and may be used. The identifier of this vulnerability is VDB-214588. 2022-11-30 9.8 CVE-2022-4229
MISC
MISC book_store_management_system_project — book_store_management_system Book Store Management System v1.0 was discovered to contain hardcoded credentials which allows attackers to escalate privileges and access the admin panel. 2022-11-30 9.8 CVE-2022-44097
MISC book_store_management_system_project — book_store_management_system A vulnerability classified as problematic has been found in SourceCodester Book Store Management System 1.0. This affects an unknown part of the file /bsms_ci/index.php/user/edit_user/. The manipulation of the argument password leads to information disclosure. It is possible to initiate the attack remotely. The exploit has been disclosed to the public and may be used. The associated identifier of this vulnerability is VDB-214587. 2022-11-30 7.5 CVE-2022-4228
MISC
MISC botan_project — botan In Botan before 2.19.3, it is possible to forge OCSP responses due to a certificate verification error. This issue was introduced in Botan 1.11.34 (November 2016). 2022-11-27 9.1 CVE-2022-43705
MISC
CONFIRM canteen_management_system_project — canteen_management_system A vulnerability was found in SourceCodester Canteen Management System. It has been rated as critical. This issue affects the function query of the file ajax_invoice.php of the component POST Request Handler. The manipulation of the argument search leads to sql injection. The attack may be initiated remotely. The exploit has been disclosed to the public and may be used. The associated identifier of this vulnerability is VDB-214523. 2022-11-30 9.8 CVE-2022-4222
MISC
MISC church_management_system_project — church_management_system Church Management System v1.0 was discovered to contain a SQL injection vulnerability via the id parameter at /admin/edit_members.php. 2022-11-30 7.2 CVE-2022-45328
MISC contec — solarview_compact_firmware SolarView Compact 4.0 and 5.0 is vulnerable to Unrestricted File Upload via a crafted php file. 2022-11-29 9.8 CVE-2022-44354
MISC decode-uri-component_project — decode-uri-component decode-uri-component 0.2.0 is vulnerable to Improper Input Validation resulting in DoS. 2022-11-28 7.5 CVE-2022-38900
MISC
MISC discourse — discourse_bbcode discourse-bbcode is the official BBCode plugin for Discourse. Prior to commit 91478f5, CSS injection can occur when rendering content generated with the discourse-bccode plugin. This vulnerability only affects sites which have the discourse-bbcode plugin installed and enabled. This issue is patched in commit 91478f5. As a workaround, ensure that the Content Security Policy is enabled and monitor any posts that contain bbcode. 2022-11-30 9.8 CVE-2022-46162
MISC
CONFIRM dlink — dnr-322l_firmware Data Integrity Failure in ‘Backup Config’ in D-Link DNR-322L <= 2.60B15 allows an authenticated attacker to execute OS level commands on the device. 2022-11-29 8.8 CVE-2022-40799
MISC drachtio — drachtio-server drachtio-server 0.8.18 has a heap-based buffer over-read via a long Request-URI in an INVITE request. 2022-11-26 9.1 CVE-2022-45909
MISC dwbooster — appointment_hour_booking The Appointment Hour Booking Plugin for WordPress is vulnerable to CSV Injection in versions up to, and including, 1.3.72. This makes it possible for unauthenticated attackers to embed untrusted input into content during booking creation that may be exported as a CSV file when a site’s administrator exports booking details. This can result in code execution when these files are downloaded and opened on a local system with a vulnerable configuration. 2022-11-29 7.8 CVE-2022-4034
MISC
MISC epson — tm-c3500_firmware The WebConfig functionality of Epson TM-C3500 and TM-C7500 devices with firmware version WAM31500 allows authentication bypass. 2022-11-25 9.1 CVE-2022-36133
MISC
MISC etm-s — ondiskplayeragent Remote code execution vulnerability due to insufficient verification of URLs, etc. in OndiskPlayerAgent. A remote attacker could exploit the vulnerability to cause remote code execution by causing an arbitrary user to download and execute malicious code. 2022-11-25 7.8 CVE-2022-41156
MISC event_registration_system_project — event_registration_system A vulnerability, which was classified as critical, was found in SourceCodester Event Registration System 1.0. Affected is an unknown function. The manipulation of the argument cmd leads to unrestricted upload. It is possible to launch the attack remotely. VDB-214590 is the identifier assigned to this vulnerability. 2022-11-30 9.8 CVE-2022-4232
MISC eyoom — eyoom_builder Remote code execution vulnerability can be achieved by using cookie values as paths to a file by this builder program. A remote attacker could exploit the vulnerability to execute or inject malicious code. 2022-11-25 9.8 CVE-2022-41158
MISC f-secure — elements_endpoint_protection In F-Secure Endpoint Protection for Windows and macOS before channel with Capricorn database 2022-11-22_07, the aerdl.dll unpacker handler crashes. This can lead to a scanning engine crash, triggerable remotely by an attacker for denial of service. 2022-11-25 7.5 CVE-2022-38166
MISC festo — multiple_products
  In multiple products by Festo a remote unauthenticated attacker could use functions of an undocumented protocol which could lead to a complete loss of confidentiality, integrity and availability. 2022-12-01 9.8 CVE-2022-3270
MISC ff4j — ff4j ff4j 1.8.1 is vulnerable to Remote Code Execution (RCE). 2022-12-01 9.8 CVE-2022-44262
MISC freeamigos — manage_notification_e-mails Cross-Site Request Forgery (CSRF) in Virgial Berveling’s Manage Notification E-mails plugin <= 1.8.2 on WordPress. 2022-11-28 8.8 CVE-2022-34654
MISC fusionauth — fusionauth FusionAuth before 1.41.3 allows a file outside of the application root to be viewed or retrieved using an HTTP request. To be specific, an attacker may be able to view or retrieve any file readable by the user running the FusionAuth process. 2022-11-28 7.5 CVE-2022-45921
MISC
MISC gnu — emacs GNU Emacs through 28.2 allows attackers to execute commands via shell metacharacters in the name of a source-code file, because lib-src/etags.c uses the system C library function in its implementation of the ctags program. For example, a victim may use the “ctags *” command (suggested in the ctags documentation) in a situation where the current working directory has contents that depend on untrusted input. 2022-11-28 7.8 CVE-2022-45939
MISC gnu — libredwg LibreDWG v0.12.4.4643 was discovered to contain a heap buffer overflow via the function decode_preR13_section_hdr at decode_r11.c. 2022-11-30 7.8 CVE-2022-45332
MISC google — chrome Heap buffer overflow in GPU in Google Chrome prior to 107.0.5304.121 allowed a remote attacker who had compromised the renderer process to potentially perform a sandbox escape via a crafted HTML page. (Chromium security severity: High) 2022-11-25 9.6 CVE-2022-4135
MISC
MISC google — chrome Type confusion in V8 in Google Chrome prior to 108.0.5359.71 allowed a remote attacker to potentially exploit heap corruption via a crafted HTML page. (Chromium security severity: High) 2022-11-30 8.8 CVE-2022-4174
MISC
MISC google — chrome Use after free in Camera Capture in Google Chrome prior to 108.0.5359.71 allowed a remote attacker to potentially exploit heap corruption via a crafted HTML page. (Chromium security severity: High) 2022-11-30 8.8 CVE-2022-4175
MISC
MISC google — chrome Out of bounds write in Lacros Graphics in Google Chrome on Chrome OS and Lacros prior to 108.0.5359.71 allowed a remote attacker who convinced a user to engage in specific UI interactions to potentially exploit heap corruption via UI interactions. (Chromium security severity: High) 2022-11-30 8.8 CVE-2022-4176
MISC
MISC google — chrome Use after free in Extensions in Google Chrome prior to 108.0.5359.71 allowed an attacker who convinced a user to install an extension to potentially exploit heap corruption via a crafted Chrome Extension and UI interaction. (Chromium security severity: High) 2022-11-30 8.8 CVE-2022-4177
MISC
MISC google — chrome Use after free in Mojo in Google Chrome prior to 108.0.5359.71 allowed a remote attacker who had compromised the renderer process to potentially exploit heap corruption via a crafted HTML page. (Chromium security severity: High) 2022-11-30 8.8 CVE-2022-4178
MISC
MISC google — chrome Use after free in Audio in Google Chrome prior to 108.0.5359.71 allowed an attacker who convinced a user to install a malicious extension to potentially exploit heap corruption via a crafted Chrome Extension. (Chromium security severity: High) 2022-11-30 8.8 CVE-2022-4179
MISC
MISC google — chrome Use after free in Mojo in Google Chrome prior to 108.0.5359.71 allowed an attacker who convinced a user to install a malicious extension to potentially exploit heap corruption via a crafted Chrome Extension. (Chromium security severity: High) 2022-11-30 8.8 CVE-2022-4180
MISC
MISC google — chrome Use after free in Forms in Google Chrome prior to 108.0.5359.71 allowed a remote attacker to potentially exploit heap corruption via a crafted HTML page. (Chromium security severity: High) 2022-11-30 8.8 CVE-2022-4181
MISC
MISC google — chrome Insufficient data validation in Directory in Google Chrome prior to 108.0.5359.71 allowed a remote attacker to bypass file system restrictions via a crafted HTML page. (Chromium security severity: Medium) 2022-11-30 8.8 CVE-2022-4190
MISC
MISC google — chrome Use after free in Sign-In in Google Chrome prior to 108.0.5359.71 allowed a remote attacker who convinced a user to engage in specific UI interaction to potentially exploit heap corruption via profile destruction. (Chromium security severity: Medium) 2022-11-30 8.8 CVE-2022-4191
MISC
MISC google — chrome Use after free in Live Caption in Google Chrome prior to 108.0.5359.71 allowed a remote attacker who convinced a user to engage in specific UI interaction to potentially exploit heap corruption via UI interaction. (Chromium security severity: Medium) 2022-11-30 8.8 CVE-2022-4192
MISC
MISC google — chrome Insufficient policy enforcement in File System API in Google Chrome prior to 108.0.5359.71 allowed a remote attacker to bypass file system restrictions via a crafted HTML page. (Chromium security severity: Medium) 2022-11-30 8.8 CVE-2022-4193
MISC
MISC google — chrome Use after free in Accessibility in Google Chrome prior to 108.0.5359.71 allowed a remote attacker to potentially exploit heap corruption via a crafted HTML page. (Chromium security severity: Medium) 2022-11-30 8.8 CVE-2022-4194
MISC
MISC gpac — gpac A vulnerability, which was classified as problematic, was found in GPAC 2.1-DEV-rev490-g68064e101-master. Affected is the function lsr_translate_coords of the file laser/lsr_dec.c. The manipulation leads to integer overflow. It is possible to launch the attack remotely. The exploit has been disclosed to the public and may be used. VDB-214518 is the identifier assigned to this vulnerability. 2022-11-29 8.8 CVE-2022-4202
N/A
N/A gpac — gpac GPAC v2.1-DEV-rev428-gcb8ae46c8-master was discovered to contain a stack overflow via the function dimC_box_read at isomedia/box_code_3gpp.c. 2022-11-29 7.8 CVE-2022-45202
MISC gpac — gpac GPAC v2.1-DEV-rev478-g696e6f868-master was discovered to contain a heap use-after-free via the Q_IsTypeOn function at /gpac/src/bifs/unquantize.c. 2022-11-29 7.8 CVE-2022-45343
MISC ibericode — html_forms The HTML Forms WordPress plugin before 1.3.25 does not properly properly escape a parameter before using it in a SQL statement, leading to a SQL injection exploitable by high privilege users 2022-11-28 7.2 CVE-2022-3689
MISC jeecg — jeecg_boot Jeecg-boot v3.4.3 was discovered to contain a SQL injection vulnerability via the component /sys/duplicate/check. 2022-11-25 9.8 CVE-2022-45206
MISC
MISC jeecg — jeecg_boot Jeecg-boot v3.4.3 was discovered to contain a SQL injection vulnerability via the component updateNullByEmptyString. 2022-11-25 9.8 CVE-2022-45207
MISC
MISC kakaocorp — potplayer A vulnerability classified as problematic has been found in Kakao PotPlayer. This affects an unknown part of the component MID File Handler. The manipulation leads to denial of service. It is possible to initiate the attack remotely. The exploit has been disclosed to the public and may be used. The associated identifier of this vulnerability is VDB-214623. 2022-12-01 7.5 CVE-2022-4246
N/A
N/A
N/A kubeview_project — kubeview KubeView through 0.1.31 allows attackers to obtain control of a Kubernetes cluster because api/scrape/kube-system does not require authentication, and retrieves certificate files that can be used for authentication as kube-admin. NOTE: the vendor’s position is that KubeView was a “fun side project and a learning exercise,” and not “very secure.” 2022-11-27 9.8 CVE-2022-45933
MISC linecorp — line LINE client for iOS before 12.17.0 might be crashed by sharing an invalid shared key of e2ee in group chat. 2022-11-29 7.5 CVE-2022-41568
MISC linux — linux_kernel An issue was discovered in the Linux kernel through 6.0.10. l2cap_config_req in net/bluetooth/l2cap_core.c has an integer wraparound via L2CAP_CONF_REQ packets. 2022-11-27 7.8 CVE-2022-45934
MISC linux — linux_kernel An issue was discovered in the Linux kernel through 6.0.9. drivers/media/dvb-core/dvbdev.c has a use-after-free, related to dvb_register_device dynamically allocating fops. 2022-11-25 7 CVE-2022-45884
MISC
MISC linux — linux_kernel An issue was discovered in the Linux kernel through 6.0.9. drivers/media/dvb-core/dvb_frontend.c has a race condition that can cause a use-after-free when a device is disconnected. 2022-11-25 7 CVE-2022-45885
MISC
MISC linux — linux_kernel An issue was discovered in the Linux kernel through 6.0.9. drivers/media/dvb-core/dvb_net.c has a .disconnect versus dvb_device_open race condition that leads to a use-after-free. 2022-11-25 7 CVE-2022-45886
MISC
MISC linux — linux_kernel An issue was discovered in the Linux kernel through 6.0.10. In drivers/media/dvb-core/dvb_ca_en50221.c, a use-after-free can occur is there is a disconnect after an open, because of the lack of a wait_event. 2022-11-27 7 CVE-2022-45919
MISC linuxfoundation — opendaylight A SQL injection issue was discovered in AAA in OpenDaylight (ODL) before 0.16.5. The aaa-idm-store-h2/src/main/java/org/opendaylight/aaa/datastore/h2/DomainStore.java deleteDomain function is affected for the /auth/v1/domains/ API interface. 2022-11-27 7.5 CVE-2022-45930
MISC
MISC linuxfoundation — opendaylight A SQL injection issue was discovered in AAA in OpenDaylight (ODL) before 0.16.5. The aaa-idm-store-h2/src/main/java/org/opendaylight/aaa/datastore/h2/UserStore.java deleteUser function is affected when the API interface /auth/v1/users/ is used. 2022-11-27 7.5 CVE-2022-45931
MISC
MISC linuxfoundation — opendaylight A SQL injection issue was discovered in AAA in OpenDaylight (ODL) before 0.16.5. The aaa-idm-store-h2/src/main/java/org/opendaylight/aaa/datastore/h2/RoleStore.java deleteRole function is affected when the API interface /auth/v1/roles/ is used. 2022-11-27 7.5 CVE-2022-45932
MISC
MISC linuxfoundation — pytorch In PyTorch before trunk/89695, torch.jit.annotations.parse_type_line can cause arbitrary code execution because eval is used unsafely. 2022-11-26 9.8 CVE-2022-45907
MISC
MISC mitsubishielectric — gx_works3 Use of Hard-coded Cryptographic Key vulnerability in Mitsubishi Electric GX Works3 all versions allows a remote unauthenticated attacker to disclose or tamper with sensitive information. As a result, unauthorized users may obtain information about project files illegally. 2022-11-25 9.1 CVE-2022-29830
MISC
MISC mitsubishielectric — gx_works3 Cleartext Storage of Sensitive Information vulnerability in Mitsubishi Electric GX Works3 all versions and Mitsubishi Electric MX OPC UA Module Configurator-R all versions allows a remote unauthenticated attacker to disclose sensitive information. As a result, unauthorized users can gain unauthorized access to the CPU module and the OPC UA server module. 2022-11-25 7.5 CVE-2022-25164
MISC
MISC mitsubishielectric — gx_works3 Use of Hard-coded Password vulnerability in Mitsubishi Electric GX Works3 all versions allows an unauthenticated attacker to disclose sensitive information. As a result, unauthorized users may view or execute programs illegally. 2022-11-25 7.5 CVE-2022-29825
MISC
MISC mitsubishielectric — gx_works3 Cleartext Storage of Sensitive Information vulnerability in Mitsubishi Electric GX Works3 versions 1.086Q and prior allows a remote unauthenticated attacker to disclose sensitive information. As a result, unauthorized users may view or execute programs illegally. 2022-11-25 7.5 CVE-2022-29826
MISC
MISC mitsubishielectric — gx_works3 Use of Hard-coded Cryptographic Key vulnerability in Mitsubishi Electric GX Works3 all versions allows a remote unauthenticated attacker to disclose sensitive information. As a result, unauthorized users may view or execute programs illegally. 2022-11-25 7.5 CVE-2022-29827
MISC
MISC mitsubishielectric — gx_works3 Use of Hard-coded Cryptographic Key vulnerability in Mitsubishi Electric GX Works3 all versions allows a remote unauthenticated attacker to disclose sensitive information. As a result, unauthorized users may view or execute programs illegally. 2022-11-25 7.5 CVE-2022-29828
MISC
MISC mitsubishielectric — gx_works3 Use of Hard-coded Cryptographic Key vulnerability in Mitsubishi Electric GX Works3 all versions allows a remote unauthenticated attacker to disclose sensitive information . As a result, unauthorized users may view or execute programs illegally. 2022-11-25 7.5 CVE-2022-29829
MISC
MISC mitsubishielectric — gx_works3 Use of Hard-coded Password vulnerability in Mitsubishi Electric Corporation GX Works3 versions 1.015R and later allows a remote unauthorized attacker to obtain information about the project file for MELSEC safety CPU modules. 2022-11-25 7.5 CVE-2022-29831
MISC
MISC moodle — moodle A blind Server-Side Request Forgery (SSRF) vulnerability was found in Moodle. This flaw exists due to insufficient validation of user-supplied input in LTI provider library. The library does not utilise Moodle’s inbuilt cURL helper, which resulted in a blind SSRF risk. An attacker can send a specially crafted HTTP request and trick the application to initiate requests to arbitrary systems. This vulnerability allows a remote attacker to perform SSRF attacks. 2022-11-25 9.1 CVE-2022-45152
MISC
MISC
MISC movie_ticket_booking_system_project — movie_ticket_booking_system A vulnerability classified as critical was found in Movie Ticket Booking System. This vulnerability affects unknown code of the file booking.php. The manipulation of the argument id leads to sql injection. The attack can be initiated remotely. The exploit has been disclosed to the public and may be used. The identifier of this vulnerability is VDB-214624. 2022-12-01 9.8 CVE-2022-4247
N/A
N/A movie_ticket_booking_system_project — movie_ticket_booking_system A vulnerability, which was classified as critical, has been found in Movie Ticket Booking System. This issue affects some unknown processing of the file editBooking.php. The manipulation of the argument id leads to sql injection. The attack may be initiated remotely. The exploit has been disclosed to the public and may be used. The identifier VDB-214625 was assigned to this vulnerability. 2022-12-01 9.8 CVE-2022-4248
N/A
N/A moxa — uc-2101-lx_firmware UC-8100A-ME-T System Image: Versions v1.0 to v1.6, UC-2100 System Image: Versions v1.0 to v1.12, UC-2100-W System Image: Versions v1.0 to v 1.12, UC-3100 System Image: Versions v1.0 to v1.6, UC-5100 System Image: Versions v1.0 to v1.4, UC-8100 System Image: Versions v3.0 to v3.5, UC-8100-ME-T System Image: Versions v3.0 and v3.1, UC-8100A-ME-T System Image: Versions v1.0 to v1.6, UC-8200 System Image: v1.0 to v1.5, AIG-300 System Image: v1.0 to v1.4, UC-8410A with Debian 9 System Image: Versions v4.0.2 and v4.1.2, UC-8580 with Debian 9 System Image: Versions v2.0 and v2.1, UC-8540 with Debian 9 System Image: Versions v2.0 and v2.1, and DA-662C-16-LX (GLB) System Image: Versions v1.0.2 to v1.1.2 of Moxa’s ARM-based computers have an execution with unnecessary privileges vulnerability, which could allow an attacker with user-level privileges to gain root privileges. 2022-11-28 7.8 CVE-2022-3088
MISC msi — center An issue in the component MSI.TerminalServer.exe of MSI Center v1.0.41.0 allows attackers to escalate privileges via a crafted TCP packet. 2022-11-28 8.8 CVE-2022-31877
MISC
MISC muhammara_project — muhammara Muhammara is a node module with c/cpp bindings to modify PDF with JavaScript for node or electron. The package muhammara before 2.6.2 and from 3.0.0 and before 3.3.0, as well as all versions of muhammara’s predecessor package hummus, are vulnerable to Denial of Service (DoS) when supplied with a maliciously crafted PDF file to be parsed. The issue has been patched in muhammara version 3.4.0 and the fix has been backported to version 2.6.2. As a workaround, do not process files from untrusted sources. If using hummus, replace the package with muhammara. 2022-11-28 7.5 CVE-2022-41957
MISC
CONFIRM
MISC octopus — octopus_server In affected versions of Octopus Server it is possible for target discovery to print certain values marked as sensitive to log files in plaint-text in when verbose logging is enabled. 2022-11-25 7.5 CVE-2022-2721
MISC online-shopping-system-advanced_project — online-shopping-system-advanced Online-shopping-system-advanced 1.0 was discovered to contain a SQL injection vulnerability via the p parameter at /shopping/product.php. 2022-11-29 9.8 CVE-2022-42109
MISC
MISC online_tours_&_travels_management_system_project — online_tours_&_travels_management_system Online Tours & Travels Management System v1.0 contains an arbitrary file upload vulnerability via /tour/admin/file.php. 2022-11-28 9.8 CVE-2022-44401
MISC op-tee — op-tee_os OP-TEE Trusted OS is the secure side implementation of OP-TEE project, a Trusted Execution Environment. Versions prior to 3.19.0, contain an Improper Validation of Array Index vulnerability. The function `cleanup_shm_refs()` is called by both `entry_invoke_command()` and `entry_open_session()`. The commands `OPTEE_MSG_CMD_OPEN_SESSION` and `OPTEE_MSG_CMD_INVOKE_COMMAND` can be executed from the normal world via an OP-TEE SMC. This function is not validating the `num_params` argument, which is only limited to `OPTEE_MSG_MAX_NUM_PARAMS` (127) in the function `get_cmd_buffer()`. Therefore, an attacker in the normal world can craft an SMC call that will cause out-of-bounds reading in `cleanup_shm_refs` and potentially freeing of fake-objects in the function `mobj_put()`. A normal-world attacker with permission to execute SMC instructions may exploit this flaw. Maintainers believe this problem permits local privilege escalation from the normal world to the secure world. Version 3.19.0 contains a fix for this issue. There are no known workarounds. 2022-11-29 8.8 CVE-2022-46152
MISC
MISC
MISC
CONFIRM orchardcore — orchard_cms Orchardproject Orchard CMS 1.10.3 is vulnerable to Cross Site Scripting (XSS). When a low privileged user such as an author or publisher, injects a crafted html and javascript payload in a blog post, leading to full admin account takeover or privilege escalation when the malicious blog post is loaded in the victim’s browser. 2022-11-25 9 CVE-2022-37720
MISC
MISC
MISC owncast_project — owncast SQL Injection in GitHub repository owncast/owncast prior to 0.0.13. 2022-11-29 9.8 CVE-2022-3751
CONFIRM
MISC paddlepaddle — paddlepaddle In PaddlePaddle before 2.4, paddle.audio.functional.get_window is vulnerable to code injection because it calls eval on a user-supplied winstr. This may lead to arbitrary code execution. 2022-11-26 9.8 CVE-2022-45908
MISC
MISC perfsonar — perfsonar An issue in the graphData.cgi component of perfSONAR v4.4.5 and prior allows attackers to access sensitive data and execute Server-Side Request Forgery (SSRF) attacks. 2022-11-30 8.6 CVE-2022-41412
MISC
MISC phpgurukul_blood_donor_management_system_project — phpgurukul_blood_donor_management_system PHPGurukul Blood Donor Management System 1.0 does not properly restrict access to admin/dashboard.php, which allows attackers to access all data of users, delete the users, add and manage Blood Group, and Submit Report. 2022-11-25 8.1 CVE-2022-38813
MISC
MISC
MISC
MISC piwebsolution — export_customers_list_csv_for_woocommerce The Export customers list csv for WooCommerce, WordPress users csv, export Guest customer list WordPress plugin before 2.0.69 does not validate data when outputting it back in a CSV file, which could lead to CSV injection. 2022-11-28 9.8 CVE-2022-3603
MISC poultry_farm_management_system_project — poultry_farm_management_system Poultry Farm Management System v1.0 contains a SQL injection vulnerability via the del parameter at /Redcock-Farm/farm/category.php. 2022-11-28 9.8 CVE-2022-44399
MISC prometheus — exporter_toolkit Prometheus Exporter Toolkit is a utility package to build exporters. Prior to versions 0.7.2 and 0.8.2, i someone has access to a Prometheus web.yml file and users’ bcrypted passwords, they can bypass security by poisoning the built-in authentication cache. Versions 0.7.2 and 0.8.2 contain a fix for the issue. There is no workaround, but attacker must have access to the hashed password to use this functionality. 2022-11-29 8.8 CVE-2022-46146
CONFIRM
MISC
MLIST
MLIST
MLIST purchase_order_management_system_project — purchase_order_management_system Purchase Order Management System v1.0 contains a file upload vulnerability via /purchase_order/admin/?page=system_info. 2022-11-28 9.8 CVE-2022-44400
MISC pyrocms — pyrocms PyroCMS 3.9 is vulnerable to a stored Cross Site Scripting (XSS_ when a low privileged user such as an author, injects a crafted html and javascript payload in a blog post, leading to full admin account takeover or privilege escalation. 2022-11-25 9 CVE-2022-37721
MISC
MISC qs_project — qs qs before 6.10.3, as used in Express before 4.17.3 and other products, allows attackers to cause a Node process hang for an Express application because an __ proto__ key can be used. In many typical Express use cases, an unauthenticated remote attacker can place the attack payload in the query string of the URL that is used to visit the application, such as a[__proto__]=b&a[__proto__]&a[length]=100000000. The fix was backported to qs 6.9.7, 6.8.3, 6.7.3, 6.6.1, 6.5.3, 6.4.1, 6.3.3, and 6.2.4 (and therefore Express 4.17.3, which has “deps: qs@6.9.7” in its release description, is not vulnerable). 2022-11-26 7.5 CVE-2022-24999
MISC
CONFIRM
CONFIRM raidenmaild — raidenmaild A remote attacker with general user privilege can inject malicious code in the form content of Raiden MAILD Mail Server website. Other users export form content as CSV file can trigger arbitrary code execution and allow the attacker to perform arbitrary system operation or disrupt service on the user side. 2022-11-29 8 CVE-2022-41675
MISC russound — xsourceplayer_777d_firmware Russound XSourcePlayer 777D v06.08.03 was discovered to contain a remote code execution vulnerability via the scriptRunner.cgi component. 2022-11-29 9.8 CVE-2022-44038
MISC saml_project — saml The crewjam/saml go library prior to version 0.4.9 is vulnerable to an authentication bypass when processing SAML responses containing multiple Assertion elements. This issue has been corrected in version 0.4.9. There are no workarounds other than upgrading to a fixed version. 2022-11-28 9.8 CVE-2022-41912
MISC
CONFIRM samtools — htsjdk The package com.github.samtools:htsjdk before 3.0.1 are vulnerable to Creation of Temporary File in Directory with Insecure Permissions due to the createTempDir() function in util/IOUtil.java not checking for the existence of the temporary directory before attempting to create it. 2022-11-29 7.8 CVE-2022-21126
MISC
MISC
MISC sanitization_management_system_project — sanitization_management_system Sanitization Management System v1.0 was discovered to contain hardcoded credentials which allows attackers to escalate privileges and access the admin panel. 2022-11-30 9.8 CVE-2022-44096
MISC sanitization_management_system_project — sanitization_management_system Simple Inventory Management System v1.0 is vulnerable to SQL Injection via /ims/login.php. 2022-11-30 9.8 CVE-2022-44151
MISC sanitization_management_system_project — sanitization_management_system Sanitization Management System v1.0 is vulnerable to SQL Injection via /php-sms/classes/Master.php?f=delete_product. 2022-12-02 7.2 CVE-2022-44277
MISC sanitization_management_system_project — sanitization_management_system Sanitization Management System v1.0 is vulnerable to SQL Injection via /php-sms/admin/?page=services/manage_service&id=. 2022-11-30 7.2 CVE-2022-44294
MISC sanitization_management_system_project — sanitization_management_system Sanitization Management System v1.0 is vulnerable to SQL Injection via /php-sms/admin/orders/assign_team.php?id=. 2022-11-30 7.2 CVE-2022-44295
MISC sanitization_management_system_project — sanitization_management_system Sanitization Management System v1.0 is vulnerable to SQL Injection via /php-sms/admin/quotes/manage_remark.php?id=. 2022-11-30 7.2 CVE-2022-44296
MISC sanitization_management_system_project — sanitization_management_system Sanitization Management System v1.0 is vulnerable to SQL Injection via /php-sms/admin/?page=quotes/view_quote&id=. 2022-12-02 7.2 CVE-2022-44345
MISC sanitization_management_system_project — sanitization_management_system Sanitization Management System v1.0 is vulnerable to SQL Injection via /php-sms/admin/?page=inquiries/view_inquiry&id=. 2022-12-02 7.2 CVE-2022-44347
MISC sanitization_management_system_project — sanitization_management_system Sanitization Management System v1.0 is vulnerable to SQL Injection via /php-sms/admin/orders/update_status.php?id=. 2022-12-02 7.2 CVE-2022-44348
MISC sapido — br270n_firmware A vulnerability was found in Sapido BR270n, BRC76n, GR297 and RB1732 and classified as critical. Affected by this issue is some unknown functionality of the file ip/syscmd.htm. The manipulation leads to os command injection. The attack may be launched remotely. The exploit has been disclosed to the public and may be used. The identifier of this vulnerability is VDB-214592. 2022-11-30 8.8 CVE-2021-4242
MISC
MISC
MISC school_management_system_project — school_management_system SQL injection in School Management System 1.0 allows remote attackers to modify or delete data, causing persistent changes to the application’s content or behavior by using malicious SQL queries. 2022-11-28 9.8 CVE-2022-36193
MISC
MISC simple-press — simple The Simple:Press plugin for WordPress is vulnerable to Path Traversal in versions up to, and including, 6.8 via the ‘file’ parameter which can be manipulated during user avatar deletion. This makes it possible with attackers, with minimal permissions such as a subscriber, to supply paths to arbitrary files on the server that will subsequently be deleted. This can be used to delete the wp-config.php file that can allow an attacker to configure the site and achieve remote code execution. 2022-11-29 8.1 CVE-2022-4030
MISC
MISC sinatrarb — sinatra Sinatra is a domain-specific language for creating web applications in Ruby. An issue was discovered in Sinatra 2.0 before 2.2.3 and 3.0 before 3.0.4. An application is vulnerable to a reflected file download (RFD) attack that sets the Content-Disposition header of a response when the filename is derived from user-supplied input. Version 2.2.3 and 3.0.4 contain patches for this issue. 2022-11-28 8.8 CVE-2022-45442
MISC
MISC
CONFIRM
MISC snyk — snyk_security The package snyk before 1.1064.0 are vulnerable to Code Injection when analyzing a project. An attacker who can convince a user to scan a malicious project can include commands in a build file such as build.gradle or gradle-wrapper.jar, which will be executed with the privileges of the application. This vulnerability may be triggered when running the the CLI tool directly, or when running a scan with one of the IDE plugins that invoke the Snyk CLI. Successful exploitation of this issue would likely require some level of social engineering – to coerce an untrusted project to be downloaded and analyzed via the Snyk CLI or opened in an IDE where a Snyk IDE plugin is installed and enabled. Additionally, if the IDE has a Trust feature then the target folder must be marked as ‘trusted’ in order to be vulnerable. **NOTE:** This issue is independent of the one reported in [CVE-2022-40764](https://security.snyk.io/vuln/SNYK-JS-SNYK-3037342), and upgrading to a fixed version for this addresses that issue as well. The affected IDE plugins and versions are: – VS Code – Affected: <=1.8.0, Fixed: 1.9.0 – IntelliJ – Affected: <=2.4.47, Fixed: 2.4.48 – Visual Studio – Affected: <=1.1.30, Fixed: 1.1.31 – Eclipse – Affected: <=v20221115.132308, Fixed: All subsequent versions – Language Server – Affected: <=v20221109.114426, Fixed: All subsequent versions 2022-11-30 8.8 CVE-2022-24441
MISC
MISC
MISC
MISC
MISC
MISC
MISC solarwinds — orion_platform SolarWinds Platform was susceptible to Improper Input Validation. This vulnerability allows a remote adversary with valid access to SolarWinds Web Console to escalate user privileges. 2022-11-29 8.8 CVE-2022-36960
MISC
MISC solarwinds — orion_platform SolarWinds Platform was susceptible to the Deserialization of Untrusted Data. This vulnerability allows a remote adversary with valid access to SolarWinds Web Console to execute arbitrary commands. 2022-11-29 8.8 CVE-2022-36964
MISC
MISC solarwinds — orion_platform SolarWinds Platform was susceptible to Command Injection. This vulnerability allows a remote adversary with complete control over the SolarWinds database to execute arbitrary commands. 2022-11-29 7.2 CVE-2022-36962
MISC
MISC sophos — xg_firewall_firmware A stored XSS vulnerability allows admin to super-admin privilege escalation in the Webadmin import group wizard of Sophos Firewall older than version 19.5 GA. 2022-12-01 8.4 CVE-2022-3709
CONFIRM spatie — browsershot Browsershot version 3.57.2 allows an external attacker to remotely obtain arbitrary local files. This is possible because the application does not validate the URL protocol passed to the Browsershot::url method. 2022-11-25 8.2 CVE-2022-41706
MISC
MISC squirrly — seo_plugin_by_squirrly_seo Auth. (contributor+) Arbitrary File Upload in SEO Plugin by Squirrly SEO plugin <= 12.1.10 on WordPress. 2022-11-28 8.8 CVE-2022-38140
MISC static-dev-server_project — static-dev-server This affects all versions of package static-dev-server. This is because when paths from users to the root directory are joined, the assets for the path accessed are relative to that of the root directory. 2022-11-29 7.5 CVE-2022-25848
MISC
MISC super_xray_project — super_xray super-xray is a web vulnerability scanning tool. Versions prior to 0.7 assumed trusted input for the program config which is stored in a yaml file. An attacker with local access to the file could exploit this and compromise the program. This issue has been addressed in commit `4d0d5966` and will be included in future releases. Users are advised to upgrade. There are no known workarounds for this issue. 2022-11-25 7.8 CVE-2022-41958
MISC
CONFIRM sz-fujia — ourphoto The user_id and device_id on the Ourphoto App version 1.4.1 /device/* end-points both suffer from insecure direct object reference vulnerabilities. Other end-users user_id and device_id values can be enumerated by incrementing or decrementing id numbers. The impact of this vulnerability allows an attacker to discover sensitive information such as end-user email addresses, and their unique frame_token value of all other Ourphoto App end-users. 2022-11-28 7.5 CVE-2022-24187
MISC
MISC sz-fujia — ourphoto The /device/signin end-point for the Ourphoto App version 1.4.1 discloses clear-text password information for functionality within the picture frame devices. The deviceVideoCallPassword and mqttPassword are returned in clear-text. The lack of sessions management and presence of insecure direct object references allows to return password information for other end-users devices. Many of the picture frame devices offer video calling, and it is likely this information can be used to abuse that functionality. 2022-11-28 7.5 CVE-2022-24188
MISC sz-fujia — ourphoto The /device/acceptBind end-point for Ourphoto App version 1.4.1 does not require authentication or authorization. The user_token header is not implemented or present on this end-point. An attacker can send a request to bind their account to any users picture frame, then send a POST request to accept their own bind request, without the end-users approval or interaction. 2022-11-28 7.5 CVE-2022-24190
MISC telos — alliance_omnia_mpx_node_firmware An Insecure Direct Object Reference (IDOR) vulnerability in the password reset function of Telos Alliance Omnia MPX Node 1.0.0-1.4.[*] allows attackers to arbitrarily change user and Administrator account passwords. 2022-11-29 7.5 CVE-2022-43326
MISC tenda — tx9_pro_firmware Tenda TX9 Pro v22.03.02.10 was discovered to contain a stack overflow via the list parameter at /goform/SetIpMacBind. 2022-11-30 7.5 CVE-2022-45337
MISC themehigh — checkout_field_editor_for_woocommerce The Checkout Field Editor (Checkout Manager) for WooCommerce WordPress plugin before 1.8.0 unserializes user input provided via the settings, which could allow high privilege users such as admin to perform PHP Object Injection when a suitable gadget is present 2022-11-28 7.2 CVE-2022-3490
MISC thinkcmf — thinkcmf ThinkCMF version 6.0.7 is affected by a Cross Site Request Forgery (CSRF) vulnerability that allows a Super Administrator user to be injected into administrative users. 2022-12-01 8.8 CVE-2022-40489
MISC tiny_file_manager_project — tiny_file_manager Tiny File Manager version 2.4.8 allows an unauthenticated remote attacker to execute arbitrary code remotely on the server. This is possible because the application is vulnerable to CSRF, processes uploaded files server-side (instead of just returning them for download), and allows unauthenticated users to access uploaded files. 2022-11-25 8.8 CVE-2022-23044
MISC
MISC tiny_file_manager_project — tiny_file_manager Tiny File Manager version 2.4.8 allows an unauthenticated remote attacker to execute arbitrary code remotely on the server. This is possible because the application is vulnerable to CSRF, processes uploaded files server-side (instead of just returning them for download), and allows unauthenticated users to access uploaded files. 2022-11-25 8.8 CVE-2022-45475
MISC
MISC tiny_file_manager_project — tiny_file_manager Tiny File Manager version 2.4.8 allows an unauthenticated remote attacker to execute arbitrary code remotely on the server. This is possible because the application is vulnerable to CSRF, processes uploaded files server-side (instead of just returning them for download), and allows unauthenticated users to access uploaded files. 2022-11-25 8.8 CVE-2022-45476
MISC
MISC totolink — a7100ru_firmware TOTOlink A7100RU V7.4cu.2313_B20191024 was discovered to contain a command injection vulnerability via the port parameter in the setting/setOpenVpnClientCfg function. 2022-11-25 9.8 CVE-2022-44843
MISC totolink — a7100ru_firmware TOTOlink A7100RU V7.4cu.2313_B20191024 was discovered to contain a command injection vulnerability via the pass parameter in the setting/setOpenVpnCfg function. 2022-11-25 9.8 CVE-2022-44844
MISC tribalsystems — zenario Zenario CMS 9.3.57186 is vulnerable to Remote Code Excution (RCE). 2022-11-30 9.8 CVE-2022-44136
MISC uatech — badaso Badaso version 2.6.3 allows an unauthenticated remote attacker to execute arbitrary code remotely on the server. This is possible because the application does not properly validate the data uploaded by users. 2022-11-25 9.8 CVE-2022-41705
MISC
MISC ujsoftware — owm_weather The OWM Weather WordPress plugin before 5.6.9 does not properly sanitise and escape a parameter before using it in a SQL statement, leading to a SQL injection exploitable by users with a role as low as contributor 2022-11-28 8.8 CVE-2022-3769
MISC
MISC ultimatemember — ultimate_member The Ultimate Member plugin for WordPress is vulnerable to Remote Code Execution in versions up to, and including, 2.5.0 via the get_option_value_from_callback function that accepts user supplied input and passes it through call_user_func(). This makes it possible for authenticated attackers, with administrative capabilities, to execute code on the server. 2022-11-29 7.2 CVE-2022-3383
MISC
MISC
MISC
MISC ultimatemember — ultimate_member The Ultimate Member plugin for WordPress is vulnerable to Remote Code Execution in versions up to, and including, 2.5.0 via the populate_dropdown_options function that accepts user supplied input and passes it through call_user_func(). This is restricted to non-parameter PHP functions like phpinfo(); since user supplied parameters are not passed through the function. This makes it possible for authenticated attackers, with administrative privileges, to execute code on the server. 2022-11-29 7.2 CVE-2022-3384
MISC
MISC
MISC
MISC velneo — vclient Velneo vClient on its 28.1.3 version, could allow an attacker with knowledge of the victims’s username and hashed password to spoof the victim’s id against the server. 2022-11-28 7.4 CVE-2021-45036
CONFIRM
MISC
MISC
MISC
MISC
MISC
MISC vim — vim Heap based buffer overflow in vim/vim 9.0.0946 and below by allowing an attacker to CTRL-W gf in the expression used in the RHS of the substitute command. 2022-11-25 7.8 CVE-2022-4141
CONFIRM
MISC wavlink — wl-wn531g3_firmware WAVLINK Quantum D4G (WL-WN531G3) running firmware versions M31G3.V5030.201204 and M31G3.V5030.200325 has an access control issue which allows unauthenticated attackers to download configuration data and log files. 2022-11-29 7.5 CVE-2022-44356
MISC wbce — wbce_cms An arbitrary file upload vulnerability in the Server Settings module of WBCE CMS v1.5.4 allows attackers to execute arbitrary code via a crafted PHP file. 2022-11-25 7.2 CVE-2022-45039
MISC web_based_quiz_system_project — web_based_quiz_system Web Based Quiz System v1.0 transmits user passwords in plaintext during the authentication process, allowing attackers to obtain users’ passwords via a bruteforce attack. 2022-11-25 7.5 CVE-2022-44411
MISC webcash — serp_server_2.0 A specific file on the sERP server if Kyungrinara(ERP solution) has a fixed password with the SYSTEM authority. This vulnerability could allow attackers to leak or steal sensitive information or execute malicious commands. 2022-11-25 9.8 CVE-2022-41157
MISC windriver — vxworks An issue was discovered in Wind River VxWorks 6.9 and 7, that allows a specifically crafted packet sent by a Radius server, may cause Denial of Service during the IP Radius access procedure. 2022-11-25 7.5 CVE-2022-38767
MISC
MISC wp_user_merger_project — wp_user_merger The WP User Merger WordPress plugin before 1.5.3 does not properly sanitise and escape a parameter before using it in a SQL statement, leading to a SQL injection exploitable by users with a role as low as admin 2022-11-28 8.8 CVE-2022-3848
MISC
MISC wp_user_merger_project — wp_user_merger The WP User Merger WordPress plugin before 1.5.3 does not properly sanitise and escape a parameter before using it in a SQL statement, leading to a SQL injection exploitable by users with a role as low as admin 2022-11-28 8.8 CVE-2022-3849
MISC
MISC wp_user_merger_project — wp_user_merger The WP User Merger WordPress plugin before 1.5.3 does not properly sanitise and escape a parameter before using it in a SQL statement, leading to a SQL injection exploitable by users with a role as low as admin 2022-11-28 8.8 CVE-2022-3865
MISC
MISC wpsmartcontracts — wpsmartcontracts The WPSmartContracts WordPress plugin before 1.3.12 does not properly sanitise and escape a parameter before using it in a SQL statement, leading to a SQL injection exploitable by users with a role as low as author 2022-11-28 8.8 CVE-2022-3768
MISC
MISC
MTC Weekly Roundup – December 2

MTC Weekly Roundup – December 2

This article is contributed. See the original author and article here.

 


Happy Friday, and welcome back to your MTC Weekly Roundup!


 


We’ve recovered from the food coma of last week’s holiday and we’re back in the swing of things, so let’s see what’s happening in the Community this week!


 


MTC Moments of the Week


 


This week’s MTC Member of the Week spotlight is on @SnowMan55. Like our previous MoW, Glenn is another fresh face in the MTC but has already become a Frequent Contributor in the Excel forum with over a dozen best responses under their belt. We truly appreciate all your help! 


 


Over on the blogs this week, @ShirleyseHaley wrote up a 2-minute recap of everything new with Microsoft Security, Compliance, and Identity, including Microsoft Security Virtual Training Days, which are free and in-depth virtual training events to help professionals of all levels grow their technical skills and gain confidence to navigate what’s ahead.


 


We are on a short break from Community events but mark your calendars for our next Ask Microsoft Anything (AMA) on Tuesday, December 13 at 09:00 am PST, when we’ll have experts from the Microsoft Teams team on hand to answer questions about the new Sign Language View in Microsoft Teams Meetings!


 


Interpreter.png


 


Unanswered Questions – Can you help them out?


 


Every week, users come to the MTC seeking guidance or technical support for their Microsoft solutions, and we want to help highlight a few of these each week in the hopes of getting these questions answered by our amazing community!


 


In the Teams forum, @adi_km is facing an issue within the Teams application (not the web version) whereusers are getting messages stuck in the sending state that never get delivered.


 


Meanwhile, in the SharePoint forum, @MattS1978 is looking for help using a VLOOKUP command between an Excel spreadsheet with an existing VLOOKUP and a Microsoft List for their retail stores.


 


————————-


 


For this week’s fun fact: on this day in 1983, the iconic music video epic for Michael Jackson’s “Thriller” premiered on MTV with a run time of almost 14 minutes – a game changer!


 


And with that, I hope you all have a wonderful weekend!

Azure Data Factory November 2022 Monthly Update

Azure Data Factory November 2022 Monthly Update

This article is contributed. See the original author and article here.

Welcome to Azure Data Factory’s November monthly update! Here we’ll share the latest updates on What’s New in Azure Data Factory. You can find all our updates here.


 


We’ll also be hosting our monthly livestream next week on December 15th at 9:00am PST/ 12:00pm EST! Join us to see some live demos and to ask us your ADF questions! 


 


Join the livestream here.


 


 


Table of Contents


Continuous Integration and continuous deployment (CI/CD)



Data flow



Developer Productivity



 


Continuous integration and continuous delivery (CI/CD)


 


Disable publish button in ADF studio now available


We have added the ability to disable the publish button from the ADF studio when source control is enabled. Once this is enabled, the Publish button will be grayed out in the ADF Studio. This will help to avoid overwriting the last automated publish deployment.


 


Noelle_Li_0-1670017635045.png


 


To learn more about this update, read Source control – Azure Data Factory | Microsoft Learn.


 


Data flow


 


New improvements to SAP Change Data Capture (CDC)


We added some new updates to the SAP CDC connector in mapping data flows, adding new capabilities:


Incremental only is now available


You can get changes only from SAP system without initial full load. With this feature, you have the flexibility to focus on incremental data process without worrying about big data volume movement on an initial full data load.


 

 

sap-change-data-capture-mapping-data-flow-run-mode.png


 


Performance improvements have been made – source partitions in initial full data load


With a simple radio button, you can now connect your SAP system to multiple sessions in parallel to extract data, which will greatly reduce the time to perform an initial full data load from your SAP system.


 


sap-change-data-capture-mapping-data-flow-optimize-partition.png


 


Pipeline template added to Template Gallery


There is a new pipeline template in the Template Gallery to help speed up your journey on loading big amounts of SAP objects by a parameterized pipeline with SAP CDC enabled in ADF. You can get more information on the template here.


 


To learn more about this, read Transform data from an SAP ODP source with the SAP CDC connector in Azure Data Factory or Azure Synapse Analytics – Azure Data Factory & Azure Synapse | Microsoft Learn.


 


Developer Productivity


 


Pipeline designer enhancements added to ADF Studio preview experience


We have added three new UI updates to the ADF Studio preview experience:


Dynamic Content Flyout


A new dynamic content flyout has been added to make it easier to set dynamic content in your pipeline activities without having to use the expression builder.


 


Noelle_Li_1-1670017635052.png


 


Error Messaging


Error messages have been relocated to the Status column in Debug and Pipeline monitoring. This will make it easier to view errors whenever a pipeline run fails.


 


Noelle_Li_2-1670017635057.png


 


Container view for monitoring


A new monitoring view is available, adding the option to enable the container view. This view provides a more consolidated monitoring view of activities that were run. A big change that you will see is that nested activities are now grouped under the parent activity. To be able to view more activities on one page, you can choose to hide the list of nested activities under the parent activity.  


 


Noelle_Li_3-1670017635064.png


 


To learn more about these enhancements, read Managing Azure Data Factory studio preview experience – Azure Data Factory | Microsoft Learn.


 


We hope that you found this helpful! Let us know in the comments if there’s anything else you’d like to see in our blogs or livestreams. We love hearing your feedback!


 

Configuring Warehouse management is now simpler, easier, and more accurate

Configuring Warehouse management is now simpler, easier, and more accurate

This article is contributed. See the original author and article here.

Microsoft Dynamics 365 Supply Chain Management now streamlines warehouse configuration, reducing the time it takes to set up, validate, maintain, and troubleshoot your warehouse management processes. Let’s take a closer look at these and other improvements that help prevent wrong configurations and improve your users’ experience.

Location directive scope simplifies Warehouse management configuration

The new location directive scope feature eliminates the need to configure different location directives for multiple SKUs. You can now configure one location directive for a work unit that consists of single or multiple items, saving time, reducing maintenance and troubleshooting, and maximizing efficiency. Scope options give you more freedom when you design location directives and help reduce redundant configurations.

Location directive scope also allows you to edit the query that defines when a directive should be applied for a single order with multiple items.

We strongly recommend using this feature, especially if complexity and number of records make your location directive configuration difficult to manage.

Save time configuring Warehouse management with guided setup

Configuring Warehouse management is a time-consuming task if done manually. New step-by-step wizards in Dynamics 365 Supply Chain Management make configuring the Warehouse management module easier than ever before.

  • The Warehouse management initiation wizard provides detailed, step-by-step guidance for configuring basic settings from scratch, such as when you’re adding a legal entity.
  • The Warehouse initiation wizard provides detailed, step-by-step guidance for setting up an individual warehouse.

The Warehouse implementation tasks workspace helps you track your progress through a pre-configured list of tasks required to implement Warehouse management from scratch.

New troubleshooting tools find common mistakes in Warehouse management configuration

Errors in your Warehouse management configuration can lead to disaster. Additional validations and a new set of self-healing rules in the optimization advisor make it easier to identify and correct the most common configuration errors. We strongly recommend running the optimization advisor after you configure the Warehouse management module to detect any missing or incorrect configurations.

A new Preview query results feature helps you determine why a location directive isn’t working as intended, allows you to confirm the desired outcome of your queries, and helps you quickly identify issues with your query configurations.

Acceptance tests speed up validation of location directive configurations

In the past, Warehouse management customers would set up location directives, create test data, execute the process, and see whether the system worked. If it didn’t, they were back to square one, changing the setup, recreating test data, wasting time and money. Testing location directives was a laborious manual process that could take a lot of time.

The Warehouse management module now includes a powerful framework called acceptance tests. Its purpose is simple: to facilitate faster validation of location directive configuration. Here’s how the acceptance tests feature can be so powerful:

  • Test it before you embrace it: After you set up a location directive, you can test to validate the outcome of the directive without having to create test data. You can also use smart on-hand simulation to validate your configuration.
  • Visualize the location directive flow: The coverage view uses colored highlighting to indicate which location directives, lines, and actions were used in determining the result of a selected test.
  • Simplify maintenance: Turn on Run tests after change to automatically run all tests any time you change a location directive.

Adjust query criteria quickly with Edit query preview

The ability to reuse queries across warehousing configurations provides a great deal of flexibility. The new Edit query preview allows you to quickly review and adjust criteria when needed in the Related information panel, without having to open Edit query.

New Move up and Move down buttons in the Work templates page allow you to quickly change the sequence of work templates.

Copy configurations

Now you can roll out location directives to new warehouses without mistakes by copying location directive configurations across warehouses.

Next steps

The post Configuring Warehouse management is now simpler, easier, and more accurate appeared first on Microsoft Dynamics 365 Blog.

Brought to you by Dr. Ware, Microsoft Office 365 Silver Partner, Charleston SC.

Generate Azure Policy Compliance Alerts By Sending Custom Data to Log Analytics

Generate Azure Policy Compliance Alerts By Sending Custom Data to Log Analytics

This article is contributed. See the original author and article here.

Purpose


The purpose of this post is to walk through the process of creating an event driven alerting mechanism for Azure Policy compliance.


 


Assumptions


General knowledge of Azure, PowerShell, and resource creation, both in the portal and with command-line interfaces.


 


Challenge


Many organizations use Azure Policy to track, measure, maintain, and enforce regulatory policy compliance. These regulatory compliance initiatives could be standard baseline initiatives that have been assigned or they could be customized regulatory compliance initiatives, created just for that particular organization. Regardless of the regulatory compliance initiative type, organizations have prioritized not just compliance to a regulatory compliance initiative but also when a policy state change occurs. A common question we hear is “How can I be alerted when my policy compliance state changes?”. If an organization would rather use automation instead of a manual method, this article will describe an alerting mechanism that will notify you about what policy changed, when that policy changed, and how you want to be notified about that change.


 


In Azure, there are multiple ways to accomplish the same objective. Azure Policy is no different. These different methods can be broken down into two categories: event driven and time driven. Time driven methods require you to query or retrieve some data from a source on a schedule. This scheduled query would then leverage technology to determine logic and trigger a response. While this time driven method does work, it is complex and inefficient. This particular method introduces delays between the time a policy event occurs and the time in which you get an alert. The other method related to Azure Policy is event driven. An event driven method is a way to trigger a response to a policy event when it happens. This event driven approach will be the focus of this post.


 


Querying the Azure Activity log has been one way that administrators have retrieved Azure Policy events. However, the Azure Activity log does not provide the level of detail that is required for Azure Policy especially in regard to regulatory compliance. Admins would like to know when a regulatory compliance policy is no longer in compliance. Unfortunately, because the Azure Activity log is focused on all Azure Activity, it does not provide specifics about Azure Policy event changes. This event driven solution will walk you through the steps of obtaining a method for rich Azure Policy activity details such as regulatory compliance changes.


 


Solution


The first item needed in the solution is to determine where the type of data source is that we need to capture for Azure Policy regulatory compliance details. The preferred data source for capturing policy specific events is the PolicyInsights event data. PolicyInsights data comes in three event types in Azure: Policy Compliance Status Added, Policy Compliance Status Changed, Policy Compliance Status Deleted. The next question would be: How do I access or capture this PolicyInsights Event data and then create alerts so that I can be notified when certain policy events happen, like compliance change? The following architecture answers that question.


 


diag.png


 


 



  1. Azure Policy: The first step in this process is Azure Policy. Policies are assigned and those policies have compliance states.

  2. Event Grid: When an Azure Policy compliance state changes, the Event Grid will pick it up because it is “listening” for PolicyInsights events.

  3. Event Grid Subscription: An Event Grid Subscription will be configured to send those captured events to an Azure Function.

  4. Azure Function: An Azure Function will be using PowerShell code to harvest the incoming policy event data and use the Log Ingestion API to send it to the Log Analytics Workspace through a Data Collection Endpoint and Data Collection Rule.

  5. Log Ingestion API: The Log Ingestion API will be used to send this data through the Data Collection Endpoint and Data Collection Rule to the Log Analytics Workspace.

  6. Log Analytics Workspace: A Log Analytics Workspace will be configured with a Custom Table created to receive the data coming from the Data Collection Endpoint.

  7. Monitor: Azure Monitor will be used to run queries on the Custom Table to indicate when an alert should be triggered.

  8. Alert: An alert will be configured to be triggered when the Custom Table query indicates something is out of compliance.


Key Vault


In this reference architecture, we will use a Key Vault to store a secret value that gets dynamically retrieved by the PowerShell code in the Azure Function. The purpose of this process is to maintain proper security posture and provide a secure way to store and retrieve this sensitive data. An existing Key Vault may be used, or you may elect to create a new one for this purpose. Rather than walk through the creation of a new Key Vault, we will just be covering the specific configuration items that are needed. Key Vault deployment docs can be found here ( https://learn.microsoft.com/en-us/azure/key-vault/general/quick-create-portal).


 



  1. Secrets: The Key Vault will be used to store the App Registration Secret that you created in the AAD App registration. The value of the secret was one that you should have saved in your reminders notepad. Go to your Key Vault and click “Secrets”.

  2. Now click “Generate/Import” on the top menu bar to create a new secret.

  3. Upload option is Manual. Assign a “Name” and “Secret Value“. We used “PolicyAlert-Secret” as the name and put in the AAD App Registration secret as the value. Leave as enabled. Then click “Create“.KV3a.png


 



  1. Access Configuration: The Key Vault will need to have the Access Configuration set to Azure role-based access control. Click to apply the Azure role-based access control Permission model. This model is required so that you can setup specific access for the Azure Function managed identity in a later step.


    1. KV4a.png





  1. Access Control: You will need to assign the “Key Vault Secrets User” role to the Azure Function managed identity. If you have not yet created that managed identity, you can come back later to do it or do it in the Azure Function section of the portal.KV5a.png

     




Event Grid System Topic


The Event Grid System Topic will capture the PolicyInsights data so it can be sent to a Log Analytics Workspace.



  1. Type Event Grid in the Global Azure search and select it.

  2. Under Azure service events, select System topics.


    1. Create New and use these Basic Settings:

    2. Change the Topic Types to Microsoft PolicyInsights

    3. Ensure that the scope is set to Azure Subscription

    4. Ensure that the appropriate Subscription name has been selected.

    5. Select the appropriate Resource Group

    6. Give the SystemTopic an appropriate name such as egst-PolicyAlert

    7. Tags as needed

    8. Review and create.EG2i.png



Function App


The Function App be used to harvest the PolicyInsights data from the Event Grid and then write it to a Log Analytics Workspace.



  1. Basics:


    1. Go to Azure Global Search and type/select Function App

    2. Click Create

    3. Select Resource Group where Event Grid resides

    4. Give name to function app according to naming convention and that makes sense for example, FN-PolicyAlert or FA-PolicyAlert

    5. Publish: Code

    6. Runtime Stack: PowerShell Core

    7. Version: 7.2 (newest available)

    8. Region: Select the region where you are working and have the EventGrid resource located

    9. Operating System: Windows

    10. Plan type: Consumption (Serverless)

      1. FA1k.png




  2. Hosting: Select a storage account that you already have or accept the storage account that is created automatically.

  3. Networking: Leave network injection to off

  4. Monitoring: Enable Applications Insights; accept the newly created application insight.

  5. Deployment: Accept the defaults.

  6. Tags: As needed

    1. FA7a.png



  7. Review and Create



  1. Identity: Once the Function App is created, you need to configure the Managed Identity.


    1. After updating the slider to enable system assigned managed identity, the following pop up will occur. Click Yes to enable.

    2. As outlined earlier, assign the “Key Vault Secrets User” role to the Azure Function managed identity. Click on Azure role assignments, click on + Add role assignment (preview), select the scope to Key Vault, the Subscription in which you are working, the resource, being the actual Key Vault to which you want to apply the role to the managed identity, and finally what role to which you are assigning the managed identity which is the Key Vault Secrets User

      1. FA8b1.png

      2. DJBartles_8-1667850167212.png




    3. Check permissions on the Key Vault. Go to Key Vault. Select Access Control (IAM). Click Check Access. Select for Find: Managed Identity. Ensure you have the correct subscription, select the managed identity, Function App and select the Function app you created for this solution.

      1. DJBartles_6-1669817092834.png

         





    4. You should see the role of Key Vault Secrets User

      1. DJBartles_7-1669817232347.png

         







Function


The Function inside of the Function App will be running code to format the Event Hub data and write it to Log Analytics.



  1. Create the Function (inside of the Function App).

    1. Go the Function App that you just created.

    2. From the left hand menu, in the Functions sub menu, click on Functions.

    3. Click Create. A flyout menu will pop up on the right hand side of the screen.

    4. Leave the development environment as Develop in portal.

    5. The next section will be Select a Template. In this search bar, type and search for “Azure Event Grid Trigger” and select it. You can accept the default name but you can change the name to something that makes sense to the solution and/or naming convention, in this case we used “PolicyAlertTrigger1“.

      1. F1f.png

         







  2. Once the Function is created, select Integration to view the contents.

    1. F2a.png

       





  3. Click to open the “Trigger” (eventGridEvent in this example).


    1. Please note the “Event Trigger Parameter Name“. This can be customized but it must match in the PowerShell code for the function. In this example, we will use the default value of “eventGridEvent“.

      1. DJBartles_13-1667850167223.png

         






  4. Next, click Create Event Grid Subscription“.

  5. On the “Create Event Subscription” part of the portal, use the following options/values.

    1. Name: EvtSub-PolicyAlert (this is customizable but should following naming conventions)

    2. Event Schema: Event Grid Schema

    3. Topic Types: Search for “policy” and select Microsoft PolicyInsights.

    4. Source Resource: Azure Subscription *(might be autofilled)

    5. System Topic Name: egst-PolicyAlert (or the name you created) *(might be autofilled)

    6. Event Types: Policy Compliance State Created, Policy Compliance State Changed

    7. Endpoint Type: Azure Function * (might be autofilled)

    8. Endpoint: PolicyAlertTrigger1 (Your Azure Function created in the previous step) * (might be autofilled)

      1. F5i.png

         








AAD App Registration


An AAD App registration is needed for the Log Ingestion API, which is used to write the data to Log Analytics.


( https://learn.microsoft.com/en-us/azure/azure-monitor/logs/tutorial-logs-ingestion-portal) – please follow the link for additional information about log ingestion



  1. In the Azure global search, type Azure Active Directory.

  2. Once in your AAD tenant, under the Manage sub menu, click “App Registrations“.

  3. Click +New Registration and use the following settings:


    1. Name: AR-PolicyAlert-Ingestion

    2. Supported account types: Accounts in this organizational directory only

    3. Click RegisterAAR3d.png

       



    4. Once you create the new registration, click to open the registration. Be sure to store your Tenant ID and App IDreminders” in a text document (like notepad) so you can copy/paste it in a later step. The snapshot below just has the values blanked out but shows the IDs that are needed by being highlighted.DJBartles_16-1667850167229.png

    5. When inside of your new registration, click “Certificates and Secrets” and then go to “Client Secrets“.AAR3h.png

       



    6. Create a new client secret. Put the name you want to use in the “Description” and add this to your reminders notepad. Ensure that you have the correct expiration for the secret according to your organization. Click Add.

    7. Once the new secret is created, immediately copy the secret value and add it to the reminders notepad. This value will only be visible for a short time and you cannot get access to it again.



Data Collection Endpoint ( https://learn.microsoft.com/en-us/azure/azure-monitor/logs/tutorial-logs-ingestion-portal)


The Data Collection Endpoint is part of the Log Ingestion for writing the PolicyInsights data to Log Analytics.



  1. In the Azure global search , type Monitor. Select Azure Monitor and open in the Portal.

  2. On the left menu bar, under the Settings submenu, click “Data Collection Endpoints“.

  3. Click + Create to create a new Data Collection Endpoint (DCE)


    1. Name the DCE, in this case, DCE-PolicyAlerts

    2. Ensure that the correct subscription is selected

    3. Ensure that the correct resource group is selected

    4. Ensure that the correct region is selected

    5. Add any appropriate tags.

    6. Review and Create

      1. DJBartles_5-1669819453849.png

         







Custom Log (Table) and Data Collection Rule ( https://learn.microsoft.com/en-us/azure/azure-monitor/logs/tutorial-logs-ingestion-portal)


These steps will show how to create a customer data table in the Log Analytics Workspace and create a Data Collection Rule.



  1. Go to the Azure global search bar and type in Log Analytics Workspaces (LAW)

  2. If you do not have a current Log Analytic workspace, please create one before moving on to the next step.

  3. Open the LAW, from the lefthand side menu, under settings, select Tables.

  4. Select +Create, and then select New custom log (DCR-based)

    1. CL4a.png

       





  5. On the Create page, name the Table in this case, the table is called PolicyAlert

  6. Next, click “Create Data Collection Rule” blue hyperlink. (This Table which we just named, will be where you will be sending your policy data.)

    1. DJBartles_3-1669819291029.png

       


       





  7. Give the new DCR a name, in this case, it is named DCR-PolicyAlert. Click Done.

    1. DJBartles_0-1669819217039.png

       




       





  8. When back at the “Create custom log” page, select the Data Collection Rule, DCR-PolicyAlert, you just created if it did not auto populate.

  9. Select the Data Collection Endpoint (DCE) that you created earlier in Azure Monitor. In this case the DCE is DCE-PolicyAlerts

    1. CL9a.png

       







  1. Click Next to continue

  2. Setting up the data format/schema is the next step, which can be a little confusing. In this step, you will upload/paste in a sample json that represents the data that you will be using. If you would like to use the exact same data that we are using in this article, HERE is a sample file you can use for this upload. This sample data file will basically define the data structure in your LAW Table. This will need to be coordinated with your PowerShell code that is completed in a later step.DJBartles_7-1669819547018.png

     






    1. When you upload the sample file (or any other), you will likely get an error about the “TimeGenerated” data field. This is an expected error. This field is required in Custom Tables so you will next need to “transform” a data/time field in our sample data to suit the Custom Table. If you get this error, click the “Transformation Editor” in the previous image. The following image shows the query you can use. Type in the following KQL. Run the query and then click Apply.DJBartles_0-1669818970747.png

       



    2. You should now be able to click Next to continue.

    3. Click the Create. *Please note you will see the table name appended with _CL. In this case, PolicyAlert_CL is the name of the custom table.



Setup Access to the Data Collection Rule (https://learn.microsoft.com/en-us/azure/azure-monitor/logs/tutorial-logs-ingestion-portal)


This process will setup access to the Data Collection Rule as part of writing the data to Log Analytics via the Log Ingestion API.



  1. Go to Azure global search. Type Monitor and select it.

  2. Within Azure Monitor, go to Settings, and click “Data Collection Rules” on the left menu.

  3. Find the DCR created in the previous step and click on it.

  4. Once on the DCR you created, click “Access Control (IAM)” from the left hand menu.

    1. DCR4a.png

       







  1. Find Grant access to this resource, click “Add Role Assignment“.

  2. Add the role “Monitoring Metric Publisher” to your previously created AAD App Registration. In our example, we named ours “AR-PolicyAlert-Ingestion“. Submit the role assignment when completed.


    1. For Role, search for Monitoring Metrics Publisher. Select it. Click Next.

    2. For Members, select the name of the app registration from earlier in the solution. In this case, AR-PolicyAlert-Ingestion

    3. Click Next

    4. Click Review and Assign.

      1. DCR6e.png

         







Setup Function App Managed Identity to have Access to Key Vault


Here you will setup the managed identity for Key Vault so it can read your secret store in Key Vault.



  1. Setting up access to your Key Vault secrets to the Managed Identity for your Function App can be done from the Key Vault or from the Function App Identity page. In this article we will describe how to do it from the Function App Identity page. This access control will allow your Function App to query the Key Vault for the secret that you stored from the previous step.

  2. Go to the Global Azure search bar and type Function App

  3. Go to your Function App that you created for this solution.


    1. From the Settings menu, click the Identity button on the left menu.


  4. You should see your managed identity there from the previous step. Now click “Azure Role Assignment“.KVMI4a.png

     



  5. Now click “Add Role Assignment“.

  6. As shown in the following image, choose Scope=Key Vault, Resource=(Your Keyvault), Role=”Key Vault Secrets User”.

  7. Assign the role and submit the change.


Setup PowerShell Operating Environment in Function App


This process will prepare your Azure Function powershell environment.



  1. Go to your Function App that you created in a previous step.


    1. Under Functions, click on “App Files” on the left side.


  2. There will be a drop-down menu near the top middle of your screen. Choose the “requirements.psd1” option.DJBartles_0-1668015548475.png

     



  3. Edit the text in the file so that you have an entry for “Az.Accounts” and “Az.KeyVault“, as indicated in the graphic, and then click “Save“. This will tell your function to automatically install the PowerShell modules specified when the app restarts next.



  1. With the Az module line uncommented, you now need to restart the function app.


    1. To do this, click on “Configuration” on the left bar, under Settings.


  2. Navigate to the “General Settings” tab on the top right.

    1. PSOE5a.png

       





  3. Find the setting “PowerShell Core Version” on the right and change it to a different value and click save. Acknowledge the change and wait until it completes. Once the task is completed, reverse that setting back to its original value and click save again. In my example, I went from “PowerShell 7.2” to “PowerShell 7.0” back to “PowerShell 7.2”. This process is just to force Azure to restart the Function App so the Az Modules will load.



  1. Loading the PowerShell modules could take a few minutes so do not immediately expect it be there right after the restart completes.

  2. When the PowerShell is executed in your function app, it should have the PowerShell Az modules loaded by default.


Setup PowerShell in Function


Here you will setup the powershell code within the Azure Function.



  1. In this section we will setup the PowerShell code and operating environment with the Function created in the previous step. For our reference architecture in this article, you can download the PowerShell source code from HERE.

  2. Go to the Function App, FN-PolicyAlert or what you called the Function App for this solution.

  3. From the left-hand menu, under Functions, select Functions.

  4. You should be able to see on the right-hand side, the function that was created earlier in this solution called, “PolictAlertTrigger1“, and click on it to open it.

    1. PSF5a.png




 



  1. On the left menu, under Developer, click “Code + Test“.

  2. This will open the code editor. Grab all of the code from HERE and paste it into the editor. You need to make sure that you have verified that all of the PowerShell variables at the top of the code are filled in with your appropriate values. Many of these values will come from the “remindersnotepad text file mentioned in earlier steps.

  3. Need the DCE logs ingestion URI – go to the DCE in monitor and copy

  4. For the DCR immutable ID, go to the DCR, click on JSON view

    1. PSF8a.png

    2. PSF8b.png




Setup Alerting


Here you will setup the alerting mechanism within Azure Monitor.



  1. Go to the Log Analytics Workspace (LAW) where you have sent the Custom Logs that you created earlier which in the previous steps in this example was called, LAW-. In this example, the custom log table is called PolicyAlert_CL.

  2. In a blank query space, please type or paste in the following KQL query to query the custom log table for the policy compliance event changes


 


 

PolicyAlert_CL
| where event_type =~ "Microsoft.PolicyInsights.PolicyStateCreated" or event_type =~ "Microsoft.PolicyInsights.PolicyStateChanged"
| where compliancestate =~ "NonCompliant"
| extend TimeStamp = timestamp
| extend Event_Type = event_type
| extend Resource_Id = subject
| extend Subscription_Id = subscriptionid
| extend Compliance_State = compliancestate
| extend Policy_Definition = policydefinitionid
| extend Policy_Assignment = policyassignmentid
| extend Compliance_Reason_Code = compliancereasoncode
| project TimeStamp, Resource_Id, Subscription_Id, Policy_Assignment, Policy_Definition, Compliance_State, Compliance_Reason_Code

 


 


 



  1. Run the Query by click the Run button to ensure that it is working properly.


DJBartles_0-1669745200949.png


 



  1. Click on New alert rule to create the alerting for the policy compliance event changes.


DJBartles_1-1669656974839.png



  1. The alert rule that is being created will be based on the current log query. The Scope will already be set to the current resource.

  2. Next, on the Condition tab, the Log query will already be populated with the KQL query that we entered.

  3. On the Condition tab, the Measurement section will define how the records from the log query will be measured. As this query has one or more summarized columns, the Table rows option will be shown. Leave Table rows as the selection. Aggregation granularity refers to the time interval over which the collected values are aggregated. By default, the value is set to 5 minutes.


For this example, leave this set to 5 minutes.



  1. On the Condition tab, the Configure dimensions section allows you to separate alerts for different resources. In this example, we are only measuring one resource so there is no need to configure.


DJBartles_2-1669656974846.png


 



  1. On the Condition tab, the Configure alert logic is where we can configure the Operator and Threshold values against the value returned from what we are measuring. In this case, select the operator as greater than and the threshold value as 0. We would like to be alerted when there is a policy compliance change. With these settings, we will be notified when the threshold value is greater than 0; so every time a change occurs.

  2. Next, we will need to select a frequency of evaluation value; how often do we want the log query to run and be evaluated. Remember, the cost for the alert rule increases the lower the frequency is meaning if I have something run with a frequency of every minute, it will cost more than something that I run every 10 minutes. There will be a pro tip that shows an estimated cost. In this example, select 5 minutes.


DJBartles_3-1669656974847.png



  1. The remaining steps are all about how you want to be notified by using Action Groups. The procedures to create Action Groups is well documented HERE. For our example, this image shows a basic Action Group that just sends an email. In the example, the name of the Action Group is ag-PolicyAlert-Action. Also, the Action Group will contain the email address of the group/individual that will be notified when a policy compliance change occurs. Please keep these items in mind when designing your Action Group.DJBartles_0-1669730517491.png


Wrap-Up


Now that this setup has been complete, you should be able to receive an email notification whenever an alert is generated from an Azure Policy Compliance status change. There are several possible solutions to use and ways to expand functionality in this architecture so stay tuned for future posts that expand on this approach.


References


Azure Key Vault: Quickstart – Create an Azure Key Vault with the Azure portal | Microsoft Learn


Log Ingestion API: Logs Ingestion API in Azure Monitor (preview) – Azure Monitor | Microsoft Learn


Log Ingestion API Tutorial: Tutorial – Send data to Azure Monitor Logs using REST API (Azure portal) – Azure Monitor | Microsoft Learn


Send Custom Events to Azure Function: Quickstart: Send custom events to Azure Function – Event Grid – Azure Event Grid | Microsoft Learn


Azure PolicyInsights Data: Get policy compliance data – Azure Policy | Microsoft Learn


Azure Policy State Change Events: Reacting to Azure Policy state change events – Azure Policy | Microsoft Learn


Azure Function Powershell Dev: PowerShell developer reference for Azure Functions | Microsoft Learn


Azure Action Groups: Manage action groups in the Azure portal – Azure Monitor | Microsoft Learn


 

#StopRansomware: Cuba Ransomware

This article is contributed. See the original author and article here.

Summary

Actions to take today to mitigate cyber threats from ransomware:

• Prioritize remediating known exploited vulnerabilities.
• Train users to recognize and report phishing attempts.
• Enable and enforce phishing-resistant multifactor authentication.

Note: This joint Cybersecurity Advisory (CSA) is part of an ongoing #StopRansomware effort to publish advisories for network defenders that detail various ransomware variants and ransomware threat actors. These #StopRansomware advisories include recently and historically observed tactics, techniques, and procedures (TTPs) and indicators of compromise (IOCs) to help organizations protect against ransomware. Visit stopransomware.gov to see all #StopRansomware advisories and to learn more about other ransomware threats and no-cost resources.

The Federal Bureau of Investigation (FBI) and the Cybersecurity and Infrastructure Security Agency (CISA) are releasing this joint CSA to disseminate known Cuba ransomware IOCs and TTPs associated with Cuba ransomware actors identified through FBI investigations, third-party reporting, and open-source reporting. This advisory updates the December 2021 FBI Flash: Indicators of Compromise Associated with Cuba Ransomware.

Note: While this ransomware is known by industry as “Cuba ransomware,” there is no indication Cuba ransomware actors have any connection or affiliation with the Republic of Cuba. 

Since the release of the December 2021 FBI Flash, the number of U.S. entities compromised by Cuba ransomware has doubled, with ransoms demanded and paid on the increase.

This year, Cuba ransomware actors have added to their TTPs, and third-party and open-source reports have identified a possible link between Cuba ransomware actors, RomCom Remote Access Trojan (RAT) actors, and Industrial Spy ransomware actors.

FBI and CISA encourage organizations to implement the recommendations in the Mitigations section of this CSA to reduce the likelihood and impact of Cuba ransomware and other ransomware operations.

Download the PDF version of this report: pdf, 652 kb.

Technical Details

Overview

Since the December 2021 release of FBI Flash: Indicators of Compromise Associated with Cuba Ransomware, FBI has observed Cuba ransomware actors continuing to target U.S. entities in the following five critical infrastructure sectors: Financial Services, Government Facilities, Healthcare and Public Health, Critical Manufacturing, and Information Technology. As of August 2022, FBI has identified that Cuba ransomware actors have:

  • Compromised over 100 entities worldwide.
  • Demanded over 145 million U.S. Dollars (USD) and received over 60 million USD in ransom payments.

Cuba Ransomware Actors’ Tactics, Techniques, and Procedures

As previously reported by FBI, Cuba ransomware actors have leveraged the following techniques to gain initial access into dozens of entities in multiple critical infrastructure sectors:

  • Known vulnerabilities in commercial software [T1190]
  • Phishing campaigns [T1566]
  • Compromised credentials [T1078]
  • Legitimate remote desktop protocol (RDP) tools [T1563.002

After gaining initial access, the actors distributed Cuba ransomware on compromised systems through Hancitor—a loader known for dropping or executing stealers, such as Remote Access Trojans (RATs) and other types of ransomware, onto victims’ networks.

Since spring 2022, Cuba ransomware actors have modified their TTPs and tools to interact with compromised networks and extort payments from victims.[1],[2]

Cuba ransomware actors have exploited known vulnerabilities and weaknesses and have used tools to elevate privileges on compromised systems. According to Palo Alto Networks Unit 42,[2] Cuba ransomware actors have:

  • Exploited CVE-2022-24521 in the Windows Common Log File System (CLFS) driver to steal system tokens and elevate privileges.
  • Used a PowerShell script to identify and target service accounts for their associated Active Directory Kerberos ticket. The actors then collected and cracked the Kerberos tickets offline via Kerberoasting [T1558.003].
  • Used a tool, called KerberCache, to extract cached Kerberos tickets from a host’s Local Security Authority Server Service (LSASS) memory [T1003.001].
  • Used a tool to exploit CVE-2020-1472 (also known as “ZeroLogon”) to gain Domain Administrative privileges [T1068]. This tool and its intrusion attempts have been reportedly related to Hancitor and Qbot. 

According to Palo Alto Networks Unit 42, Cuba ransomware actors use tools to evade detection while moving laterally through compromised environments before executing Cuba ransomware. Specifically, the actors, “leveraged a dropper that writes a kernel driver to the file system called ApcHelper.sys. This targets and terminates security products. The dropper was not signed, however, the kernel driver was signed using the certificate found in the LAPSUS NVIDIA leak.”  [T1562.001].[2]

In addition to deploying ransomware, the actors have used “double extortion” techniques, in which they exfiltrate victim data, and (1) demand a ransom payment to decrypt it and, (2) threaten to publicly release it if a ransom payment is not made.[2]

Cuba Ransomware Link to RomCom and Industrial Spy Marketplace

Since spring 2022, third-party and open-source reports have identified an apparent link between Cuba ransomware actors, RomCom RAT actors, and Industrial Spy ransomware actors: 

  • According to Palo Alto Networks Unit 42, Cuba ransomware actors began using RomCom malware, a custom RAT, for command and control (C2).[2]
  • Cuba ransomware actors may also be leveraging Industrial Spy ransomware. According to third-party reporting, suspected Cuba ransomware actors compromised a foreign healthcare company. The threat actors deployed Industrial Spy ransomware, which shares distinct similarities in configuration to Cuba ransomware. Before deploying the ransomware, the actors moved laterally using Impacket and deployed the RomCom RAT and Meterpreter Reverse Shell HTTP/HTTPS proxy via a C2 server [T1090].
  • Cuba ransomware actors initially used their leak site to sell stolen data; however, around May 2022, the actors began selling their data on Industrial Spy’s online market for selling stolen data.[2]

RomCom actors have targeted foreign military organizations, IT companies, food brokers and manufacturers.[3][4] The actors copied legitimate HTML code from public-facing webpages, modified the code, and then incorporated it in spoofed domains [T1584.001], which allowed the RomCom actors to:

  • Host counterfeit Trojanized applications for
    • SolarWinds Network Performance Monitor (NPM),
    • KeePass password manager,
    • o    PDF Reader Pro, (by PDF Technologies, Inc., not an Adobe Acrobat or Reader product), and
    • Advanced IP Scanner software;
  • Deploy the RomCom RAT as the final stage.

INDICATORS OF COMPROMISE

See tables 1 through 5 for Cuba ransomware IOCs that FBI obtained during threat response investigations as of late August 2022. In addition to these tables, see the publications in the References section below for aid in detecting possible exploitation or compromise.

Note: For IOCs as of early November 2021, see FBI Flash: Indicators of Compromise Associated with Cuba Ransomware.

Table 1: Cuba Ransomware Associated Files and Hashes, as of Late August 2022

File Name

File Path

File Hash

netping.dll

c:windowstemp

SHA256: f1103e627311e73d5f29e877243e7ca203292f9419303c661aec57745eb4f26c

shar.bat

MD5: 4c32ef0836a0af7025e97c6253054bca

SHA256: a7c207b9b83648f69d6387780b1168e2f1eabd23ae6e162dd700ae8112f8b96c

Psexesvc.exe

SHA256: 141b2190f51397dbd0dfde0e3904b264c91b6f81febc823ff0c33da980b69944

1.bat

216155s.dll

23246s.bat

SHA256: 02a733920c7e69469164316e3e96850d55fca9f5f9d19a241fad906466ec8ae8

23246s.dll

SHA256: 0cf6399db55d40bc790a399c6bbded375f5a278dc57a143e4b21ea3f402f551f

23246st.dll

SHA256: f5db51115fa0c910262828d0943171d640b4748e51c9a140d06ea81ae6ea1710

259238e.exe

31-100.bat

3184.bat

3184.dll

45.dll

SHA256:

857f28b8fe31cf5db6d45d909547b151a66532951f26cda5f3320d2d4461b583

4ca736d.exe

62e2e37.exe

64.235.39.82

64s.dll

7z.sfx

7zCon.sfx

7-zip.chm

82.ps1

9479.bat

SHA256: 08eb4366fc0722696edb03981f00778701266a2e57c40cd2e9d765bf8b0a34d0

9479p.bat

SHA256: f8144fa96c036a8204c7bc285e295f9cd2d1deb0379e39ee8a8414531104dc4a

9479p.ps1

SHA256: 88d13669a994d2e04ec0a9940f07ab8aab8563eb845a9c13f2b0fec497df5b17

a.exe

MD5: 03c835b684b21ded9a4ab285e4f686a3

SHA1: eaced2fcfdcbf3dca4dd77333aaab055345f3ab4

SHA256: 0f385cc69a93abeaf84994e7887cb173e889d309a515b55b2205805bdfe468a3

SHA256: 0d5e3483299242bf504bd3780487f66f2ec4f48a7b38baa6c6bc8ba16e4fb605

SHA256: 7e00bfb622072f53733074795ab581cf6d1a8b4fc269a50919dda6350209913c

SHA256: af4523186fe4a5e2833bbbe14939d8c3bd352a47a2f77592d8adcb569621ce02

a220.bat

a220.dll

SHA256: 8a3d71c668574ad6e7406d3227ba5adc5a230dd3057edddc4d0ec5f8134d76c3

a82.exe

SHA256: 4306c5d152cdd86f3506f91633ef3ae7d8cf0dd25f3e37bec43423c4742f4c42

a91.exe

SHA256: 3d4502066a338e19df58aa4936c37427feecce9ab8d43abff4a7367643ae39ce

a99.exe

SHA256: f538b035c3de87f9f8294bec272c1182f90832a4e86db1e47cbb1ab26c9f3a0b

aa.exe

aa2.exe

aaa.stage.16549040.dns.alleivice.com

add2.exe

advapi32.dll

agent.13.ps1

agent.bat

SHA256: fd87ca28899823b37b2c239fbbd236c555bcab7768d67203f86d37ede19dd975

agent.dll

agent13.bat

agent13.ps1

SHA256: 1817cc163482eb21308adbd43fb6be57fcb5ff11fd74b344469190bb48d8163b

agent64.bin

SHA256: bff4dd37febd5465e0091d9ea68006be475c0191bd8c7a79a44fbf4b99544ef1

agsyst121.bat

agsyst121.dll

all.bat

SHA256: ecefd9bb8b3783a81ab934b44eb3d84df5e58f0289f089ef6760264352cf878a

all.dll

SHA256: db3b1f224aec1a7c58946d819d729d0903751d1867113aae5cca87e38c653cf4

anet.exe

SHA1: 241ce8af441db2d61f3eb7852f434642739a6cc3

SHA256: 74fbf3cc44dd070bd5cb87ca2eed03e1bbeec4fec644a25621052f0a73abbe84

SHA256: b160bd46b6efc6d79bfb76cf3eeacca2300050248969decba139e9e1cbeebf53

SHA256: f869e8fbd8aa1f037ad862cf6e8bbbf797ff49556fb100f2197be4ee196a89ae

App.exe

appnetwork.exe

AppVClient.man

aswSP_arPot2

aus.exe

SHA256: 0c2ffed470e954d2bf22807ba52c1ffd1ecce15779c0afdf15c292e3444cf674

SHA256: 310afba59ab8e1bda3ef750a64bf39133e15c89e8c7cf4ac65ee463b26b136ba

av.bat

SHA256: b5d202456ac2ce7d1285b9c0e2e5b7ddc03da1cbca51b5da98d9ad72e7f773b8

c2.ps1

 

c2.ps1

cdzehhlzcwvzcmcr.aspx

check.exe

checkk.exe

checkk.txt

SHA256: 1f842f84750048bb44843c277edeaa8469697e97c4dbf8dc571ec552266bec9f

client32.exe

 

comctl32 .dll

comp2.ps1

comps2.ps1

cqyrrxzhumiklndm.aspx

defendercontrol.exe

ff.exe

SHA256: 1b943afac4f476d523310b8e3afe7bca761b8cbaa9ea2b9f01237ca4652fc834

File __agsyst121.dll

 

File __aswArPot.sys

File __s9239.dll

File_agsyst121.dll

File_aswArPot.sys

File_s9239.dll

ga.exe

gdi32 .dll

geumspbgvvytqrih.aspx

IObit UNLOCKER.exe

kavsa32.exe

MD5: 236f5de8620a6255f9003d054f08574b

SHA1: 9b546bd99272cf4689194d698c830a2510194722

kavsyst32.exe

kernel32.dll

 

komar.bat

SHA256: B9AFE016DBDBA389000B01CE7645E7EEA1B0A50827CDED1CBAA48FBC715197BB

komar.dll

komar121.bat

 

komar121.dll

komar2.ps1

SHA256: 61971d3cbf88d6658e5209de443e212100afc8f033057d9a4e79000f6f0f7cc4

komar64.dll

SHA256: 8E64BACAF40110547B334EADCB0792BDC891D7AE298FBFFF1367125797B6036B

mfcappk32.exe

 

newpass.ps1

SHA256: c646199a9799b6158de419b1b7e36b46c7b7413d6c35bfffaeaa8700b2dcc427

npalll.exe

SHA256: bd270853db17f94c2b8e4bd9fa089756a147ed45cbc44d6c2b0c78f361978906

ole32.dll

 

oleaut32.dll

 

open.bat

SHA256: 2EB3EF8A7A2C498E87F3820510752043B20CBE35B0CBD9AF3F69E8B8FE482676

open.exe

pass.ps1

SHA256: 0afed8d1b7c36008de188c20d7f0e2283251a174261547aab7fb56e31d767666

pdfdecrypt.exe

powerview.ps1

 

prt3389.bat

SHA256: e0d89c88378dcb1b6c9ce2d2820f8d773613402998b8dcdb024858010dec72ed

ra.ps1

SHA256: 571f8db67d463ae80098edc7a1a0cad59153ce6592e42d370a45df46f18a4ad8

rg1.exe

 

Rg2.exe

rundll32

 

s64174.bat

SHA256: 10a5612044599128981cb41d71d7390c15e7a2a0c2848ad751c3da1cbec510a2

SHA256: 1807549af1c8fdc5b04c564f4026e41790c554f339514d326f8b55cb7b9b4f79

s64174.dll

s9239.bat

s9239.dll

 

shell32.dll

stel.exe

syskav64.exe

sysra64,exe

systav332.bat

SHA256: 01242b35b6def71e42cc985e97d618e2fabd616b16d23f7081d575364d09ca74

TC-9.22a.2019.3.exe

TeamViewer.exe

testDLL.dll

 

tug4rigd.dll

SHA256: 952b34f6370294c5a0bb122febfaa80612fef1f32eddd48a3d0556c4286b7474

UpdateNotificationPipeline.002.etl

user32.dll

v1.bat

v2.bat

 

v3.bat

veeamp.exe

SHA256: 9aa1f37517458d635eae4f9b43cb4770880ea0ee171e7e4ad155bbdee0cbe732

version.dll

vlhqbgvudfnirmzx.aspx

wininet.dll

wlog.exe

 

wpeqawzp.sys

y3lcx345.dll

zero.exe

SHA256: 3a8b7c1fe9bd9451c0a51e4122605efc98e7e4e13ed117139a13e4749e211ed0

 
Table 2: Cuba Ransomware Associated Email Addresses, as of Late August 2022

Email Provider

Email Addresses

Cuba-supp[.]com

admin@cuba-supp[.]com

Encryption-support[.]com

admin@encryption-support[.]com

Mail.supports24[.]net

inbox@mail.supports24[.]net

Table 3: Cuba Ransomware Associated Jabber Address, as of Late August 2022

cuba_support@exploit[.]im

Table 4: IP Addresses Associated with Cuba Ransomware, as of Late August 2022
Note: Some of these observed IP addresses are more than a year old. FBI and CISA recommend vetting or investigating these IP addresses prior to taking forward-looking action such as blocking.

193.23.244[.]244

144.172.83[.]13

216.45.55[.]30

94.103.9[.]79

149.255.35[.]131

217.79.43[.]148

192.137.101[.]46

154.35.175[.]225

222.252.53[.]33

92.222.172[.]39

159.203.70[.]39

23.227.198[.]246

92.222.172[.]172

171.25.193[.]9

31.184.192[.]44

10.13.102[.]1

185.153.199[.]169

37.120.247[.]39

10.13.102[.]58

192.137.100[.]96

37.44.253[.]21

10.133.78[.]41

192.137.100[.]98

38.108.119[.]121

10.14.100[.]20

192.137.101[.]205

45.164.21[.]13

103.114.163[.]197

193.34.167[.]17

45.32.229[.]66

103.27.203[.]197

194.109.206[.]212

45.86.162[.]34

104.217.8[.]100

195.54.160[.]149

45.91.83[.]176

107.189.10[.]143

199.58.81[.]140

64.52.169[.]174

108.170.31[.]115

204.13.164[.]118

64.235.39[.]82

128.31.0[.]34

209.76.253[.]84

79.141.169[.]220

128.31.0[.]39

212.192.241[.]230

84.17.52[.]135

131.188.40[.]189

213.32.39[.]43

86.59.21[.]38

141.98.87[.]124

216.45.55[.]3

 

Table 5: Cuba Bitcoin Wallets Receiving Payments, as of Late August 2022

bc1q4vr25xkth35qslenqwd7aw020w85qrvlrhv7hc

bc1q5uc0fdnz0ve5pg4nl4upa9ly586t6wmnghfe7x

bc1q6rsj3cn37dngypu5kad9gdw5ykhctpwhjvun3z

bc1q6zkemtyyrre2mkk23g93zyq98ygrygvx7z2q0t

bc1q9cj0n9k2m282x0nzj6lhqjvhkkd4h95sewek83

bc1qaselp9nhejc3safcq3vn5wautx6w33x0llk7dl

bc1qc48q628t93xwzljtvurpqhcvahvesadpwqtsza

bc1qgsuf5m9tgxuv4ylxcmx8eeqn3wmlmu7f49zkus

bc1qhpepeeh7hlz5jvrp50uhkz59lhakcfvme0w9qh

bc1qjep0vx2lap93455p7h29unruvr05cs242mrcah

bc1qr9l0gcl0nvmngap6ueyy5gqdwvm34kdmtevjyx

bc1qs3lv77udkap2enxv928x59yuact5df4t95rsqr

bc1qyd05q2m5qt3nwpd3gcqkyer0gspqx5p6evcf7h

bc1qzz7xweq8ee2j35tq6r5m687kctq9huskt50edv

bc1qvpk8ksl3my6kjezjss9p28cqj4dmpmmjx5yl3y

bc1qhtwfcysclc7pck2y3vmjtpzkaezhcm6perc99x

bc1qft3s53ur5uq5ru6sl3zyr247dpr55mnggwucd3

bc1qp7h9fszlqxjwyfhv0upparnsgx56x7v7wfx4x7

bc1q4vr25xkth35qslenqwd7aw020w85qrvlrhv7hc

bc1q5uc0fdnz0ve5pg4nl4upa9ly586t6wmnghfe7x

bc1q6rsj3cn37dngypu5kad9gdw5ykhctpwhjvun3z

bc1q6zkemtyyrre2mkk23g93zyq98ygrygvx7z2q0t

bc1q9cj0n9k2m282x0nzj6lhqjvhkkd4h95sewek83

bc1qaselp9nhejc3safcq3vn5wautx6w33x0llk7dl

bc1qc48q628t93xwzljtvurpqhcvahvesadpwqtsza

bc1qgsuf5m9tgxuv4ylxcmx8eeqn3wmlmu7f49zkus

bc1qhpepeeh7hlz5jvrp50uhkz59lhakcfvme0w9qh

bc1qjep0vx2lap93455p7h29unruvr05cs242mrcah

bc1qr9l0gcl0nvmngap6ueyy5gqdwvm34kdmtevjyx

bc1qs3lv77udkap2enxv928x59yuact5df4t95rsqr

bc1qyd05q2m5qt3nwpd3gcqkyer0gspqx5p6evcf7h

bc1qzz7xweq8ee2j35tq6r5m687kctq9huskt50edv

See figure 1 for an example of a Cuba ransomware note.

Figure 1: Sample Cuba Ransom Note 2, as of late August 2022

Greetings! Unfortunately we have to report that your company were

compromised. All your files were

encrypted and you can’t restore them without our private key. Trying

to restore it without our help may

cause complete loss of your data. Also we researched whole your

corporate network and downloaded all

your sensitive data to our servers. If we will not get any contact

from you in the next 3 days we will public

it in our news site.

You can find it there (

https[:]// cuba4ikm4jakjgmkeztyawtdgr2xymvy6nvgw5cglswg3si76icnqd.onion/ )

Tor Browser is needed ( https[:]//www.torproject.org/download/ )

Also we respect your work and time and we are open for communication.

In that case we are ready to discuss

recovering your files and work. We can grant absolute privacy and

compliance with agreements by our side.

Also we can provide all necessary evidence to confirm performance of

our products and statements.

Feel free to contact us with quTox ( https[:]//tox.chat/download.html )

 

Our ToxID: 37790E2D198DFD20C9D2887D4EF7C3E295188842480192689864DCCA3C8BD808A18956768271

 

Alternative method is email: inbox@mail.supports24[.]net

 

Mark your messages with your personal ID:

 

Additional resources to detect possible exploitation or compromise:

MITRE ATT&CK TECHNIQUES

Cuba ransomware actors use the ATT&CK techniques listed in Table 6. Note: For details on TTPs listed in the table, see FBI Flash Indicators of Compromise Associated with Cuba Ransomware.

Table 6: Cuba Ransomware Actors ATT&CK Techniques for Enterprise

Resource Development

Technique Title

ID

Use

Compromise Infrastructure: Domains

T1584.001

Cuba ransomware actors use compromised networks to conduct their operations.

Initial Access

Technique Title

ID

Use

Valid Accounts

T1078

Cuba ransomware actors have been known to use compromised credentials to get into a victim’s network.

External Remote Services

T1133

Cuba ransomware actors may leverage external-facing remote services to gain initial access to a victim’s network.

Exploit Public-Facing Application

T1190

Cuba ransomware actors are known to exploit vulnerabilities in public-facing systems.

Phishing

T1566

Cuba ransomware actors have sent phishing emails to obtain initial access to systems.

Execution

Technique Title

ID

Use

Command and Scripting Interpreter: PowerShell

T1059.001

Cuba ransomware actors have used PowerShell to escalate privileges.

Software Deployment Tools

T1072

Cuba ransomware actors use Hancitor as a tool to spread malicious files throughout a victim’s network.

Privilege Escalation

Technique Title

ID

Use

Exploitation for Privilege Escalation

T1068

Cuba ransomware actors have exploited ZeroLogon to gain administrator privileges.[2]

Defense Evasion

Technique Title

ID

Use

Impair Defenses: Disable or Modify Tools

T1562.001

Cuba ransomware actors leveraged a loader that disables security tools within the victim network.

Lateral Movement

Technique Title

ID

Use

Remote Services Session: RDP Hijacking

T1563.002

Cuba ransomware actors used RDP sessions to move laterally.

Credential Access

Technique Title

ID

Use

Credential Dumping: LSASS Memory

T1003.001

Cuba ransomware actors use LSASS memory to retrieve stored compromised credentials.

Steal or Forge Kerberos Tickets: Kerberoasting

T1558.003

Cuba ransomware actors used the Kerberoasting technique to identify service accounts linked to active directory.[2]

Command and Control

Technique Title

ID

Use

Proxy: Manipulate Command and Control Communications

T1090

Industrial Spy ransomware actors use HTTP/HTTPS proxy via a C2 server to direct traffic to avoid direct connection. [2]

Mitigations

FBI and CISA recommend network defenders apply the following mitigations to limit potential adversarial use of common system and network discovery techniques and to reduce the risk of compromise by Cuba ransomware:

  • Implement a recovery plan to maintain and retain multiple copies of sensitive or proprietary data and servers in a physically separate, segmented, and secure location (i.e., hard drive, storage device, the cloud).
  • Require all accounts with password logins (e.g., service account, admin accounts, and domain admin accounts) to comply with National Institute for Standards and Technology (NIST) standards for developing and managing password policies.
    • Use longer passwords consisting of at least 8 characters and no more than 64 characters in length.
    • Store passwords in hashed format using industry-recognized password managers.
    • Add password user “salts” to shared login credentials.
    • Avoid reusing passwords.
    • Implement multiple failed login attempt account lockouts.
    • Disable password “hints.”
    • Refrain from requiring password changes more frequently than once per year.
    • Note: NIST guidance suggests favoring longer passwords instead of requiring regular and frequent password resets. Frequent password resets are more likely to result in users developing password “patterns” cyber criminals can easily decipher.
    • Require administrator credentials to install software.
  • Require multifactor authentication for all services to the extent possible, particularly for webmail, virtual private networks, and accounts that access critical systems.
  • Keep all operating systems, software, and firmware up to date. Timely patching is one of the most efficient and cost-effective steps an organization can take to minimize its exposure to cybersecurity threats. Prioritize patching SonicWall firewall vulnerabilities and known exploited vulnerabilities in internet-facing systems. Note: SonicWall maintains a vulnerability list that includes Advisory ID, CVE, and mitigation. Their list can be found at psirt.global.sonicwall.com/vuln-list.
  • Segment networks to prevent the spread of ransomware. Network segmentation can help prevent the spread of ransomware by controlling traffic flows between—and access to—various subnetworks and by restricting adversary lateral movement.
  • Identify, detect, and investigate abnormal activity and potential traversal of the indicated ransomware with a networking monitoring tool. To aid in detecting the ransomware, implement a tool that logs and reports all network traffic, including lateral movement activity on a network. Endpoint detection and response (EDR) tools are particularly useful for detecting lateral connections as they have insight into common and uncommon network connections for each host.
  • Install, regularly update, and enable real time detection for antivirus software on all hosts.
  • Review domain controllers, servers, workstations, and active directories for new and/or unrecognized accounts.
  • Audit user accounts with administrative privileges and configure access controls according to the principle of least privilege.
  • Disable unused ports.
  • Consider adding an email banner to emails received from outside your organization.
  • Disable hyperlinks in received emails.
  • Implement time-based access for accounts set at the admin level and higher. For example, the Just-in-Time (JIT) access method provisions privileged access when needed and can support enforcement of the principle of least privilege (as well as the Zero Trust model). JIT sets a network-wide policy in place to automatically disable admin accounts at the Active Directory level when the account is not in direct need. Individual users may submit their requests through an automated process that grants them access to a specified system for a set timeframe when they need to support the completion of a certain task.
  • Disable command-line and scripting activities and permissions. Privilege escalation and lateral movement often depend on software utilities running from the command line. If threat actors are not able to run these tools, they will have difficulty escalating privileges and/or moving laterally.
  • Maintain offline backups of data, and regularly maintain backup and restoration. By instituting this practice, the organization ensures they will not be severely interrupted, and/or only have irretrievable data.
  • Ensure all backup data is encrypted, immutable (i.e., cannot be altered or deleted), and covers the entire organization’s data infrastructure.

RESOURCES

REPORTING

FBI is seeking any information that can be shared, to include boundary logs showing communication to and from foreign IP addresses, a sample ransom note, communications with ransomware actors, Bitcoin wallet information, decryptor files, and/or a benign sample of an encrypted file.

FBI and CISA do not encourage paying ransom as payment does not guarantee victim files will be recovered. Furthermore, payment may also embolden adversaries to target additional organizations, encourage other criminal actors to engage in the distribution of ransomware, and/or fund illicit activities. Regardless of whether you or your organization have decided to pay the ransom, FBI and CISA urge you to promptly report ransomware incidents immediately. Report to a local FBI Field Office, or CISA at us-cert.cisa.gov/report.

DISCLAIMER

The information in this report is being provided “as is” for informational purposes only. FBI and CISA do not endorse any commercial product or service, including any subjects of analysis. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply endorsement, recommendation, or favoring by FBI or CISA.

ACKNOWLEDGEMENTS

FBI and CISA would like to thank BlackBerry, ESET, The National Cyber-Forensics and Training Alliance (NCFTA), and Palo Alto Networks for their contributions to this CSA.

References

Revisions

Initial Version: December 1, 2022

This product is provided subject to this Notification and this Privacy & Use policy.

Improving interoperability between the Visio web and desktop apps

Improving interoperability between the Visio web and desktop apps

This article is contributed. See the original author and article here.

We’ve been working diligently to address user feedback about desktop files not opening in the Visio web editor. Today, we’re excited to announce that we’ve made a number of improvements towards a more seamless user experience between the Visio web and desktop apps.



What’s new



Visio users can now open and edit files containing shapes with the following properties in Visio for the web:



  • Rectangle gradients

  • More fill and line patterns

  • OLE objects

  • Data graphics

  • Shadow text

  • Vertical text

  • Double underlines

  • Shadow effects

  • Reflection effects

  • Glow effects

  • Soft edges

  • Bevel effects

  • 3-D rotations

  • Perspectives and 3-D rotation perspectives

  • Compound line patterns

  • 1-D and 2-D protection


*Note: Some interactions have been optimized to ensure they work in Visio for the web.



An image of a component architecture diagram demonstrating how shapes with gradients appear in Visio for the web.An image of a component architecture diagram demonstrating how shapes with gradients appear in Visio for the web.


Looking ahead



Our goal is to always make it easier for you to think and collaborate on ideas visually—whether improving processes, developing new reporting structures, or brainstorming concepts. With this new update, we hope you will find it easier to work with colleagues, from whichever app you prefer.



We are continuing to make improvements on this front and look forward to introducing support, for example, for diagrams containing shapes with layers or diagrams with more than 1,000 shapes. To learn more about the properties that can still lead to compatibility issues when editing files in Visio for the web, please see Why can’t I open a diagram for editing in Visio for the web?



Watch our on-demand webinar



Watch the event recording here: Editable for all: How to create diagrams that work virtually anywhere and across Visio versions. During this session, we show you how to create Visio files that can be accessed by all stakeholders regardless of which Visio version (or app) you use. We also discuss how to avoid or quickly address any web alerts that prevent in-browser edits, so you can jump right back into your workflow.



We are listening!



We look forward to hearing your feedback and learning more about how we can ensure a more seamless user experience between Visio apps. Please tell us what you think in the comment section below. You can also send feedback via the Visio Feedback Portal or directly in the Visio web app using “Give Feedback to Microsoft” in the bottom right corner.



Did you know? The Microsoft 365 Roadmap is where you can get the latest updates on productivity apps and intelligent cloud services. Check out what features are in development and coming soon on the Microsoft 365 Roadmap homepage or learn more about roadmap item, Improved interoperability between the Visio web and desktop apps.