Aug 2, 2020
kalpesh

Security.txt Magento module

With the recent release of Magento 2.4.0 open source and commerce, you can find a brand new module under vendor/magento/ directory named module-securitytxt. You may find it a small module, but you will amaze to know the importance of that module in terms of the security. Two years ago, I was reading the blog post from Troy Hunt and other reputed people in the security industry about this new file called Security.txt which allows security researchers to report security vulnerabilities to the right people in the organization. I am amazed by this, because of my personal experience in not getting hold of right people in the organization whenever I find any security vulnerability on any website. I found security issues on numerous websites before reading about security.txt, and tried many ways to reach out to the people in the organization in an effort to get a hold of someone who is responsible to fix this. I sent messages to the people working in that organizations via LinkedIn, Twitter DM, tech email addresses I could find from whois, customer service, etc.. But, zero replies!! Of course, who would want to reply to such scary messages about their website right?!

Security.txt to the rescue

As soon as I learned about security.txt, I read many articles and checked its official website https://securitytxt.org/ to understand how it works. I really liked the concept, and thought to make it available to everyone in the very platform I love, Magento. I built Magento 2 module to allow administrators to input and store all the security contact details and signature in the database, which can be then easily viewed at the standard locations https://website.com/.well-known/security.txt and https://website.com/.well-known/security.txt.sig

Security.txt files have been adopted by many big players in the industry like Google, GitHub, LinkedIn and Facebook.

Listen to the community

Right after building the module and pushing it to my Github securitytxt repo, I was gathering feedbacks about this new security standard from the Magento community. I asked many well known people in the community, at various events and Dev Exchange, to understand its pros/cons from other people’s perspective. Unsurprisingly, many were in favor of this. There were some people against having a dedicated module for this, because Magento already has many modules that not every merchants need but they still have to keep it because… it comes out of the box. Totally valid point. However, this is a security module and Magento 2 was already infested with security bugs in the early days and not to mention security bugs that gets introduced via third-party extensions. With the modular approach of the securitytxt, it is very convenient for any merchant to enable and input security contact details and save right from the admin, which hardly takes 2 minutes! I do not know why anyone would want to disable any security module tbh. Before the module, there were hardly any merchants who had uploaded security.txt file on their server, even though the argument was it is the easiest approach so why to introduce a module for that. Ultimately, reward outweighed the risk and it was decided to ship this module in the core bundle.

I presented security.txt’s importance in various meetups last year and gathered feedbacks from the event attendees as well.

Continue reading »

Aug 2, 2020
kalpesh

Magento Master 2020 – Makers

Many of you already know, I am selected this year as a Magento Master 2020 in the Makers category. I am very grateful to all the people who encouraged and believed in me during this roller-coaster journey. I am thankful to Ben Marks, Sherrie Rohde and the entire Magento, an Adobe company team who had to put lot of efforts to analyze all the contributors across many categories and narrow it down to the final 20 top contributors in the community.

https://magento.com/magento-masters/meet-the-masters

Magento Masters – Maker category

By definition,  Makers are frequent contributors highly valued by Magento and other community members. They actively engage with others in the Magento Community, sharing ideas, insights, innovations and constructive feedback.

Magento Master - Maker

Rewards and Benefits to the Magento Masters

  • Invitations to special events
  • Involvement in community feedback opportunities
  • Discounts on events and certifications
  • Quarterly Magento Masters calls with the Magento team
  • Recognition at events, including the Magento Imagine conference
  • Introduction into Magento Community Hall of Fame

Continue reading »

Oct 21, 2019
kalpesh

How to pass Magento 2 certification exams

Hi folks, I am getting many requests on how to pass M2 certifications via email, twitter, slack, skype, etc.. I recently passed 5th M2 certification exam and would like to share with all my Magento friends how I prepared for these exams. There is no secret mantra which can help you pass M2 certification tests quickly and easily.

You need hands-on experience, that is the first mandatory requirement. At least an year of experience in Magento 2 will give you good understanding on how everything in it works. If you are the kind of folks who copy and paste the code all the time, you need at least 3 years of Magento 2 experience.

Second in the list is, Magento DevDocs. No matter what M2 exam you go for, read and understand all the Magento DevDocs articles on it. Being part of the hardest M2 certification test questions writer group, I can assure you, you will not be disappointed if you have prepared DevDocs for your certification exam.

Thirdly, go prepare SwiftOtter study guides. And prepare it slowly, understand each and every line written in that guide. After completing that, give the SwiftOtter test to know where you stand with your preparation and if you will able to crack the real exam.

Last but not the least, try things practically. Though I understand you might not have luxury of time to test and learn everything practically, try important areas of the exam by writing the code locally and understand the flow of logic.

I may edit this post in the future, but if you have followed these three important things mentioned above, your chances to pass any M2 exam will increase exponentially.

Jun 9, 2019
kalpesh

