Jadual Kandungan
Kata Pengantar
Eksploitasi Kerentanan
2.1 Pengiraan berangka
2.2 Kalkulator Pop Timbul
2.3 Command echo
Analisis Kerentanan
Rumah Operasi dan penyelenggaraan Keselamatan Struts2-057 dua versi analisis contoh kerentanan RCE

Struts2-057 dua versi analisis contoh kerentanan RCE

May 15, 2023 pm 06:46 PM
struts2 rce

Kata Pengantar

Pada 22 Ogos 2018, Apache Strust2 mengeluarkan buletin keselamatan terbaharu Apache Struts2 mempunyai kerentanan pelaksanaan kod jauh berisiko tinggi (S2-057/CVE-2018-11776). Kerentanan ini Ditemui oleh penyelidik keselamatan Man YueMo dari pasukan Penyelidikan Keselamatan Semmle.

Kerentanan ini disebabkan oleh fakta bahawa apabila menggunakan fungsi ruang nama untuk menentukan konfigurasi XML dalam rangka kerja pembangunan Struts2, nilai ruang nama tidak ditetapkan dan tidak ditetapkan dalam konfigurasi tindakan lapisan atas ( Konfigurasi Tindakan) atau ruang nama kad bebas digunakan, yang mungkin menyebabkan pelaksanaan kod Jauh. Dengan cara yang sama, apabila nilai dan nilai tindakan tidak ditetapkan dalam teg url dan tindakan lapisan atas tidak ditetapkan atau ruang nama kad bebas digunakan, ia juga boleh membawa kepada pelaksanaan kod jauh Selepas pengarang sendiri. persekitaran yang dibina, kerentanan berjaya dihasilkan semula dan gema arahan boleh dilaksanakan Pada akhir artikel, anda mempunyai perkara yang anda mahukan !

Eksploitasi Kerentanan

Persekitaran yang digunakan oleh pengarang. ialah Strust2 versi 2.3.20 dan Strust2 2.3.34 versi Terdapat kira-kira tiga cara untuk mengeksploitasi kerentanan: pengiraan berangka, kalkulator pop timbul, gema arahan.

2.1 Pengiraan berangka

Pengiraan berangka agak mudah %{100+200} pada URL untuk melompat dan mendapatkan hasil yang dikira


Struts2-057 两个版本RCE漏洞实例分析.

2.2 Kalkulator Pop Timbul

POC versi 2.3.20 adalah seperti berikut:

Struts2-057 两个版本RCE漏洞实例分析Struts2-057 两个版本RCE漏洞实例分析

Versi 2.3.3 4 POC rujukan adalah seperti berikut:


Struts2-057 两个版本RCE漏洞实例分析Struts2-057 两个版本RCE漏洞实例分析

2.3 Command echo

Kedua-dua versi menggunakan com.opensymphony.xwork2 . dispatcher.HttpServletResponse objek untuk mencetak data gema selepas pelaksanaan arahan

POC versi 2.3.20 adalah seperti berikut:

Struts2-057 两个版本RCE漏洞实例分析POC versi 2.3.34 adalah seperti berikut:

Struts2-057 两个版本RCE漏洞实例分析Kesan selepas serangan adalah seperti yang ditunjukkan di bawah

Struts2-057 两个版本RCE漏洞实例分析

Analisis Kerentanan

Sebelum menganalisis kelemahan , anda perlu mengkonfigurasi fail struts.xml ini ialah fail konfigurasi teras bagi struts2 Selalunya, anda perlu mengawal pertambahan atau penurunan konfigurasi; 🎜>Terdapat dua perkara yang perlu diberi perhatian Yang pertama mesti dikonfigurasikan dengan pemeta.alwaysSelectFullNamespace = benar, jika tidak, kelemahan tidak boleh dicetuskan slash; jenis yang dikembalikan oleh teg hasil kedua memilih "redirectAction or chain", hanya ini Nilai dua pilihan konfigurasi boleh memajukan atau mengubah hala tindakan; sila rujuk rajah di bawah

Struts2-057 两个版本RCE漏洞实例分析


Selepas selesai konfigurasi, mulakan analisis dinamik . Kerentanan terletak dalam

Struts2-057 两个版本RCE漏洞实例分析struts2-core.jar!/org/apache/struts2/dispatcher/ServletActionRedirectResult.class

Nilai ahli this.namespace berasal daripada getNamespace( ) kaedah, dan kemudian Kembalikan rentetan URI melalui getUriFromActionMapping();

Nilai yang diperoleh melalui getUriFromActionMapping diberikan kepada pembolehubah tmpLocation, dan kemudian ungkapan memasuki kaedah setLocation Struts2-057 两个版本RCE漏洞实例分析

Struts2-057 两个版本RCE漏洞实例分析
Kemudian ServletActionResult dipanggil melalui kaedah super.execute, dan kaedah conditionalParse diikuti dalam badan kaedah execute Dalam kaedah ini, kaedah utama pelaksanaan ONGL, translateVariables , dipanggil. Nilai param yang diperolehi oleh

