• Services
    • Vulnerability Management
    • Pentest
    • Network Pentest
    • Website Security Check
    • Phishing Campaign
    • Mystery Guest
    • Quick scan
  • NetCaptain
  • Knowledge base
  • Partners
    • MSP
  • About us
    • Contact
    • Why CyberAnt
    • News
    • Vacancies
  • Login
  • EN
    • NL
  • Menu Menu

What is a mass-assignment attack?

over posting

Mass-assignment, sometimes also referred to as an over-posting attack, is an attack on (web) applications in which an attacker can arbitrarily modify elements of an object. Applications that use model binding in a request in particular can be vulnerable to this attack. With model binding, a developer does not have to write code which fields are entered within a form. This is used to save code. However, an attacker can use this to change other fields from the database/object.

How does mass assignment work?

Suppose an application has an object or table with the following fields:

name = "John"
isAdmin = False

The application has a form to change the name. When this is sent, the client sends the following request:

POST /profile HTTP/1.1
Host: example.com

field[name]=John

Now we modify the request to the following:

POST /profile HTTP/1.1
Host: example.com

field[isAdmin]=True

If the application is vulnerable, it will modify the isAdmin field instead of the name field.

In practice

Mass-assignment vulnerabilities are often difficult to find manually, because the attacker needs to know how the data model of the application works. In the above example, the attacker just needs to know that the “isAdmin” property exists. Yet such vulnerabilities do occur, often with major consequences. A well-known example is the vulnerability on GitHub, which allows the attacker to take over random repositories via over posting. The best way to detect such vulnerabilities is to use a Static Code Analyzer, such as Fortify. In the case of Fortify, the tool will give a finding called “Mass assignment secure binder”.

How to prevent?

The solution is not immediately obvious, since each framework has its own implementation of binding. However, it is often possible to indicate which properties may and may not be modified. A more generic solution is to check which fields come in before binding. During a pentest we check for mass-assignment attacks. Wondering if your application is vulnerable? Please contact with us.

Search

Search Search

Recent Posts

  • Pin or no pin: the trade-off around certificate pinning in mobile apps
  • TrapDoor supply-chain attack steals passwords from developers
  • Once again malware found in US Code Extensions
  • Large-scale attack on popular npm packages: millions of websites and apps potentially affected
  • Age verification on the Internet: what about privacy?

CyberAnt is ISO Certified

Iso gecertificeerd

Tags

.DS Store anti-virus award broken access control clickjacking Cryptographic Failures cyberaanval CyberAnt Cybercrime cybercriminelen CyberRisk Cyber Security Datalek Entity injection Etisch Hacker Hacker Insecure Design ISO 9001 ISO 27001 IT Infrastructuur beschermen malware Mass Assignment aanval NetCaptain NetCat shell upgraden Netgear ProSAFE switches nominated Open web application Security project Owasp path traversal penetration test pentest Ransomeware aanval Ransomware Responsible Disclosure secure coding Secure webshop Security Audit Security audits Security Misconfiguration Server-side request forgery (SSRF) Social Engineering SQL Injection supply chain attack vulnerability management web applicatie scanning
CyberAnt is ISO gecertificeerd

Services

  • Pentest
  • Network Pentest
  • Website Security Check
  • Phishing Campaign
  • Mystery Guest

Cyberant

  • Why CyberAnt
  • Partners
  • Knowledge base
  • News
  • About us

Contact

Marconiweg 1
3899 BR Zeewolde

info@cyberant.com
+31 (0)85 047 1590

© Copyright - CyberAnt 2024
  • Link to Facebook
  • Link to LinkedIn
  • Link to Mail
Link to: Ransomware: Anti-virus alone is not enough Link to: Ransomware: Anti-virus alone is not enough Ransomware: Anti-virus alone is not enough Link to: What is path traversal? Link to: What is path traversal? path traversalWhat is path traversal?
Scroll to top Scroll to top Scroll to top

Deze site maakt gebruik van cookies. Door verder te surfen op de site gaat u akkoord met ons gebruik van cookies.

Accepteer instellingenVerberg de mededeling enkelInstellingen

Cookie and Privacy Settings



How we use cookies

We may request cookies to be set on your device. We use cookies to let us know when you visit our websites, how you interact with us, to enrich your user experience, and to customize your relationship with our website.

Click on the different category headings to find out more. You can also change some of your preferences. Note that blocking some types of cookies may impact your experience on our websites and the services we are able to offer.

Essential Website Cookies

These cookies are strictly necessary to provide you with services available through our website and to use some of its features.

Because these cookies are strictly necessary to deliver the website, refusing them will have impact how our site functions. You always can block or delete cookies by changing your browser settings and force blocking all cookies on this website. But this will always prompt you to accept/refuse cookies when revisiting our site.

We fully respect if you want to refuse cookies but to avoid asking you again and again kindly allow us to store a cookie for that. You are free to opt out any time or opt in for other cookies to get a better experience. If you refuse cookies we will remove all set cookies in our domain.

We provide you with a list of stored cookies on your computer in our domain so you can check what we stored. Due to security reasons we are not able to show or modify cookies from other domains. You can check these in your browser security settings.

Other external services

We also use different external services like Google Webfonts, Google Maps, and external Video providers. Since these providers may collect personal data like your IP address we allow you to block them here. Please be aware that this might heavily reduce the functionality and appearance of our site. Changes will take effect once you reload the page.

Google Webfont Settings:

Google Map Settings:

Google reCaptcha Settings:

Vimeo and Youtube video embeds:

Privacy Policy

You can read about our cookies and privacy settings in detail on our Privacy Policy Page.

Privacy statement
Accepteer instellingenVerberg de mededeling enkel