#MagentoImagine2019 Dev Exchange Recap – Make Magento more secure

Magento Imagine 2019 Dev Exchange

Magento Imagine 2019 Dev Exchange

This year Magento Imagine conference was amazing, around 3,500 people from around the world attended the event which was held at Wynn, Las Vegas. I met many people whom I already knew, and many more whom I never met before in real life but interacted on social media and forums.

I hosted a table at Dev Exchange around Magento security, which was co-hosted by Pablo Benitez from eBizmarts. Piotr Kaminski and Steven Zurek participated from Magento/Adobe’s side. Talesh Seeparsan took all the notes and contributed to the discussion during the talk. Other people that joined the table from Magento and community were Igor Miniailo, Igor Gorin, Georgiy Slobodenyuk, Lee Saferite, Manish Mittal, Jeanne, Scott N and Shilpa M. Everyone participated in the discussion and gave their valuable feedback on the topics we discussed, overall it was very productive.

There were 4 main topics we discussed at the table:

1. Extension developers write secure code

With the proactive and nimble approach Magento has taken to core security, many time agencies and merchants find external 3rd party extension makers have not put in as much effort. How can we encourage their developers to take a more secure coding approach? Can Magento community maintain secure coding practices document like technical guidelines, security? Validate code using a tool like PHP CodeSniffer? What solutions already exist that we can rely on? What processes already exist that we can implement?

Static Scanners / RIPS:

Third party code checking and code scanning is a complex process. RIPS work for some paths, they are also working on improving the support. We can add Regular Expressions to the old open source versions as well. However, we have to do lot of work to deal with the false positives because they don’t directly support Magento.

Dynamic Scanners:

Probably Dynamic Scanning is the better idea. Example, using OWASP Zap to test input fields of extensions. There are current efforts to get an easy to set up OWASP Zap fuzzer for Magento Extension makers.

There is a danger of reporting error in extensions without understanding the value of the error or making it easy to act on the error. Example, using tools that just dump a PDF of all the errors versus categorizing and ranking problems and putting them into bug tracker. We should have documentation of recommended fixes for the types of errors dynamic scanning provides.

Vulnerabilities in extensions:

A lot of extension providers are not prepared for a vulnerability in their extension. There are a few common problems with their approach. The problems we find with them, they are:

  • Not fixing vulnerabilities and ignoring input from developer community, or
  • Fixing vulnerabilities silently and not notifying their customers, or
  • No way of notifying their customers of a new version with a fix.

There should be a process for responding to security vulnerabilities if extension makers want their extensions to be on the Marketplace. There should be consequences instead of enforcement when dealing with extension makers with vulnerabilities.

Marketplace vs non-marketplace extensions:

Unfortunately, most of the problems that we see are in extensions that are not from Marketplace, therefore enforcement of security policies may have the unintended consequence of reducing the number of extensions on the Magento Marketplace. One possible solution to extensions not on marketplace is that there may be a warning in Magento if it is code matched to an extension that is on the marketplace. This works for vendors that sell the same extension on Marketplace and on their own site.

One of the driving reasons for buying extensions from outside the marketplace is because updates from the Marketplace are too slow. The process is improving though.

It would be good if the marketplace extensions page would show the version that is on the Marketplace and show which past versions may be vulnerable.  Continue reading »

Apr 28, 2019
kalpesh

Magento Imagine Dev Exchange 2019

Magento Imagine 2019 is just 2 weeks away, I cannot wait any longer now! This year would be crazy for me, as I am participating in Contribution Days as a Maintainer that happens on Saturday and Sunday before the conference, and also hosting a Dev Exchange table after the conference on Wednesday. Also, this would be my first Imagine from agency side, so things would be different.

As many of you know, I have advocated Magento Security for quite a while now. From submitting core security bugs to adding an entire Security topic in the Magento 2 Professional Developer Plus certification, I realized there is many more things to do. This year I am going to host Dev Exchange where I will share my security ideas and also get ideas and feedback from the community. One very important thing that we would address this year is third-party extensions security. Pablo Benitez, CTO at eBizmarts, will join me bringing in business perspective when talking about third-party extension security. Talesh Seeparsan will bring his past Dev Exchange experiences on security and help us in guiding and noting down all the ideas and feedback that we would discuss with all the participants.

If you are coming to Magento Imagine and would stay little late on Wednesday, please stop by our Dev Exchange table and join the conversation. Here is the topic and details we submitted for Magento Imagine Dev Exchange 2019:

 

Continue reading »

Pages:1234567...36»

Welcome to my Blog

Kalpesh MehtaHelping Magento developers in their day-to-day development problems since 2011. Most of the problems and solutions here are my own experiences while working on different projects. Enjoy the blog and don't forget to throw comments and likes/+1's/tweets on posts you like. Thanks for visiting!

Certifications

Honor

Recognition

Magento top 50 contributors

Magento top 50 contributors

Contributions