Articles
[How to Safely Generate a Random Number](http://sockpuppet.org/blog/2014/02/25/safely-generate-random-numbers/) (2014)
Released: February 25, 2014
Advice on cryptographically secure pseudo-random number generators.
[Salted Password Hashing - Doing it Right](https://crackstation.net/hashing-security.htm) (2014)
Released: August 6, 2014
A post on Crackstation, a project by Defuse Security
[A good idea with bad usage: /dev/urandom](http://insanecoding.blogspot.co.uk/2014/05/a-good-idea-with-bad-usage-devurandom.html) (2014)
Released: May 3, 2014
Mentions many ways to make /dev/urandom fail on Linux/BSD.
[Why Invest in Application Security?](https://paragonie.com/white-paper/2015-why-invest-application-security) (2015)
Released: June 21, 2015
Running a business requires being cost-conscious and minimizing unnecessary spending. The benefits of ensuring in the security of your application are invisible to most companies, so often times they neglect to invest in secure software development as a cost-saving measure. What these companies don't realize is the potential cost (both financial and to brand reputation) a preventable data compromise can incur.
The average data breach costs millions of dollars in damage.
Investing more time and personnel to develop secure software is, for most companies, worth it to minimize this unnecessary risk to their bottom line.
[Be wary of one-time pads and other crypto unicorns](https://freedom-to-tinker.com/blog/jbonneau/be-wary-of-one-time-pads-and-other-crypto-unicorns/) (2015)
Released: March 25, 2015
A must-read for anyone looking to build their own cryptography features.
Books
 [Web Application Hacker's Handbook](http://mdsec.net/wahh) (2011)
Released: September 27, 2011
Great introduction to Web Application Security; though slightly dated.
 [Cryptography Engineering](http://www.amazon.com/Cryptography-Engineering-Principles-Practical-Applications/dp/0470474246) (2010)
Released: March 15, 2010
Develops a sense of professional paranoia while presenting crypto design techniques.
 [Securing DevOps](https://www.manning.com/books/securing-devops?a_aid=securingdevops&a_bid=1353bcd8) (2018)
Released: March 1, 2018
Securing DevOps explores how the techniques of DevOps and Security should be applied together to make cloud services safer. This introductory book reviews state of the art practices used in securing web applications and their infrastructure, and teaches you techniques to integrate security directly into your product.
 [Gray Hat Python: Programming for Hackers and Reverse Engineers](http://www.amazon.com/Gray-Hat-Python-Programming-Engineers/dp/1593271921) (2009)
Released: May 3, 2009
 [The Art of Software Security Assessment: Identifying and Preventing Software Vulnerabilities](http://www.amazon.com/The-Software-Security-Assessment-Vulnerabilities/dp/0321444426/) (2006)
Released: November 30, 2006
 [C Interfaces and Implementations: Techniques for Creating Reusable Software](http://www.amazon.com/Interfaces-Implementations-Techniques-Creating-Reusable/dp/0201498413/) (1996)
Released: August 30, 1996
 [Reversing: Secrets of Reverse Engineering](http://www.amazon.com/Reversing-Secrets-Engineering-Eldad-Eilam/dp/0764574817) (2005)
Released: April 15, 2005
 [JavaScript: The Good parts](http://www.amazon.com/JavaScript-Good-Parts-Douglas-Crockford/dp/0596517742) (2008)
Released: May 1, 2008
 [Windows Internals: Including Windows Server 2008 and Windows Vista, Fifth Edition ](http://www.amazon.com/Windows%C2%AE-Internals-Including-Developer-Reference/dp/0735625301) (2007)
Released: June 17, 2007
 [The Mac Hacker's Handbook](http://www.amazon.com/The-Hackers-Handbook-Charlie-Miller/dp/0470395362) (2009)
Released: March 3, 2009
 [The IDA Pro Book: The Unofficial Guide to the World's Most Popular Disassembler](http://www.amazon.com/The-IDA-Pro-Book-Disassembler/dp/1593271786) (2008)
Released: August 22, 2008
 [Internetworking with TCP/IP Vol. II: ANSI C Version: Design, Implementation, and Internals (3rd Edition)](http://www.amazon.com/Internetworking-TCP-Vol-Implementation-Internals/dp/0139738436) (1998)
Released: June 25, 1998
 [Network Algorithmics,: An Interdisciplinary Approach to Designing Fast Networked Devices](http://www.amazon.com/Network-Algorithmics-Interdisciplinary-Designing-Networking/dp/0120884771) (2004)
Released: December 29, 2004
 [Computation Structures (MIT Electrical Engineering and Computer Science)](http://www.amazon.com/Computation-Structures-Electrical-Engineering-Computer/dp/0262231395) (1989)
Released: December 13, 1989
 [Surreptitious Software: Obfuscation, Watermarking, and Tamperproofing for Software Protection](http://www.amazon.com/Surreptitious-Software-Obfuscation-Watermarking-Tamperproofing/dp/0321549252) (2009)
Released: August 3, 2009
[Secure Programming HOWTO](http://www.dwheeler.com/secure-programs/) (2015)
Released: March 1, 2015
[Security Engineering - Third Edition](https://www.cl.cam.ac.uk/~rja14/book.html) (2020)
Released: November 1, 2020
 [Bulletproof SSL and TLS](https://www.feistyduck.com/books/bulletproof-ssl-and-tls/) (2014)
Released: August 1, 2014
[Holistic Info-Sec for Web Developers (Fascicle 0)](https://leanpub.com/holistic-infosec-for-web-developers) (2016)
Released: September 17, 2016
The first part of a three part book series providing broad and in-depth coverage on what web developers and architects need to know in order to create robust, reliable, maintainable and secure software, networks and other, that are delivered continuously, on time, with no nasty surprises.
[Holistic Info-Sec for Web Developers (Fascicle 1)](https://leanpub.com/holistic-infosec-for-web-developers-fascicle1-vps-network-cloud-webapplications)
The second part of a three part book series providing broad and in-depth coverage on what web developers and architects need to know in order to create robust, reliable, maintainable and secure software, VPS, networks, cloud and web applications, that are delivered continuously, on time, with no nasty surprises.
Websites
[Hack This Site!](http://www.hackthissite.org)
Learn about application security by attempting to hack this website.
[Enigma Group](http://www.enigmagroup.org)
Where hackers and security experts come to train.
[Web App Sec Quiz](https://timoh6.github.io/WebAppSecQuiz/)
Self-assessment quiz for web application security
[SecurePasswords.info](https://securepasswords.info)
Secure passwords in several languages/frameworks.
[Security News Feeds Cheat-Sheet](http://lzone.de/cheat-sheet/Security-News-Feeds)
A list of security news sources.
[Open Security Training](http://opensecuritytraining.info/)
Video courses on low-level x86 programming, hacking, and forensics.
[MicroCorruption](https://microcorruption.com/login)
Capture The Flag - Learn Assembly and Embedded Device Security
[The Matasano Crypto Challenges](http://cryptopals.com)
A series of programming exercises for teaching oneself cryptography by Matasano Security. The introduction by Maciej Ceglowski explains it well.
[PentesterLab](https://pentesterlab.com)
PentesterLab provides free Hands-On exercises and a bootcamp to get started.
[Juice Shop](https://bkimminich.github.io/juice-shop)
An intentionally insecure Javascript Web Application.
[Supercar Showdown](http://hackyourselffirst.troyhunt.com/)
How to go on the offence before online attackers do.
[OWASP NodeGoat](https://github.com/owasp/nodegoat)
Purposly vulnerable to the OWASP Top 10 Node.JS web application, with tutorials, security regression testing with the OWASP Zap API, docker image. With several options to get up and running fast.
[Securing The Stack](https://securingthestack.com)
Bi-Weekly Appsec Tutorials
[OWASP ServerlessGoat](https://www.owasp.org/index.php/OWASP_Serverless_Goat)
OWASP ServerlessGoat is a deliberately insecure realistic AWS Lambda serverless application, maintained by OWASP and created by PureSec. You can install WebGoat, learn about the vulnerabilities, how to exploit them, and how to remediate each issue. The project also includes documentation explaining the issues and how they should be remediated with best-practices.
[SecDim](https://secdim.com)
SecDim is an appsec edutainment platform, Learn appsec with free git based labs. Think you got what it takes to build a secure app? Challenge yourself with appsec games! Fix bugs, get a score and your name on the leaderboards.
Blogs
Showcasing bad cryptography
The blog of NCC Group, formerly Matasano, iSEC Partners, and NGS Secure.
Learn about security and performance.
Released: July 30, 2018
Blog of cryptographic company that makes open-source libraries and tools, and describes practical data security approaches for applications and infrastructures.
Wiki pages
The top ten most common and critical security vulnerabilities found in web applications.
The infamous suite of SSL and TLS tools.
Quickly and easily assess the security of your HTTP response headers.
A free CSP and HPKP reporting service.
Test and learn Clickjacking. Make clickjacking PoC, take screenshot and share link. You can test HTTPS, HTTP, intranet & internal sites.
AWS Lambda
Articles
[Memory Security in Go - spacetime.dev](https://spacetime.dev/memory-security-go) (2017)
Released: August 3, 2017
A guide to managing sensitive data in memory.
Java
Articles
[Node.js Security Checklist - Rising Stack Blog](https://blog.risingstack.com/node-js-security-checklist/) (2015)
Released: October 13, 2015
Covers a lot of useful information for developing secure Node.js applications.
[Awesome Electron.js hacking & pentesting resources](https://github.com/doyensec/awesome-electronjs-hacking) (2020)
Released: June 17, 2020
A curated list of resources to secure Electron.js-based applications.
Articles
[It's All About Time](http://blog.ircmaxell.com/2014/11/its-all-about-time.html) (2014)
Released: November 28, 2014
A gentle introduction to timing attacks in PHP applications
[Secure Authentication in PHP with Long-Term Persistence](https://paragonie.com/blog/2015/04/secure-authentication-php-with-long-term-persistence) (2015)
Released: April 21, 2015
Discusses password policies, password storage, "remember me" cookies, and account recovery.
[20 Point List For Preventing Cross-Site Scripting In PHP](http://blog.astrumfutura.com/2013/04/20-point-list-for-preventing-cross-site-scripting-in-php) (2013)
Released: April 22, 2013
Padriac Brady's advice on building software that isn't vulnerable to XSS
[25 PHP Security Best Practices For Sys Admins](http://www.cyberciti.biz/tips/php-security-best-practices-tutorial.html) (2011)
Released: November 23, 2011
Though this article is a few years old, much of its advice is still relevant as we veer around the corner towards PHP 7.
[PHP data encryption primer](https://timoh6.github.io/2014/06/16/PHP-data-encryption-cheatsheet.html) (2014)
Released: June 16, 2014
@timoh6 explains implementing data encryption in PHP
[Preventing SQL Injection in PHP Applications - the Easy and Definitive Guide](https://paragonie.com/blog/2015/05/preventing-sql-injection-in-php-applications-easy-and-definitive-guide) (2014)
Released: May 26, 2014
TL;DR - don't escape, use prepared statements instead!
[You Wouldn't Base64 a Password - Cryptography Decoded](https://paragonie.com/blog/2015/08/you-wouldnt-base64-a-password-cryptography-decoded) (2015)
Released: August 7, 2015
A human-readable overview of commonly misused cryptography terms and fundamental concepts, with example code in PHP.
If you're confused about cryptography terms, start here.
[A Guide to Secure Data Encryption in PHP Applications](https://paragonie.com/white-paper/2015-secure-php-data-encryption) (2015)
Released: August 2, 2015
Discusses the importance of end-to-end network-layer encryption (HTTPS) as well as secure encryption for data at rest, then introduces the specific cryptography tools that developers should use for specific use cases, whether they use libsodium, Defuse Security's secure PHP encryption library, or OpenSSL.
[The 2018 Guide to Building Secure PHP Software](https://paragonie.com/blog/2017/12/2018-guide-building-secure-php-software) (2017)
Released: December 12, 2017
This guide should serve as a complement to the e-book, PHP: The Right Way, with a strong emphasis on security and not general PHP programmer topics (e.g. code style).
Useful libraries
[defuse/php-encryption](https://github.com/defuse/php-encryption)
Symmetric-key encryption library for PHP applications. (Recommended over rolling your own!)
[ircmaxell/password_compat](https://github.com/ircmaxell/password_compat)
If you're using PHP 5.3.7+ or 5.4, use this to hash passwords
[ircmaxell/RandomLib](https://github.com/ircmaxell/RandomLib)
Useful for generating random strings or numbers
[thephpleague/oauth2-server](https://github.com/thephpleague/oauth2-server)
A secure OAuth2 server implementation
[paragonie/random_compat](https://github.com/paragonie/random_compat)
PHP 7 offers a new set of CSPRNG functions: random_bytes() and random_int(). This is a community effort to expose the same API in PHP 5 projects (forward compatibility layer). Permissively MIT licensed.
[psecio/gatekeeper](https://github.com/psecio/gatekeeper)
A secure authentication and authorization library that implements Role-Based Access Controls and Paragon Initiative Enterprises' recommendaitons for secure "remember me" checkboxes.
[openwall/phpass](http://www.openwall.com/phpass/)
A portable public domain password hashing framework for use in PHP applications.