Code Monkey home page Code Monkey logo

directory-content-maven-plugin's Introduction

About

License BSD 3-Clause Build Status

Provides a collection of tools for working with directories.

Goals Overview

Requirements

The plugin to run requires:

  • Java 8 or higher
  • Maven 3.3.9 or higher

Usage

General instructions on how to use the Directory Content Maven Plugin can be found on the usage page. Some more specific use cases are described in the examples given below. Last but not least, users occasionally contribute additional examples, tips or errata to the plugin's wiki page.

In case you still have questions regarding the plugin's usage, please have a look at the FAQ.

If you feel like the plugin is missing a feature or has a defect, you can fill a feature request or bug report in the issue tracker. When creating a new issue, please provide a comprehensive description of your concern. Especially for fixing bugs it is crucial that the developers can reproduce your problem. For this reason, entire debug logs, POMs or most preferably little demo projects attached to the issue are very much appreciated. Of course, patches are welcome, too. Contributors can check out the project from the source repository and will find supplementary information in the guide to helping with Maven.

Examples

To provide you with better understanding of some usages of the Directory Content Maven Plugin, you can take a look into the following examples:

You can also fetch example projects from GitHub.

directory-content-maven-plugin's People

Contributors

agabrys avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

directory-content-maven-plugin's Issues

JDK 9 support

We should be sure that plugin works on JDK9.

AC:

  • add JDK9 verification on Travis
  • use JDK9 in Jenkinsfile

xstream 1.4.7 : XML External Entity (XXE) Injection

Description copied from XML External Entity (XXE) Injection:

XXE Injection is a type of attack against an application that parses XML input. XML is a markup language that defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. By default, many XML processors allow specification of an external entity, a URI that is dereferenced and evaluated during XML processing. When an XML document is being parsed, the parser can make a request and include the content at the specified URI inside of the XML document.

Attacks can include disclosing local files, which may contain sensitive data such as passwords or private user data, using file: schemes or relative paths in the system identifier.

For example, below is a sample XML document, containing an XML element- username.

<?xml version="1.0" encoding="ISO-8859-1"?>
   <username>John</username>
</xml>

An external XML entity - xxe, is defined using a system identifier and present within a DOCTYPE header. These entities can access local or remote content. For example the below code contains an external XML entity that would fetch the content of /etc/passwd and display it to the user rendered by username.

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE foo [
   <!ENTITY xxe SYSTEM "file:///etc/passwd" >]>
   <username>&xxe;</username>
</xml>

Other XXE Injection attacks can access local resources that may not stop returning data, possibly impacting application availability and leading to Denial of Service.

Upgrade Maven Plugin Utils to 2.0.0

Maven Plugin Utils 2.0.0 is compatible with JDK 6+ and Maven 3+.

AC:

  • update plugins and dependencies
  • update documentation (release notes etc.)
  • use AssertJ instead of JUnit assertions

JDK 10 and 11 support

We should be sure that plugin works on JDK 10 and JDK 11.

AC:

  • add JDK 10 and JDK 11 verification on Travis
  • use JDK 11 in Jenkinsfile

XML transformers should be secured

An XML External Entity or XSLT External Entity (XXE) vulnerability can occur when a javax.xml.transform.Transformer is created without enabling "Secure Processing" or when one is created without disabling external DTDs. If that external entity is hijacked by an attacker it may lead to the disclosure of confidential data, denial of service, server side request forgery, port scanning from the perspective of the machine where the parser is located, and other system impacts.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.