Struts2-057 两个版本RCE漏洞实例分析

dihantar ke dalam kaedah translateVariables(), yang akhirnya menyebabkan ungkapan OGNL dilaksanakan dalam OnglTextPaser.


Struts2-057 两个版本RCE漏洞实例分析

Struts2-057 两个版本RCE漏洞实例分析Selepas muncul kalkulator, nilai lastFinalLocation yang diperoleh ialah pemegang selepas pelaksanaan semasa Nilai ini digunakan sebagai alamat tindakan lompatan respons, iaitu URI yang muncul dalam bar alamat selepas muncul naik kalkulator dalam pelayar

Struts2-057 两个版本RCE漏洞实例分析Analisis kalkulator pop timbul berakhir di sini Seterusnya, mari kita lihat analisis berdasarkan hasil gema pelaksanaan arahan sama seperti di atas, satu-satunya perbezaan ialah nilai yang dikembalikan oleh lastFinalLocation ialah NULL, yang bermaksud bahawa tiada lompatan 302 selepas penyerahan, ia masih tindakan semasa, dan nilai yang dikembalikan ialah 200

Struts2-057 两个版本RCE漏洞实例分析Struts2-057 两个版本RCE漏洞实例分析Setelah mengetahui prinsipnya, rakan sekerja saya Skrip pengesanan exp dilaksanakan dalam ular sawa Skrip ini adalah untuk pembelajaran dan penyelidikan sahaja; Langkah-langkah

1. Tukar versi rangka kerja Naik taraf kepada versi rasmi terbaharu Struts2-057 两个版本RCE漏洞实例分析

2 3. Untuk tahap peraturan IDS, pengiraan berangka dan kalkulator bullet kembali Kod status semuanya 302, dan medan lompat Lokasi mengandungi rentetan pemegang ciri jika ia adalah kod status 200 yang dikembalikan oleh gema arahan, dan terdapat arahan hasil keluaran;

Atas ialah kandungan terperinci Struts2-057 dua versi analisis contoh kerentanan RCE. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara melihat kelemahan sejarah Struts2 daripada perspektif perlindungan Cara melihat kelemahan sejarah Struts2 daripada perspektif perlindungan May 13, 2023 pm 05:49 PM

1. Pengenalan Kerentanan Struts2 ialah siri kerentanan klasik Punca utama ialah Struts2 memperkenalkan ungkapan OGNL untuk menjadikan rangka kerja itu fleksibel dan dinamik. Dengan tampalan rangka kerja keseluruhan yang dipertingkatkan, kini akan menjadi lebih sukar untuk menemui kelemahan Struts2 baharu berbanding sebelum ini, berdasarkan situasi sebenar, kebanyakan pengguna telah pun membaiki kelemahan sejarah yang berisiko tinggi. Pada masa ini, apabila melakukan ujian penembusan, kelemahan Struts2 kebanyakannya dibiarkan secara kebetulan, atau akan lebih berkesan untuk menyerang sistem yang tidak ditambal selepas terdedah kepada intranet. Artikel analisis di Internet terutamanya menganalisis kelemahan Struts2 ini dari perspektif serangan dan eksploitasi. Sebagai pasukan pelanggaran dan pertahanan H3C yang baharu, sebahagian daripada tugas kami ialah mengekalkan asas peraturan produk ips Hari ini kami akan menyemak sistem ini.

Apakah prinsip rangka kerja Struts2 Apakah prinsip rangka kerja Struts2 Jan 04, 2024 pm 01:55 PM

Prinsip rangka kerja Struts2: 1. Pemintas menghuraikan laluan permintaan; menghurai. Prinsipnya adalah berdasarkan mekanisme pemintas, yang memisahkan sepenuhnya pengawal logik perniagaan daripada API Servlet, meningkatkan kebolehgunaan semula dan kebolehselenggaraan kod. Dengan menggunakan mekanisme refleksi, rangka kerja Struts2 boleh membuat dan mengurus objek Tindakan secara fleksibel untuk memproses permintaan dan respons.

Bagaimana untuk menganalisis kerentanan RCE terkini dalam Apache Solr Bagaimana untuk menganalisis kerentanan RCE terkini dalam Apache Solr May 25, 2023 pm 06:58 PM

