{"id":476846,"date":"2023-08-09T09:04:34","date_gmt":"2023-08-09T09:04:34","guid":{"rendered":""},"modified":"2023-09-05T11:13:34","modified_gmt":"2023-09-05T11:13:34","slug":"directory-traversal-attack","status":"publish","type":"wiki","link":"https:\/\/oneproxy.pro\/my\/wiki\/directory-traversal-attack\/","title":{"rendered":"Serangan lintasan direktori"},"content":{"rendered":"<p>Serangan traversal direktori, juga dikenali sebagai serangan traversal laluan, mewakili risiko yang ketara dalam bidang keselamatan web. Mereka terutamanya mengeksploitasi kelemahan keselamatan dalam fungsi aplikasi web untuk mengakses fail yang ada pada pelayan. Serangan ini membolehkan pengguna jahat mengakses fail dan direktori yang disimpan di luar folder webroot dengan memanipulasi pembolehubah yang merujuk fail dengan jujukan &quot;dot-dot-slash (..\/)&quot;.<\/p>\n<h2>Evolusi Serangan Traversal Direktori<\/h2>\n<p>Asal-usul serangan traversal direktori boleh dikesan kembali ke zaman awal internet apabila aplikasi web mula menggunakan skrip untuk mengakses fail sisi pelayan. Apabila teknologi berkembang dan aplikasi web menjadi lebih kompleks, potensi untuk jenis kelemahan ini juga meningkat.<\/p>\n<p>Sebutan awam pertama mengenai serangan traversal direktori agak sukar untuk ditentukan kerana sifat asas kelemahan ini. Walau bagaimanapun, kebimbangan keselamatan menjadi lebih menonjol pada akhir 1990-an dan awal 2000-an, kerana aplikasi web menjadi perkara biasa, dan peluang untuk mengeksploitasi rujukan fail tidak selamat meningkat.<\/p>\n<h2>Memperluas pada Serangan Traversal Direktori<\/h2>\n<p>Serangan traversal direktori ialah satu bentuk eksploitasi HTTP di mana penggodam mengakses direktori pelayan yang biasanya tidak tersedia kepada orang ramai. Penyerang mengeksploitasi pengesahan keselamatan yang tidak mencukupi atau sanitasi nama fail input yang dibekalkan pengguna, dengan itu membolehkan mereka keluar dari persekitaran terkurung.<\/p>\n<p>Penggunaan jujukan traversal direktori yang paling biasa adalah dalam serangan berasaskan URL, tetapi ia juga boleh muncul dalam suntikan pengepala, manipulasi kuki, atau bahkan dalam parameter POST. Melalui ini, penyerang boleh melihat direktori terhad dan melaksanakan arahan di luar direktori akar pelayan web, dengan itu mendapat akses tanpa kebenaran kepada maklumat sensitif.<\/p>\n<h2>Cara Serangan Traversal Direktori Berfungsi<\/h2>\n<p>Serangan traversal direktori berfungsi dengan mengeksploitasi pengesahan keselamatan\/pensanitasian nama fail input yang dibekalkan pengguna yang tidak mencukupi, jadi penyerang boleh memanipulasinya untuk melompat keluar dari lokasi terhad.<\/p>\n<p>Dalam bentuk yang terlalu ringkas, mari kita pertimbangkan senario di mana aplikasi cuba mengakses fail imej daripada pelayan:<\/p>\n<pre><div class=\"bg-black rounded-md mb-4\"><div class=\"flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md\"><span>arduino<\/span><button class=\"flex ml-auto gap-2\"><svg stroke=\"currentColor\" fill=\"none\" stroke-width=\"2\" viewbox=\"0 0 24 24\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"h-4 w-4\" height=\"1em\" width=\"1em\" ><path d=\"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2\"><\/path><rect x=\"8\" y=\"2\" width=\"8\" height=\"4\" rx=\"1\" ry=\"1\"><\/rect><\/svg>Salin kod<\/button><\/div><div class=\"p-4 overflow-y-auto\"><code class=\"!whitespace-pre hljs language-arduino\" data-no-translation=\"\">http:<span class=\"hljs-comment\">\/\/example.com\/app?file=logo.jpg<\/span>\n<\/code><\/div><\/div><\/pre>\n<p>Dalam kes ini, aplikasi akan membuka fail <code data-no-translation=\"\">logo.jpg<\/code> daripada direktori imejnya. Walau bagaimanapun, penyerang boleh menggunakan jujukan &quot;dot-dot-slash (..\/)&quot; untuk bergerak ke atas ke direktori induk, kemudian mengakses fail yang tidak dibenarkan. Contohnya:<\/p>\n<pre><div class=\"bg-black rounded-md mb-4\"><div class=\"flex items-center relative text-gray-200 bg-gray-800 px-4 py-2 text-xs font-sans justify-between rounded-t-md\"><span>bash<\/span><button class=\"flex ml-auto gap-2\"><svg stroke=\"currentColor\" fill=\"none\" stroke-width=\"2\" viewbox=\"0 0 24 24\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"h-4 w-4\" height=\"1em\" width=\"1em\" ><path d=\"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2\"><\/path><rect x=\"8\" y=\"2\" width=\"8\" height=\"4\" rx=\"1\" ry=\"1\"><\/rect><\/svg>Salin kod<\/button><\/div><div class=\"p-4 overflow-y-auto\"><code class=\"!whitespace-pre hljs language-bash\" data-no-translation=\"\">http:\/\/example.com\/app?file=..\/..\/etc\/passwd\n<\/code><\/div><\/div><\/pre>\n<p>Ini boleh menyebabkan aplikasi memaparkan fail sistem yang sensitif.<\/p>\n<h2>Ciri Utama Serangan Traversal Direktori<\/h2>\n<ol>\n<li>\n<p><strong>Memanipulasi Pembolehubah:<\/strong> Ciri asas serangan traversal direktori melibatkan memanipulasi pembolehubah yang merujuk fail dengan jujukan &quot;dot-dot-slash (..\/)&quot;.<\/p>\n<\/li>\n<li>\n<p><strong>Memecah Kekangan:<\/strong> Ia membolehkan penyerang keluar dari direktori akar aplikasi dan mengakses bahagian lain sistem fail.<\/p>\n<\/li>\n<li>\n<p><strong>Memanfaatkan Pengesahan Lemah:<\/strong> Serangan traversal direktori mengeksploitasi pengesahan lemah atau sanitasi input pengguna.<\/p>\n<\/li>\n<\/ol>\n<h2>Jenis-jenis Serangan Traversal Direktori<\/h2>\n<p>Walaupun prinsip teras di sebalik serangan traversal direktori tetap sama, ia boleh nyata dalam cara yang berbeza berdasarkan konteks dan aplikasi yang dipersoalkan:<\/p>\n<ol>\n<li>\n<p><strong>Serangan berasaskan URL:<\/strong> Ini melibatkan menyuntik input berniat jahat dalam URL untuk melintasi direktori.<\/p>\n<\/li>\n<li>\n<p><strong>Serangan berasaskan borang:<\/strong> Input berniat jahat dimasukkan ke dalam medan borang untuk mengeksploitasi skrip bahagian pelayan yang terdedah.<\/p>\n<\/li>\n<li>\n<p><strong>Serangan berasaskan kuki:<\/strong> Penyerang memanipulasi kuki untuk melintasi direktori dan mengakses data yang tidak dibenarkan.<\/p>\n<\/li>\n<\/ol>\n<table>\n<thead>\n<tr>\n<th>taip<\/th>\n<th>Penerangan<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Serangan berasaskan URL<\/td>\n<td>Suntikan input berniat jahat dalam URL untuk merentasi direktori.<\/td>\n<\/tr>\n<tr>\n<td>Serangan berasaskan bentuk<\/td>\n<td>Masukkan input berniat jahat ke dalam medan borang untuk mengeksploitasi skrip sebelah pelayan.<\/td>\n<\/tr>\n<tr>\n<td>Serangan berasaskan kuki<\/td>\n<td>Memanipulasi kuki untuk melintasi direktori dan mengakses data yang tidak dibenarkan.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Masalah dan Penyelesaian Berkaitan dengan Serangan Traversal Direktori<\/h2>\n<p>Isu utama dengan serangan traversal direktori ialah akses tanpa kebenaran kepada fail dan data sensitif. Ini boleh menyebabkan kebocoran data, kehilangan kerahsiaan dan berpotensi memberikan penyerang dengan vektor serangan lanjut (seperti mendapatkan bukti kelayakan pangkalan data daripada fail konfigurasi).<\/p>\n<p>Berikut ialah beberapa penyelesaian:<\/p>\n<ol>\n<li>\n<p><strong>Pengesahan Input:<\/strong> Pastikan pengesahan yang mantap bagi input yang dibekalkan pengguna. Jangan benarkan \u201c..\u201d atau \u201c\/\u201d sebagai sebahagian daripada input.<\/p>\n<\/li>\n<li>\n<p><strong>Kawalan Akses:<\/strong> Laksanakan kawalan akses yang betul. Jangan bergantung semata-mata pada laluan fail yang dibekalkan untuk membenarkan pengguna.<\/p>\n<\/li>\n<li>\n<p><strong>Prinsip Keistimewaan Terkecil:<\/strong> Jalankan aplikasi dengan sekurang-kurangnya keistimewaan yang diperlukan, mengurangkan potensi kerosakan daripada serangan traversal direktori.<\/p>\n<\/li>\n<\/ol>\n<h2>Serangan Traversal Direktori dan Istilah Serupa<\/h2>\n<table>\n<thead>\n<tr>\n<th>Penggal<\/th>\n<th>Penerangan<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Serangan Traversal Direktori<\/td>\n<td>Mengeksploitasi kelemahan dalam prosedur input pengguna untuk mengakses fail dan direktori yang tidak dibenarkan.<\/td>\n<\/tr>\n<tr>\n<td>Kemasukan Fail Jauh (RFI)<\/td>\n<td>Penyerang menggunakan laluan input pengguna untuk memuat naik skrip berniat jahat ke dalam pelayan tapak web.<\/td>\n<\/tr>\n<tr>\n<td>Kemasukan Fail Setempat (LFI)<\/td>\n<td>Penyerang memanipulasi tapak web untuk melaksanakan atau mendedahkan kandungan fail pada pelayan web.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Perspektif dan Teknologi Masa Depan Berkaitan dengan Serangan Traversal Direktori<\/h2>\n<p>Apabila landskap pembangunan web berkembang, kaedah dan alatan untuk melakukan serangan lintasan direktori mungkin menjadi lebih canggih. Walau bagaimanapun, asas pencegahan mungkin masih terletak pada pengesahan input yang teguh dan konfigurasi sistem yang waras.<\/p>\n<p>Firewall aplikasi web, sistem pengesanan anomali dan algoritma pembelajaran mesin untuk sistem pengesanan pencerobohan boleh memainkan peranan penting dalam strategi pengurangan masa hadapan terhadap serangan sedemikian.<\/p>\n<h2>Sambungan Antara Pelayan Proksi dan Serangan Traversal Direktori<\/h2>\n<p>Pelayan proksi boleh berfungsi sebagai lapisan keselamatan tambahan terhadap serangan traversal direktori. Dengan menapis permintaan dan tindak balas antara klien dan pelayan, mereka boleh membantu mengesan corak atau tanda-tanda serangan traversal direktori yang luar biasa, dengan itu menghalang mereka daripada mencapai pelayan.<\/p>\n<p>OneProxy, sebagai contoh, menyediakan penyelesaian pelayan proksi yang mantap yang boleh memainkan peranan penting dalam strategi pertahanan anda terhadap jenis serangan ini.<\/p>\n<h2>Pautan Berkaitan<\/h2>\n<ol>\n<li><a href=\"https:\/\/owasp.org\/www-community\/attacks\/Path_Traversal\" target=\"_new\" rel=\"noopener nofollow\">Serangan Traversal Laluan OWASP<\/a><\/li>\n<li><a href=\"https:\/\/www.acunetix.com\/blog\/articles\/directory-traversal\/\" target=\"_new\" rel=\"noopener nofollow\">Direktori Traversal Serangan dan Teknik Mitigasi<\/a><\/li>\n<li><a href=\"https:\/\/cheatsheetseries.owasp.org\/cheatsheets\/File_Path_Traversal_Prevention_Cheat_Sheet.html\" target=\"_new\" rel=\"noopener nofollow\">Mencegah Serangan Traversal Direktori<\/a><\/li>\n<li><a href=\"https:\/\/www.owasp.org\/index.php\/Guide_to_Building_Secure_Web_Applications_and_Web_Services\" target=\"_new\" rel=\"noopener nofollow\">Panduan OWASP untuk Membina Aplikasi Web Selamat dan Perkhidmatan Web<\/a><\/li>\n<li><a href=\"https:\/\/www.cloudflare.com\/en-gb\/learning\/security\/glossary\/what-is-a-proxy-server\/\" target=\"_new\" rel=\"noopener nofollow\">Pelayan dan Keselamatan Proksi<\/a><\/li>\n<\/ol>","protected":false},"featured_media":476847,"menu_order":0,"template":"","meta":{"_acf_changed":false,"content-type":"","inline_featured_image":false,"footnotes":""},"class_list":["post-476846","wiki","type-wiki","status-publish","has-post-thumbnail","hentry"],"acf":{"faq_title":"Frequently Asked Questions about <mark>Directory Traversal Attack: An In-Depth Examination<\/mark>","faq_items":[{"question":"What is a Directory Traversal Attack?","answer":"<p>A Directory Traversal Attack, also known as a path traversal attack, is a type of HTTP exploit that allows attackers to access restricted directories and execute commands outside of the web server's root directory. This is accomplished by exploiting insufficient security validation or sanitization of user-supplied input filenames.<\/p>"},{"question":"How did Directory Traversal Attacks originate?","answer":"<p>Directory Traversal Attacks originated during the early days of the internet when web applications began utilizing scripts to access server-side files. As technology progressed and web applications became more complex, the potential for these types of vulnerabilities also increased.<\/p>"},{"question":"How does a Directory Traversal Attack work?","answer":"<p>Directory Traversal Attacks work by manipulating variables that reference files with \"dot-dot-slash (..\/)\" sequences. By exploiting weak security validation or sanitization of user inputs, an attacker can access files and directories outside the webroot folder.<\/p>"},{"question":"What are the key features of Directory Traversal Attacks?","answer":"<p>Key features of Directory Traversal Attacks include the manipulation of variables to traverse directories, the ability to break out of the application's root directory, and the exploitation of weak validation of user inputs.<\/p>"},{"question":"What are the different types of Directory Traversal Attacks?","answer":"<p>Directory Traversal Attacks can be categorized into URL-based, form-based, and cookie-based attacks. In each type, attackers manipulate inputs in different ways to exploit server-side vulnerabilities and traverse directories.<\/p>"},{"question":"How can Directory Traversal Attacks be prevented?","answer":"<p>Directory Traversal Attacks can be prevented through robust input validation, proper access control, and the principle of least privilege. This involves disallowing certain inputs like \"..\" or \"\/\", not relying solely on the supplied file path for user authorization, and running the application with the least privileges necessary.<\/p>"},{"question":"How do Directory Traversal Attacks compare with similar terms like Remote File Inclusion (RFI) and Local File Inclusion (LFI)?","answer":"<p>While Directory Traversal Attacks exploit vulnerabilities to access unauthorized files and directories, Remote File Inclusion (RFI) involves an attacker uploading a malicious script into a website's server, and Local File Inclusion (LFI) manipulates a website into executing or revealing the contents of files on the web server.<\/p>"},{"question":"What are the future perspectives and technologies related to Directory Traversal Attacks?","answer":"<p>Future perspectives suggest that as web development evolves, the methods to perform Directory Traversal Attacks may become more sophisticated. Web application firewalls, anomaly detection systems, and machine learning algorithms could play a significant role in future mitigation strategies against such attacks.<\/p>"},{"question":"How do Proxy Servers help with Directory Traversal Attacks?","answer":"<p>Proxy servers, like OneProxy, can serve as an additional layer of security against Directory Traversal Attacks. By filtering requests and responses between the client and the server, they can help detect unusual patterns or signs of Directory Traversal Attacks, preventing them from reaching the server.<\/p>"}]},"_links":{"self":[{"href":"https:\/\/oneproxy.pro\/my\/wp-json\/wp\/v2\/wiki\/476846","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/oneproxy.pro\/my\/wp-json\/wp\/v2\/wiki"}],"about":[{"href":"https:\/\/oneproxy.pro\/my\/wp-json\/wp\/v2\/types\/wiki"}],"version-history":[{"count":0,"href":"https:\/\/oneproxy.pro\/my\/wp-json\/wp\/v2\/wiki\/476846\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/oneproxy.pro\/my\/wp-json\/wp\/v2\/media\/476847"}],"wp:attachment":[{"href":"https:\/\/oneproxy.pro\/my\/wp-json\/wp\/v2\/media?parent=476846"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}