OWASP PenText Project
The OWASP PenText XML documentation project is a collection of XML templates, XML schemas and XSLT code, which combined provide an easy way to generate IT security documents including test reports (for penetration tests, load tests, code audits, etc), offers (to companies requesting these tests) and invoices.
The OWASP PenText XML documentation project can help your software security company produce offers, reports, invoices and generic documents by offering a well-structured and easy to maintain documenting system you can modify to your liking. The XML content is multilingual (current languages: English and Dutch) and can be easily adapted - by editing the constants provided in each document - or expanded - by creating new files. Both reports and offers are comprised of smaller snippets, i.e. template texts containing, respectively, offerte text or common vulnerabilities, which can be included where relevant. The XSLT can be customized by anyone versed in XSLT. To get started it is neccessary to install a few Open Source tools. Please visit our documentation page on how to set up the environment.
The OWASP PenText project is based on XML. A PenText Report, Offer, Invoice or Generic Document is in fact a (modular) XML document, conforming to an XML Schema. The XML Schema ensures that the documents are structured correctly, so that they can then be transformed into other formats using XSLT and the SAXON XSLT processor. Currently there is only one target format: PDF. To produce the PDF document, the report, offer, invoice or generic document XML is first transformed into XSL-FO (XSL Formatting Objects), which is then converted to PDF using Apache FOP.
All files distributed with this project are free software: all documents are released under the GNU General Public License v3 (http://www.gnu.org/licenses/gpl.html) which allows you to modify and redistribute the files freely.
This project is managed by Radically Open Security members Patricia Piolon and Peter Mosmans. They can be reached at [email protected].
News and Events
How can I participate in your project?
All you have to do is make the Project Leader's aware of your available time to contribute to the project. It is also important to let the Leader's know how you would like to contribute and pitch in to help the project meet it's goals and milestones. There are many different ways you can contribute to an OWASP Project, but communication with the leads is key.
If I am not a programmer can I participate in your project?
Yes, you can certainly participate in the project if you are not a programmer or technical. The project needs different skills and expertise and different times during its development. Currently, we are looking for writers and translators. See the Road Map and Getting Involved tab for more details.
The first contributors to the project were:
- XSLT coding and documentation by Patricia Piolon
- ChatOps scripts by Peter Mosmans and John
- XML content by Peter Mosmans, Christine, Deborah, Marcus Bointon and others.
As of October 2017, the highest priorities for the next 6 months are:
- Create additional content for Forensics, code audits and such
- Get other people to review the PenText XML documentation project and provide feedback
- Get others to provide translations for the snippet library
Subsequent Releases would preferably contain
- Templates in a wider variety of languages
Involvement in the development and promotion of the PenText XML documentation project is actively encouraged! You do not have to be a security expert or a programmer to contribute. Some of the ways you can help are as follows:
Suggestions on the the XSLT side are welcome!
Are you fluent in another language? Can you help translate the snippets and strings in the PenText XML documentation project into that language?
Do you have a flair for finding bugs in software? We want to product a high quality product, so any help with Quality Assurance would be greatly appreciated. Let us know if you can offer your help.
Please mail us for feedback:
- What do you like?
- What don't you like?
- What features would you like to see prioritized on the roadmap?