This document discusses concurrency utilities introduced in Java 8 including parallel tasks, parallel streams, parallel array operations, CompletableFuture, ConcurrentHashMap, scalable updatable variables, and StampedLock. It provides examples and discusses when and how to properly use these utilities as well as potential performance issues. Resources for further reading on Java concurrency are also listed.
The document discusses Android over-the-air (OTA) updates, including the update mechanism, update packages, and the recovery console. It describes how OTA updates work in Android, from downloading an update package to verifying and applying the updates. It also discusses the AOSP components involved like the updater binary, edify scripting language, and recovery console. Finally, it covers creating an OTA application to check and download updates and rebooting into recovery to apply them.
Upgrade to IBM z/OS V2.4 technical actionsMarna Walle
Yes, "upgrade" is the new name for these traditional "migration" sessions! This is part one of a two-part session that will be of interest to System Programmers and their managers who are upgrading to z/OS 2.4 from either z/OS 2.2 or 2.3. It is strongly recommended that you review sessions for a complete upgrade picture.
The general availability date for z/OS V2.4 was September 30, 2019.
WMUG NL Tuesday - Latest and greatest in the world of Configuration ManagerTim De Keukelaere
The document provides an overview of the latest features in Configuration Manager current branch. It discusses new capabilities for tenant attach, management insight rules, client log collection, Edge management, task sequences, software updates orchestration groups, servicing stack updates, Power BI reports, and other areas. The document includes demos of several new features.
Meteor is a reactive web application framework that uses JavaScript on both the client and server. It provides reactivity through Tracker.autorun, which re-runs functions automatically when reactive data sources change. Meteor uses DDP for client-server communication and Minimongo, a MongoDB implementation, for client-side data caching. The document provides steps for creating a basic Meteor application with user accounts, routing, schemas, forms, and template helpers to display posts data reactively.
The document provides step-by-step instructions for importing HR support packages into an ECC6 system with EHP4. It outlines preparing the system by applying required notes and patches. It then details downloading the support packages from SAP Solution Manager, defining the import queue, performing the import using SPAM, and completing post-import steps like adjusting custom code and regenerating objects. The process involves pausing at phases for adjusting custom objects with transactions SPDD and SPAU before resuming the import.
Optimizing your use of react life cycles by shedrack akintayoShedrack Akintayo
This document discusses React component lifecycle methods including mounting, updating, and unmounting methods. It explains what lifecycle methods are, provides examples of common methods like constructor(), render(), and componentDidMount(), and discusses when and why to optimize lifecycle method usage. Pure components are introduced as simpler alternatives that can improve performance by reducing unnecessary re-renders. Overall the document serves as an introduction to React component lifecycles, providing definitions and examples of important methods.
This document discusses concurrency utilities introduced in Java 8 including parallel tasks, parallel streams, parallel array operations, CompletableFuture, ConcurrentHashMap, scalable updatable variables, and StampedLock. It provides examples and discusses when and how to properly use these utilities as well as potential performance issues. Resources for further reading on Java concurrency are also listed.
The document discusses Android over-the-air (OTA) updates, including the update mechanism, update packages, and the recovery console. It describes how OTA updates work in Android, from downloading an update package to verifying and applying the updates. It also discusses the AOSP components involved like the updater binary, edify scripting language, and recovery console. Finally, it covers creating an OTA application to check and download updates and rebooting into recovery to apply them.
Upgrade to IBM z/OS V2.4 technical actionsMarna Walle
Yes, "upgrade" is the new name for these traditional "migration" sessions! This is part one of a two-part session that will be of interest to System Programmers and their managers who are upgrading to z/OS 2.4 from either z/OS 2.2 or 2.3. It is strongly recommended that you review sessions for a complete upgrade picture.
The general availability date for z/OS V2.4 was September 30, 2019.
WMUG NL Tuesday - Latest and greatest in the world of Configuration ManagerTim De Keukelaere
The document provides an overview of the latest features in Configuration Manager current branch. It discusses new capabilities for tenant attach, management insight rules, client log collection, Edge management, task sequences, software updates orchestration groups, servicing stack updates, Power BI reports, and other areas. The document includes demos of several new features.
Meteor is a reactive web application framework that uses JavaScript on both the client and server. It provides reactivity through Tracker.autorun, which re-runs functions automatically when reactive data sources change. Meteor uses DDP for client-server communication and Minimongo, a MongoDB implementation, for client-side data caching. The document provides steps for creating a basic Meteor application with user accounts, routing, schemas, forms, and template helpers to display posts data reactively.
The document provides step-by-step instructions for importing HR support packages into an ECC6 system with EHP4. It outlines preparing the system by applying required notes and patches. It then details downloading the support packages from SAP Solution Manager, defining the import queue, performing the import using SPAM, and completing post-import steps like adjusting custom code and regenerating objects. The process involves pausing at phases for adjusting custom objects with transactions SPDD and SPAU before resuming the import.
Optimizing your use of react life cycles by shedrack akintayoShedrack Akintayo
This document discusses React component lifecycle methods including mounting, updating, and unmounting methods. It explains what lifecycle methods are, provides examples of common methods like constructor(), render(), and componentDidMount(), and discusses when and why to optimize lifecycle method usage. Pure components are introduced as simpler alternatives that can improve performance by reducing unnecessary re-renders. Overall the document serves as an introduction to React component lifecycles, providing definitions and examples of important methods.
This document provides instructions for upgrading the OutSystems platform. It is a four-step process of analysis and preparation, planning, execution, and testing. The execution step involves upgrading the platform server component, development tools, and applications to the new version. Depending on the upgrade scenario, all applications may need to be published at once or gradually. Proper planning and testing is required to minimize disruptions.
Bring and distribute your dekstop applications on the Universal Windows Platf...Matteo Pagani
The Desktop Bridge is a technology introduced last year with Windows 10 Anniversary Update, which allows to take existing desktop applications and bring them to the Universal Windows Platform world. In this session, you're going to learn how the Desktop Bridge works, how to convert an existing desktop application and to add new Windows 10 features, by taking advantage of the new tools introduced in Visual Studio 2017 and Windows 10 Creators Update. At the end of the journey, you will have an application which offers a cleaner and smoother installation experience; that has an identity, so it can leverage new Windows 10 features like Windows Hello and Cortana; that you'll be able to deploy through existing channels like the web, Intune or SSCM, but also with new ones like the Windows Store and Windows Store for Business, which will allow you to reach also Windows 10 S users.
Apache Cordova phonegap plugins for mobile app developmentwebprogr.com
Phonegap application development company - Using Apache Cordova 6.0 + plugins
Webprogr.com's experience and expertise as an experienced Phonegap application development company in designing and developing engaging mobile applications help serve your enterprise cross platform business app needs better. Our rich Phonegap cross platform development experience, flexible business model, and rigorous processes can translate to high quality, faster time-to-market, and cost effective mobile apps.Webprogr.com is ranked among the best phonegap developers and top cross platform mobile application development companies in India. To discuss more on cross platform app developers and PhoneGap experts' services and how we could help you with your enterprise app needs please contact us at sales@webprogr.com or call TEL: USA 703 495 5847 , INDIA: +91 44 24850191.
1. The document discusses using Meteor for building mobile applications. Key features of Meteor like automatic data synchronization and Cordova integration are highlighted.
2. Various patterns for structuring Meteor mobile apps are presented, including organizing the project structure, using templates, helpers, and subscriptions to keep data updated.
3. The document also provides an example of how to build a mobile approval application with Meteor that integrates with multiple backend systems and allows approving/denying requests from any device.
Rapid Clone is a utility that can be used to clone an Oracle Applications system. The cloning process involves preparing the source system, copying it to the target system, and then configuring the target system. Some finishing tasks like updating profile options and instance-specific settings may also need to be completed.
Application Engine is a tool used for batch or online processing of large amounts of data without user intervention. It allows SQL statements, PeopleCode, and program control actions to be defined to perform a business process. Application Engine programs reside in the database, do not require compilation, and provide built-in restart logic. They are made up of sections, steps containing actions like SQL, PeopleCode, and program flow controls. Application Engine can be executed from the Process Scheduler, command line, or called from PeopleCode.
This document outlines the migration path from CloudGateway 2.6 to XenMobile 8.5. The architecture will move from StoreFront being the main authentication front-end to AppController being the main authentication front-end. The migration involves upgrading infrastructure components like NetScaler Gateway, StoreFront, and AppController in a specified order. Client devices then need to be upgraded to WorxHome and new versions of Receiver to work with the new architecture.
The document discusses infrastructure changes and the process for upgrading to Configuration Manager 2012 R2. Key changes include support for Windows Server 2012 R2 and SQL Server database location designation. The upgrade process involves backing up the current site, replacing the ADK, verifying the database can upgrade, upgrading the site system, verifying success, and upgrading clients. It is described as an easy process to follow.
This document provides an overview of applications in UrbanCode Deploy. It defines key terminology like components, environments, and processes. It describes how to create and scope applications, add components and resources to environments, and create application processes. It also covers the use of tags, approvals, notifications, properties and snapshots to control deployments.
This module discusses completing the installation of Oracle Applications by reviewing required post-installation tasks such as configuring client software and passwords, implementing product and country-specific functionality, and tasks specific to the installation such as setting up printers or resizing the database. It also covers logging into Oracle Applications and understanding system administration and maintenance tasks.
The document discusses upgrading a standalone UiPath Orchestrator installation from an earlier version to the latest 2023.4 version. It covers key considerations for planning the upgrade such as supported upgrade paths, approach (in-place vs parallel), and testing the upgrade in non-production environments first. The document then demonstrates upgrading Orchestrator in an IaaS multi-node setup, upgrading the high availability add-on (HAA), and upgrading an Orchestrator deployment in Azure PaaS.
Unit 4- State Machine in mobile programmingLeahRachael
This document provides an overview of state machines and their use in applications. A state machine defines the process flow of an application at runtime by converting it into a series of states. It reads a series of inputs and switches to different states accordingly. Examples are provided of state machines for fetching data from an API and for a washer/dryer machine. Key components of a state machine include states, events/inputs, and transitions between states. States represent the status of the machine, events are the inputs that trigger transitions, and transitions move the machine from one state to another. Finite state machines have a finite number of states and can only be in one state at a time. Moore and Mealy machines are two types that differ in
The document provides an overview of ASP.NET, including its architecture, web server controls, page lifecycle, state management, user controls, AJAX functionality, and how it relates to SharePoint 2010. Key points covered include the benefits of ASP.NET compared to classic ASP, the 3-tier architecture model, events in the page lifecycle, options for client-side and server-side state management, how user controls work, and the ASP.NET AJAX library and controls.
AutoConfig is a tool that centralizes and simplifies Oracle Applications configuration management. It works with Oracle Applications Manager to edit the Applications context file, which contains all configuration parameters. AutoConfig then generates configuration files and updates profiles by reading templates and the Applications context. Running AutoConfig propagates changes to both the application and database tiers. Its logs and rollback files allow monitoring runs and restoring previous configurations.
The document outlines the steps for performing a standard Oracle E-Business Suite installation and an express installation. A standard installation involves 26 steps to configure the system, database, applications nodes, and perform the installation. An express installation provides a simplified single-user setup with default configurations in 6 steps.
The document provides information about exam AZ-400 and a case study for Litware Inc. It discusses:
1) Litware's existing monolithic application architecture with over 80 code branches, issues with long merge times and bugs from code merging.
2) Litware's plans to develop a new investment planning application suite including a web app and two mobile apps, move to a more agile methodology, and use cloud services when suitable.
3) Technical requirements for the new applications including minimizing firewall access, using Azure DevOps for package management and mobile app monitoring, and ensuring consistent server configurations with Azure Automation.
This document discusses Remote Config, a Firebase service that allows modifying app behavior without deploying updates. It summarizes the Remote Config REST API and a Ruby gem called Remocon that provides additional features for managing Remote Config via a YAML-based approach. Remocon allows validating config values, automatically pushing updates, and viewing diffs between configurations. The document provides code samples for fetching, updating, and validating Remote Config using the REST API and Remocon.
In React, a class-based component is a JavaScript class that extends the base Component class from the React library. Class-based components are used to define a UI component that can have state, lifecycle methods, and other functionalities.
Class-based components have a render() method that returns a React element, which describes what should be rendered on the screen. They also have access to lifecycle methods, such as componentDidMount() and componentDidUpdate(), which allow developers to run specific code at different stages of the component's lifecycle.
One of the main advantages of class-based components over functional components is their ability to manage internal state. The state object in a class-based component can be updated using this.setState(), and changes to the state will trigger a re-render of the component. This is particularly useful for creating dynamic UIs that change in response to user interactions.
While functional components are becoming more popular in React due to their simplicity and performance benefits, class-based components are still commonly used and can be a powerful tool for creating complex UI components.
Introduction- e - waste – definition - sources of e-waste– hazardous substances in e-waste - effects of e-waste on environment and human health- need for e-waste management– e-waste handling rules - waste minimization techniques for managing e-waste – recycling of e-waste - disposal treatment methods of e- waste – mechanism of extraction of precious metal from leaching solution-global Scenario of E-waste – E-waste in India- case studies.
Comparative analysis between traditional aquaponics and reconstructed aquapon...bijceesjournal
The aquaponic system of planting is a method that does not require soil usage. It is a method that only needs water, fish, lava rocks (a substitute for soil), and plants. Aquaponic systems are sustainable and environmentally friendly. Its use not only helps to plant in small spaces but also helps reduce artificial chemical use and minimizes excess water use, as aquaponics consumes 90% less water than soil-based gardening. The study applied a descriptive and experimental design to assess and compare conventional and reconstructed aquaponic methods for reproducing tomatoes. The researchers created an observation checklist to determine the significant factors of the study. The study aims to determine the significant difference between traditional aquaponics and reconstructed aquaponics systems propagating tomatoes in terms of height, weight, girth, and number of fruits. The reconstructed aquaponics system’s higher growth yield results in a much more nourished crop than the traditional aquaponics system. It is superior in its number of fruits, height, weight, and girth measurement. Moreover, the reconstructed aquaponics system is proven to eliminate all the hindrances present in the traditional aquaponics system, which are overcrowding of fish, algae growth, pest problems, contaminated water, and dead fish.
This document provides instructions for upgrading the OutSystems platform. It is a four-step process of analysis and preparation, planning, execution, and testing. The execution step involves upgrading the platform server component, development tools, and applications to the new version. Depending on the upgrade scenario, all applications may need to be published at once or gradually. Proper planning and testing is required to minimize disruptions.
Bring and distribute your dekstop applications on the Universal Windows Platf...Matteo Pagani
The Desktop Bridge is a technology introduced last year with Windows 10 Anniversary Update, which allows to take existing desktop applications and bring them to the Universal Windows Platform world. In this session, you're going to learn how the Desktop Bridge works, how to convert an existing desktop application and to add new Windows 10 features, by taking advantage of the new tools introduced in Visual Studio 2017 and Windows 10 Creators Update. At the end of the journey, you will have an application which offers a cleaner and smoother installation experience; that has an identity, so it can leverage new Windows 10 features like Windows Hello and Cortana; that you'll be able to deploy through existing channels like the web, Intune or SSCM, but also with new ones like the Windows Store and Windows Store for Business, which will allow you to reach also Windows 10 S users.
Apache Cordova phonegap plugins for mobile app developmentwebprogr.com
Phonegap application development company - Using Apache Cordova 6.0 + plugins
Webprogr.com's experience and expertise as an experienced Phonegap application development company in designing and developing engaging mobile applications help serve your enterprise cross platform business app needs better. Our rich Phonegap cross platform development experience, flexible business model, and rigorous processes can translate to high quality, faster time-to-market, and cost effective mobile apps.Webprogr.com is ranked among the best phonegap developers and top cross platform mobile application development companies in India. To discuss more on cross platform app developers and PhoneGap experts' services and how we could help you with your enterprise app needs please contact us at sales@webprogr.com or call TEL: USA 703 495 5847 , INDIA: +91 44 24850191.
1. The document discusses using Meteor for building mobile applications. Key features of Meteor like automatic data synchronization and Cordova integration are highlighted.
2. Various patterns for structuring Meteor mobile apps are presented, including organizing the project structure, using templates, helpers, and subscriptions to keep data updated.
3. The document also provides an example of how to build a mobile approval application with Meteor that integrates with multiple backend systems and allows approving/denying requests from any device.
Rapid Clone is a utility that can be used to clone an Oracle Applications system. The cloning process involves preparing the source system, copying it to the target system, and then configuring the target system. Some finishing tasks like updating profile options and instance-specific settings may also need to be completed.
Application Engine is a tool used for batch or online processing of large amounts of data without user intervention. It allows SQL statements, PeopleCode, and program control actions to be defined to perform a business process. Application Engine programs reside in the database, do not require compilation, and provide built-in restart logic. They are made up of sections, steps containing actions like SQL, PeopleCode, and program flow controls. Application Engine can be executed from the Process Scheduler, command line, or called from PeopleCode.
This document outlines the migration path from CloudGateway 2.6 to XenMobile 8.5. The architecture will move from StoreFront being the main authentication front-end to AppController being the main authentication front-end. The migration involves upgrading infrastructure components like NetScaler Gateway, StoreFront, and AppController in a specified order. Client devices then need to be upgraded to WorxHome and new versions of Receiver to work with the new architecture.
The document discusses infrastructure changes and the process for upgrading to Configuration Manager 2012 R2. Key changes include support for Windows Server 2012 R2 and SQL Server database location designation. The upgrade process involves backing up the current site, replacing the ADK, verifying the database can upgrade, upgrading the site system, verifying success, and upgrading clients. It is described as an easy process to follow.
This document provides an overview of applications in UrbanCode Deploy. It defines key terminology like components, environments, and processes. It describes how to create and scope applications, add components and resources to environments, and create application processes. It also covers the use of tags, approvals, notifications, properties and snapshots to control deployments.
This module discusses completing the installation of Oracle Applications by reviewing required post-installation tasks such as configuring client software and passwords, implementing product and country-specific functionality, and tasks specific to the installation such as setting up printers or resizing the database. It also covers logging into Oracle Applications and understanding system administration and maintenance tasks.
The document discusses upgrading a standalone UiPath Orchestrator installation from an earlier version to the latest 2023.4 version. It covers key considerations for planning the upgrade such as supported upgrade paths, approach (in-place vs parallel), and testing the upgrade in non-production environments first. The document then demonstrates upgrading Orchestrator in an IaaS multi-node setup, upgrading the high availability add-on (HAA), and upgrading an Orchestrator deployment in Azure PaaS.
Unit 4- State Machine in mobile programmingLeahRachael
This document provides an overview of state machines and their use in applications. A state machine defines the process flow of an application at runtime by converting it into a series of states. It reads a series of inputs and switches to different states accordingly. Examples are provided of state machines for fetching data from an API and for a washer/dryer machine. Key components of a state machine include states, events/inputs, and transitions between states. States represent the status of the machine, events are the inputs that trigger transitions, and transitions move the machine from one state to another. Finite state machines have a finite number of states and can only be in one state at a time. Moore and Mealy machines are two types that differ in
The document provides an overview of ASP.NET, including its architecture, web server controls, page lifecycle, state management, user controls, AJAX functionality, and how it relates to SharePoint 2010. Key points covered include the benefits of ASP.NET compared to classic ASP, the 3-tier architecture model, events in the page lifecycle, options for client-side and server-side state management, how user controls work, and the ASP.NET AJAX library and controls.
AutoConfig is a tool that centralizes and simplifies Oracle Applications configuration management. It works with Oracle Applications Manager to edit the Applications context file, which contains all configuration parameters. AutoConfig then generates configuration files and updates profiles by reading templates and the Applications context. Running AutoConfig propagates changes to both the application and database tiers. Its logs and rollback files allow monitoring runs and restoring previous configurations.
The document outlines the steps for performing a standard Oracle E-Business Suite installation and an express installation. A standard installation involves 26 steps to configure the system, database, applications nodes, and perform the installation. An express installation provides a simplified single-user setup with default configurations in 6 steps.
The document provides information about exam AZ-400 and a case study for Litware Inc. It discusses:
1) Litware's existing monolithic application architecture with over 80 code branches, issues with long merge times and bugs from code merging.
2) Litware's plans to develop a new investment planning application suite including a web app and two mobile apps, move to a more agile methodology, and use cloud services when suitable.
3) Technical requirements for the new applications including minimizing firewall access, using Azure DevOps for package management and mobile app monitoring, and ensuring consistent server configurations with Azure Automation.
This document discusses Remote Config, a Firebase service that allows modifying app behavior without deploying updates. It summarizes the Remote Config REST API and a Ruby gem called Remocon that provides additional features for managing Remote Config via a YAML-based approach. Remocon allows validating config values, automatically pushing updates, and viewing diffs between configurations. The document provides code samples for fetching, updating, and validating Remote Config using the REST API and Remocon.
In React, a class-based component is a JavaScript class that extends the base Component class from the React library. Class-based components are used to define a UI component that can have state, lifecycle methods, and other functionalities.
Class-based components have a render() method that returns a React element, which describes what should be rendered on the screen. They also have access to lifecycle methods, such as componentDidMount() and componentDidUpdate(), which allow developers to run specific code at different stages of the component's lifecycle.
One of the main advantages of class-based components over functional components is their ability to manage internal state. The state object in a class-based component can be updated using this.setState(), and changes to the state will trigger a re-render of the component. This is particularly useful for creating dynamic UIs that change in response to user interactions.
While functional components are becoming more popular in React due to their simplicity and performance benefits, class-based components are still commonly used and can be a powerful tool for creating complex UI components.
Similar to Writing OS Updater App for Android (20)
Introduction- e - waste – definition - sources of e-waste– hazardous substances in e-waste - effects of e-waste on environment and human health- need for e-waste management– e-waste handling rules - waste minimization techniques for managing e-waste – recycling of e-waste - disposal treatment methods of e- waste – mechanism of extraction of precious metal from leaching solution-global Scenario of E-waste – E-waste in India- case studies.
Comparative analysis between traditional aquaponics and reconstructed aquapon...bijceesjournal
The aquaponic system of planting is a method that does not require soil usage. It is a method that only needs water, fish, lava rocks (a substitute for soil), and plants. Aquaponic systems are sustainable and environmentally friendly. Its use not only helps to plant in small spaces but also helps reduce artificial chemical use and minimizes excess water use, as aquaponics consumes 90% less water than soil-based gardening. The study applied a descriptive and experimental design to assess and compare conventional and reconstructed aquaponic methods for reproducing tomatoes. The researchers created an observation checklist to determine the significant factors of the study. The study aims to determine the significant difference between traditional aquaponics and reconstructed aquaponics systems propagating tomatoes in terms of height, weight, girth, and number of fruits. The reconstructed aquaponics system’s higher growth yield results in a much more nourished crop than the traditional aquaponics system. It is superior in its number of fruits, height, weight, and girth measurement. Moreover, the reconstructed aquaponics system is proven to eliminate all the hindrances present in the traditional aquaponics system, which are overcrowding of fish, algae growth, pest problems, contaminated water, and dead fish.
Software Engineering and Project Management - Introduction, Modeling Concepts...Prakhyath Rai
Introduction, Modeling Concepts and Class Modeling: What is Object orientation? What is OO development? OO Themes; Evidence for usefulness of OO development; OO modeling history. Modeling
as Design technique: Modeling, abstraction, The Three models. Class Modeling: Object and Class Concept, Link and associations concepts, Generalization and Inheritance, A sample class model, Navigation of class models, and UML diagrams
Building the Analysis Models: Requirement Analysis, Analysis Model Approaches, Data modeling Concepts, Object Oriented Analysis, Scenario-Based Modeling, Flow-Oriented Modeling, class Based Modeling, Creating a Behavioral Model.
Redefining brain tumor segmentation: a cutting-edge convolutional neural netw...IJECEIAES
Medical image analysis has witnessed significant advancements with deep learning techniques. In the domain of brain tumor segmentation, the ability to
precisely delineate tumor boundaries from magnetic resonance imaging (MRI)
scans holds profound implications for diagnosis. This study presents an ensemble convolutional neural network (CNN) with transfer learning, integrating
the state-of-the-art Deeplabv3+ architecture with the ResNet18 backbone. The
model is rigorously trained and evaluated, exhibiting remarkable performance
metrics, including an impressive global accuracy of 99.286%, a high-class accuracy of 82.191%, a mean intersection over union (IoU) of 79.900%, a weighted
IoU of 98.620%, and a Boundary F1 (BF) score of 83.303%. Notably, a detailed comparative analysis with existing methods showcases the superiority of
our proposed model. These findings underscore the model’s competence in precise brain tumor localization, underscoring its potential to revolutionize medical
image analysis and enhance healthcare outcomes. This research paves the way
for future exploration and optimization of advanced CNN models in medical
imaging, emphasizing addressing false positives and resource efficiency.
Null Bangalore | Pentesters Approach to AWS IAMDivyanshu
#Abstract:
- Learn more about the real-world methods for auditing AWS IAM (Identity and Access Management) as a pentester. So let us proceed with a brief discussion of IAM as well as some typical misconfigurations and their potential exploits in order to reinforce the understanding of IAM security best practices.
- Gain actionable insights into AWS IAM policies and roles, using hands on approach.
#Prerequisites:
- Basic understanding of AWS services and architecture
- Familiarity with cloud security concepts
- Experience using the AWS Management Console or AWS CLI.
- For hands on lab create account on [killercoda.com](https://killercoda.com/cloudsecurity-scenario/)
# Scenario Covered:
- Basics of IAM in AWS
- Implementing IAM Policies with Least Privilege to Manage S3 Bucket
- Objective: Create an S3 bucket with least privilege IAM policy and validate access.
- Steps:
- Create S3 bucket.
- Attach least privilege policy to IAM user.
- Validate access.
- Exploiting IAM PassRole Misconfiguration
-Allows a user to pass a specific IAM role to an AWS service (ec2), typically used for service access delegation. Then exploit PassRole Misconfiguration granting unauthorized access to sensitive resources.
- Objective: Demonstrate how a PassRole misconfiguration can grant unauthorized access.
- Steps:
- Allow user to pass IAM role to EC2.
- Exploit misconfiguration for unauthorized access.
- Access sensitive resources.
- Exploiting IAM AssumeRole Misconfiguration with Overly Permissive Role
- An overly permissive IAM role configuration can lead to privilege escalation by creating a role with administrative privileges and allow a user to assume this role.
- Objective: Show how overly permissive IAM roles can lead to privilege escalation.
- Steps:
- Create role with administrative privileges.
- Allow user to assume the role.
- Perform administrative actions.
- Differentiation between PassRole vs AssumeRole
Try at [killercoda.com](https://killercoda.com/cloudsecurity-scenario/)
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECTjpsjournal1
The rivalry between prominent international actors for dominance over Central Asia's hydrocarbon
reserves and the ancient silk trade route, along with China's diplomatic endeavours in the area, has been
referred to as the "New Great Game." This research centres on the power struggle, considering
geopolitical, geostrategic, and geoeconomic variables. Topics including trade, political hegemony, oil
politics, and conventional and nontraditional security are all explored and explained by the researcher.
Using Mackinder's Heartland, Spykman Rimland, and Hegemonic Stability theories, examines China's role
in Central Asia. This study adheres to the empirical epistemological method and has taken care of
objectivity. This study analyze primary and secondary research documents critically to elaborate role of
china’s geo economic outreach in central Asian countries and its future prospect. China is thriving in trade,
pipeline politics, and winning states, according to this study, thanks to important instruments like the
Shanghai Cooperation Organisation and the Belt and Road Economic Initiative. According to this study,
China is seeing significant success in commerce, pipeline politics, and gaining influence on other
governments. This success may be attributed to the effective utilisation of key tools such as the Shanghai
Cooperation Organisation and the Belt and Road Economic Initiative.
Embedded machine learning-based road conditions and driving behavior monitoringIJECEIAES
Car accident rates have increased in recent years, resulting in losses in human lives, properties, and other financial costs. An embedded machine learning-based system is developed to address this critical issue. The system can monitor road conditions, detect driving patterns, and identify aggressive driving behaviors. The system is based on neural networks trained on a comprehensive dataset of driving events, driving styles, and road conditions. The system effectively detects potential risks and helps mitigate the frequency and impact of accidents. The primary goal is to ensure the safety of drivers and vehicles. Collecting data involved gathering information on three key road events: normal street and normal drive, speed bumps, circular yellow speed bumps, and three aggressive driving actions: sudden start, sudden stop, and sudden entry. The gathered data is processed and analyzed using a machine learning system designed for limited power and memory devices. The developed system resulted in 91.9% accuracy, 93.6% precision, and 92% recall. The achieved inference time on an Arduino Nano 33 BLE Sense with a 32-bit CPU running at 64 MHz is 34 ms and requires 2.6 kB peak RAM and 139.9 kB program flash memory, making it suitable for resource-constrained embedded systems.
Advanced control scheme of doubly fed induction generator for wind turbine us...IJECEIAES
This paper describes a speed control device for generating electrical energy on an electricity network based on the doubly fed induction generator (DFIG) used for wind power conversion systems. At first, a double-fed induction generator model was constructed. A control law is formulated to govern the flow of energy between the stator of a DFIG and the energy network using three types of controllers: proportional integral (PI), sliding mode controller (SMC) and second order sliding mode controller (SOSMC). Their different results in terms of power reference tracking, reaction to unexpected speed fluctuations, sensitivity to perturbations, and resilience against machine parameter alterations are compared. MATLAB/Simulink was used to conduct the simulations for the preceding study. Multiple simulations have shown very satisfying results, and the investigations demonstrate the efficacy and power-enhancing capabilities of the suggested control system.
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsVictor Morales
K8sGPT is a tool that analyzes and diagnoses Kubernetes clusters. This presentation was used to share the requirements and dependencies to deploy K8sGPT in a local environment.
4. Non-A/B devices
• Devices launched before Android
8.0 are known as non-A/B
devices
• Recovery handles the installation
of updates, while cache and
misc partitions store commands
and logs
Legacy system updates
boot
system
vendor
recovery
userdata
cache
misc
5. Legacy system updates (contd.)
• Device checks and downloads update (either in cache or userdata)
• Update’s signature is verified with system
• Device reboots into recovery mode while loading commands stored in cache
• Recovery (binary) verifies signature of update and installs it
• Device reboots, system updates recovery partition with new image if required
6. Issues with legacy system updates
• Updater app needs to handle storage space issues
• User is unable to use the device while updating
• After update, rebooting takes longer compared to normal boot
• On update failure, device is affected and user needs to visit service centre in
most cases
8. Seamless updates
A/B devices
• New way to update OS on device since Android 8.0+
• Ensures device has a working bootable system in case of update failure
• Updates are installed in background without affecting device usability
• Storage space issues can be avoided with streaming updates
9. • A/B system updates contains
two set of partitions for running
system
• Partitions are also known as
slots (slot_a, slot_b)
• System runs on current slot
while other slot remains unused
• Updates are installed by Updater
app in unused slot
Seamless updates (contd.)
userdata
boot_a
system_a
vendor_a
system_b
vendor_b
boot_b
10. • A/B updates uses a background
daemon called update_engine
• update_engine is responsible for
streaming/installing the update
• update_engine can either install
update from a local file or stream
it directly from remote server
• Once update is installed in unused
slot, update_engine marks it as
active
• System switches to active slot on
reboot
Seamless updates (contd.)
12. • Exists in AOSP’s
bootable/recovery repository
• Showcases basic APIs usage
• Provides python script to
generate update config
• Not compatible with Gradle build
system
• Written in Java and last updated
4+ years ago
AOSP sample app
13. • Updater needs to connect with
remote server for downloading
and installing updates
• Periodic automatic updates
check and install is required
• Need to handle different kind of
errors
Real world use-case
14. • Written in Kotlin and Material3
• UI shows different elements
based on status code emitted in
a StateFlow
• Codes emitted in flow contains
both custom and update_engine
codes to accommodate
operations in different stages
CalyxOS’s SystemUpdater
15. Update stages
IDLE Checking for updates Update Available Preparing to update
Downloading
Verification & Finalising
Updated, needs reboot
Error
Suspended
16. Update status (API & App)
/**
* Possible status of the Update
*
* This enum holds a combination of both status supplied by update_engine and
* custom ones required for this app. Status from update_engine are followed by custom.
*/
// Keep in sync with: system/update_engine/client_library/include/update_engine/update_status.h
enum class UpdateStatus {
IDLE, // 0
CHECKING_FOR_UPDATE, // 1
UPDATE_AVAILABLE, // 2
DOWNLOADING, // 3
VERIFYING, // 4
FINALIZING, // 5
UPDATED_NEED_REBOOT, // 6
REPORTING_ERROR_EVENT, // 7
ATTEMPTING_ROLLBACK, // 8
DISABLED, // 9
NEED_PERMISSION_TO_UPDATE, // 10
CLEANUP_PREVIOUS_UPDATE, // 11
SUSPENDED, // custom: event when update is suspended
PREPARING_TO_UPDATE, // custom: event sent during payload verification, fetching props
FAILED_PREPARING_UPDATE // custom: event when payload verification or fetching props
fails
}
17. Listening callbacks (API)
/**
* Callback function for UpdateEngine. Used to keep the caller up to date
* with progress, so the UI (if any) can be updated.
*/
@SystemApi
public abstract class UpdateEngineCallback {
/**
* Invoked when anything changes. The value of {@code status} will
* be one of the values from {@link UpdateEngine.UpdateStatusConstants},
* and {@code percent} will be valid [TODO: in which cases?].
*/
public abstract void onStatusUpdate(int status, float percent);
/**
* Invoked when the payload has been applied, whether successfully or
* unsuccessfully. The value of {@code errorCode} will be one of the
* values from {@link UpdateEngine.ErrorCodeConstants}.
*/
public abstract void onPayloadApplicationComplete(
@UpdateEngine.ErrorCode int errorCode);
}
18. Listening callbacks (contd.)
init {
// restore last update status to properly reflect the status
restoreLastUpdate()
// handle status updates from update_engine
updateEngine.bind(this)
GlobalScope.launch {
updateStatus.onEach {
when (it) {
UpdateStatus.CHECKING_FOR_UPDATE -> {}
else -> {
sharedPreferences.edit(true) { putString(UPDATE_STATUS, it.name) }
}
}
}.collect()
updateProgress.collect()
}
}
19. Checking for updates
class UpdateWorker @AssistedInject constructor(
@Assisted val appContext: Context,
@Assisted workerParams: WorkerParameters,
) : CoroutineWorker(appContext, workerParams) {
companion object {
const val WORK_NAME = "UpdateWork"
}
override suspend fun doWork(): Result {
Intent(appContext, SystemUpdaterService::class.java).also {
it.action = SystemUpdaterService.CHECK_AND_APPLY_UPDATES
appContext.startService(it)
}
return Result.success()
}
}
20. Preparing to update (Verifying metadata)
metadataFile.createNewFile()
val connection = URL(url).openConnection() as HttpsURLConnection
// Request a specific range to avoid skipping through load of data
// Also do a [-1] to the range end to adjust the file size
connection.setRequestProperty(
"Range",
"bytes=${packageFile.offset}-${packageFile.offset + packageFile.size - 1}"
)
connection.inputStream.use { input ->
metadataFile.outputStream().use { input.copyTo(it) }
}
if (!updateEngine.verifyPayloadMetadata(metadataFile.absolutePath)) {
_updateStatus.value = UpdateStatus.FAILED_PREPARING_UPDATE
return@withContext Result.failure(Exception("Failed verifying metadata!"))
}
return@withContext Result.success(true)
21. Downloading
val propertiesFile = updateConfig.find { it.filename == payloadProperties }
val payloadFile = updateConfig.find { it.filename == payloadBinary }
if (propertiesFile != null && payloadFile != null) {
val properties = fetchPayloadProperties(updateConfig.url, propertiesFile)
if (properties.isSuccess) {
_updateStatus.value = UpdateStatus.DOWNLOADING
updateEngine.applyPayload(
updateConfig.url,
payloadFile.offset,
payloadFile.size,
properties.getOrDefault(emptyArray())
)
}
}
22. Suspending & resuming
fun suspendUpdate() {
updateEngine.suspend()
_updateStatus.value = UpdateStatus.SUSPENDED
}
fun resumeUpdate() {
restoreLastUpdate()
updateEngine.resume()
}
23. Errors
• Common errors that can occur are usually related to permissions
• Ensure the OS uses proper CA certificates
• Write SELinux rules for update_engine and app
• Verify metadata and other files have proper rw permissions
• Allow updater app to run in background for proper operations