Article 2
Who needs an extra (half) day of Laracon AU? You do! 🎉I've organized a pre-Laracon "Let's Hack!" workshop where you'll attack a vulnerable app and learn to patch the holes. Food, fun, and practical...
View ArticleArticle 1
Let's take a look at why something as simple and "harmless" as an orWhere can introduce a huge privacy risk to your application, and how you can avoid it!...
View ArticleArticle 0
Worried about the security of your Laravel app, or have a compliance deadline coming up? 😧I specialise in Laravel security, and can find real vulnerabilities and give you real recommendations you can...
View ArticleArticle 1
Let's look at my old buddy time(), who always has something for me during my audits. This time it's helping avoid filename...
View ArticleArticle 0
Just read a fun thread, so felt it was a good time to throw this out into the world:I love PHP.PHP is awesome.PHP is secure.PHP powers a lot of the world.😎#php
View ArticleArticle 5
Is it a "premature optimisation" to add authorisation (permissions) to your app before you know how your authorisation will be structured, or should you consider authorisation and add placeholders when...
View ArticleArticle 4
I've had some availability open up, so if you're looking for a Laravel Security Audit and Penetration Test, DM (or email) me! 🕵️I specialise in Laravel security audits and have helped many dev teams...
View ArticleArticle 3
And this, my friends, is one of many reasons why your APP_KEY should never leave your server - especially not committed in your code somewhere!!!...
View ArticleArticle 2
I should add that the (few) media outlets who have picked this up are trying *very hard* to hype it into a major issue with Laravel. It's not.The issue is lazy developers committing secrets, and that's...
View ArticleArticle 1
It may be tempting to compare keys/sensitive strings using `===`, or even `==`, but that opens you up to timing attacks! You should be using a timing attack safe string comparison function like...
View ArticleArticle 0
Identifying email billing scams is such a hard problem that AWS has decided to change their billing emails domain from the clearly very confusing and hard to identify "email.amazon.com" to the totally...
View ArticleArticle 0
⚠️ New CRITICAL vulnerability disclosed in Livewire v3, you need to update ASAP! ⚠️This is a rather sneaky one that gives an attacker RCE (under the right conditions), and can be done unauthenticated...
View ArticleArticle 1
Something I should have included in the original post: Livewire may be included through a dependency, like Pulse or Filament, and not show up in your composer.json! 🚨Run `composer show...
View ArticleArticle 0
It's easy to say "Update <package> if it's installed!", but how do you actually know if a package is installed, since it may not appear in composer.json?! Also, how did it even get there??!!...
View ArticleArticle 0
For those who missed it, I recently launched sponsors on Securing Laravel! 🎉Sponsoring SL is the perfect way to get your brand in front of thousands of security-conscious Laravel devs, and support my...
View ArticleArticle 0
We've all heard about SQLi and XSS, but what about another big injection vector: Command Injection? It's less common but just as critical if your app does anything on the command line. Plus, it's not...
View ArticleArticle 1
This is your periodic reminder to ensure bcrypt rounds is set to 12 (or higher)!Laravel's default was increased from 10 to 12 2 years ago, so if you're working on an older codebase, make sure you've...
View ArticleArticle 0
Worried about the security of your Laravel app, or found some vulnerable code and need to check there isn't more? 😱Book in a Laravel Security Audit and Penetration Test today, and I'll help secure your...
View ArticleArticle 0
Anyone want to throw a pile of money at me to fund a really cool research idea I have? 🤣Will take a bit of time to get set up, but would be a great thing to have in the Laravel and PHP community.
View Article