Pengenalan: Kerentanan RCE0day ditemui dalam ApacheSolr (nombor kerentanan tidak diberikan Di sini kami hanya mengeluarkan semula objek dan menganalisis keseluruhan proses RCE untuk rujukan anda. Versi pengulangan dan pengulangan kerentanan: 8.1.1 Untuk melaksanakan RCE, dua langkah diperlukan Pertama, sahkan bahawa aplikasi telah mendayakan teras tertentu (boleh dilihat dalam CoreAdmin, aplikasi telah mendayakan mycore hantar yang berikut ke antara muka konfigurasinya, {"update-queryresponsewriter":{"startup":"lazy",&quot

Analisis contoh kelemahan Struts2 S2-001 Analisis contoh kelemahan Struts2 S2-001 May 15, 2023 pm 03:58 PM

Siri kerentanan Vulhub: kerentanan struts2 S2-0011 Penerangan kerentanan: kerentanan struts2 S2-001 ialah apabila pengguna menyerahkan data borang dan pengesahan gagal, pelayan menggunakan ungkapan OGNL untuk menghuraikan nilai parameter yang sebelum ini diserahkan oleh pengguna, %{value} dan mengisi semula data borang yang sepadan. Contohnya, dalam halaman pendaftaran atau log masuk. Jika penyerahan gagal, pelayan biasanya akan lalai untuk mengembalikan data yang telah diserahkan sebelum ini. Memandangkan pelayan menggunakan %{value} untuk melaksanakan penghuraian ungkapan OGNL pada data yang diserahkan, pelayan boleh terus menghantar muatan untuk melaksanakan arahan. 2. Eksploitasi kelemahan Vulhub: Menggunakan vulhub untuk menghasilkan semula kelemahan boleh menjimatkan proses pembinaan persekitaran, yang sangat mudah. vu

Bagaimanakah kerentanan pelaksanaan kod jauh Struts2 S2-059 menghasilkan semula? Bagaimanakah kerentanan pelaksanaan kod jauh Struts2 S2-059 menghasilkan semula? May 23, 2023 pm 10:37 PM

0x00 Pengenalan Struts2 ialah rangka kerja sumber terbuka JavaWeb yang sangat berkuasa yang dilancarkan oleh organisasi perisian Apache, yang pada asasnya bersamaan dengan servlet. Struts2 adalah berdasarkan seni bina MVC dan mempunyai struktur rangka kerja yang jelas. Ia biasanya digunakan sebagai pengawal untuk mewujudkan interaksi data antara model dan pandangan, dan digunakan untuk mencipta aplikasi web Java peringkat perusahaan Ia menggunakan dan memanjangkan JavaServletAPI dan menggalakkan pembangun untuk mengguna pakai seni bina MVC. Struts2 mengambil idea reka bentuk cemerlang WebWork sebagai teras, menyerap beberapa kelebihan rangka kerja Struts dan menyediakan rangka kerja aplikasi Web yang lebih kemas yang dilaksanakan dalam corak reka bentuk MVC. 0x01 kerentanan

Struts2-057 dua versi analisis contoh kerentanan RCE Struts2-057 dua versi analisis contoh kerentanan RCE May 15, 2023 pm 06:46 PM

Kata Pengantar Pada 22 Ogos 2018, Apache Strust2 mengeluarkan buletin keselamatan terbaharu Apache Struts2 mempunyai kerentanan pelaksanaan kod jauh berisiko tinggi (S2-057/CVE-2018-11776). Pasukan SemmleSecurityResearch. Kerentanan ini disebabkan oleh fakta bahawa apabila menggunakan fungsi ruang nama untuk mentakrifkan konfigurasi XML dalam rangka kerja pembangunan Struts2, nilai ruang nama tidak ditetapkan dan tidak ditetapkan dalam konfigurasi tindakan lapisan atas (ActionConfiguration) atau ruang nama kad liar digunakan, yang boleh membawa kepada pelaksanaan kod jauh. Dengan cara yang sama, u

Bagaimana untuk menghasilkan semula kelemahan pelaksanaan kod jauh Apache Struts2--048 Bagaimana untuk menghasilkan semula kelemahan pelaksanaan kod jauh Apache Struts2--048 May 12, 2023 pm 07:43 PM

0x00 Pengenalan Rangka kerja Struts2 ialah seni bina aplikasi web sumber terbuka untuk membangunkan aplikasi web JavaEE. Ia menggunakan dan meluaskan JavaServletAPI dan menggalakkan pembangun untuk mengguna pakai seni bina MVC. Struts2 mengambil idea reka bentuk cemerlang WebWork sebagai teras, menyerap beberapa kelebihan rangka kerja Struts dan menyediakan rangka kerja aplikasi Web yang lebih kemas yang dilaksanakan dalam corak reka bentuk MVC. Gambaran keseluruhan kerentanan 0x01 Siri ApacheStruts22.3.x mempunyai pemalam struts2-struts1-plugin didayakan dan direktori struts2-showcase wujud apabila ActionMe

Contoh analisis risiko tapak rangka kerja Struts2 Contoh analisis risiko tapak rangka kerja Struts2 May 30, 2023 pm 12:32 PM

1. Gambaran Keseluruhan Struts ialah projek sumber terbuka yang ditaja oleh Yayasan Perisian Apache (ASF). Ia bermula sebagai sub-projek dalam projek Jakarta dan kemudiannya menjadi projek peringkat atasan ASF. Ia melaksanakan rangka kerja aplikasi [WebFramework] berdasarkan corak reka bentuk Model-View-Controller [MVC] bagi aplikasi Web JavaEE dengan menggunakan teknologi JavaServlet/JSP Ia adalah produk klasik dalam corak reka bentuk klasik MVC. Pada masa awal pembangunan aplikasi web JavaEE, selain menggunakan teknologi Servlet, HTM biasanya digunakan dalam kod sumber JavaServerPages (JSP).

See all articles