Contoh analisis risiko tapak rangka kerja Struts2
1. Gambaran Keseluruhan
Projek sumber terbuka yang ditaja oleh Yayasan Perisian Apache (ASF) ialah Struts. Projek ini bermula sebagai percabangan projek Jakarta dan kemudiannya dinaikkan pangkat kepada projek peringkat tertinggi ASF. Dengan menggunakan teknologi Java Servlet/JSP, ia melaksanakan rangka kerja aplikasi [Web Framework] berdasarkan corak reka bentuk Model-View-Controller [MVC] bagi aplikasi Web Java EE Ia adalah produk klasik dalam corak reka bentuk klasik MVC.
Pada masa awal pembangunan aplikasi Web Java EE, selain menggunakan teknologi Servlet, ia secara amnya dibangunkan menggunakan campuran HTML dan kod Java dalam kod sumber JavaServer Pages (JSP). Kedua-dua kaedah ini tidak dapat dielakkan dalam mencampurkan prestasi dan kod logik perniagaan, yang membawa kerumitan besar kepada pembangunan awal dan penyelenggaraan kemudian. Untuk menyingkirkan kekangan dan batasan di atas dan memisahkan kod logik perniagaan dengan jelas daripada lapisan pembentangan, pada tahun 2000, Craig McClanahan menggunakan corak reka bentuk MVC untuk membangunkan Struts. Produk rangka kerja ini pernah dianggap sebagai rangka kerja aplikasi WEB JAVA yang paling luas dan popular
Struts2 ialah rangka kerja aplikasi Web berdasarkan corak reka bentuk MVC Ia pada asasnya setara dengan servlet dalam corak reka bentuk MVC, Struts2 berfungsi sebagai pengawal untuk mewujudkan interaksi data antara model dan pandangan. Struts 2 ialah produk generasi seterusnya Struts Ia merupakan rangka kerja Struts 2 baharu yang menggabungkan teknologi struts 1 dan WebWork
2 🎜>Dengan populariti rangka kerja Struts2, semakin banyak unit perusahaan menggunakan rangka kerja Struts2 untuk pembangunan Kerentanan berisiko tinggi telah terdedah berkali-kali dalam beberapa tahun kebelakangan ini terjejas, seperti : Pada Disember 2016, data pengguna Jingdong 12G telah dibocorkan, termasuk nama pengguna, kata laluan, e-mel, nombor QQ, nombor telefon, kad ID dan dimensi lain Kerentanan keselamatan dalam Struts 2. Pada masa itu, hampir semua syarikat Internet dan sejumlah besar bank dan agensi kerajaan di negara ini terjejas, mengakibatkan sejumlah besar kebocoran data Setiap kali kelemahan berlaku dalam struts2, platform kerentanan Internet utama juga menerima pelbagai maklum balas seperti. sebagai:
Masalah pelaksanaan kod Struts2 bermula sejak 2010, apabila Meder Kydyraliev daripada Pasukan Keselamatan Google mendapati bahawa pemintas parameter boleh dipintas dengan menggunakan pengekodan unicde untuk penapisan "#" menyebabkan masalah pelaksanaan kod Nombor kerentanan rasmi ialah S2-003
Melihat kembali sejarah kelemahan struts2, kami mendapati bahawa pegawai tidak boleh dipersalahkan. . Kedua, kami merasakan bahawa langkah-langkah pembaikan rasmi tidak mempunyai kekuatan dan nampaknya hanya biasa-biasa sahaja, tanpa benar-benar menyelesaikan punca masalah. Tambahan pula, semangat keterbukaan rasmi benar-benar mengejutkan Mereka malah secara langsung menyiarkan PoC kerentanan itu di laman web rasmi Ini memberi peluang kepada ramai orang untuk mengkaji lebih lanjut tentang kelemahan ini lebih serius.
2.2. Inventori kerentanan Struts2
Kerentanan Struts2 yang mempunyai impak yang agak besar dan dieksploitasi secara meluas:
CVE-2010-1870XWork ParameterInterceptors>CVE-2013-2251Struts2
Struts2
Struts2
CNVD-2016-02506, CVE-2016-3081, versi terjejas Struts 2.3.20 - Struts 2.3.20 - Struts.3.20 - Struts. .20.3 dan 2.3.24.3 kecuali)
Nombor CVE: CVE-2016-4438 Struts (S2-037) kerentanan pelaksanaan kod jauh, versi terjejas: Struts 2.3.20 - Struts Struts 2.3.28.1> 🎜>CVE-2017-5638 Versi terjejas: Struts 2.3.5 – Struts 2.3.31
Struts 2.5 –Struts 2.5.10
Untuk butiran lain, sila rujuk struts2 laman web rasmi Sejarah Kerentanan:
https://cwiki.apache.org/confluence/display/WW/Security+Bulletins
3. Pengedaran
Memandangkan rangka kerja Struts2 dengan kerentanan yang kerap, kami menjalankan tinjauan dan statistik mengenai pengedaran rangka kerja Struts di wilayah Dengan cap jari tapak di setiap bandar, kami memetakan penggunaan daripada Strust2 di pelbagai bandar di wilayah itu Carta pengedaran rangka kerja adalah seperti berikut:
Menggabungkan analisis data besar dan pengenalan kata kunci, kami menganalisis yang dikumpul. keadaan industri di mana tapak Strust2 digunakan dan dilukis Output carta berikut:

Data jadual khusus:
序号
行业类型
数量
百分比
1
政府部门
447
28.29%
2
教育机构
155
9.80%
3
金融行业
110
6.96%
4
保险行业
28
1.77%
5
证券行业
14
0.88%
6
能源行业
8
0.50%
7
交通行业
93
5.88%
8
电信运营商
114
7.21%
9
互联网企业
398
25.18%
10
其他企业
213
13.48%
Seperti yang dapat dilihat daripada gambar di atas, tiga syarikat teratas (nota: tidak termasuk syarikat lain ) ialah jabatan Kerajaan (memperakaunkan 28.29%), syarikat Internet (25.18%), institusi pendidikan (9.8%)
Kami menjalankan pengesanan kelemahan pada tapak yang dikumpul menggunakan perisian tengah Struts2 Penggunaan ini memberi kesan yang lebih besar kepada Internet. Mengesahkan beberapa kelemahan berisiko tinggi, mengesan kewujudan kelemahan (S2-045, S2-037, S2-032, S2-016) dan membaiki situasi tetulang Selepas menguji 1580 sampel tapak, didapati masih ada Kerentanan Struts2 di beberapa tapak Ia belum dibaiki Statistik tapak dengan kelemahan yang dikesan adalah seperti berikut:
序号
行业
存在漏洞数量
1
政府部门
3
2
教育机构
2
3
金融行业
1
4
互联网企业
2
5
其他
2
Semasa pengesanan, kami mendapati terdapat banyak laman web dengan kelemahan lama sebelum Stuts2 yang belum dibaiki. Oleh itu, antara kelemahan Stuts2, laman web Pengguna berdaftar terdedah kepada serangan penggodam.
4. Cadangan Keselamatan
Apabila keadaan menjadi semakin kompleks, keselamatan maklumat telah menjadi isu yang melibatkan lebih daripada teknologi. Perkembangan sains dan teknologi adalah pedang bermata dua Ia boleh memberi manfaat kepada manusia, tetapi ia juga boleh membawa kesan yang merosakkan. Dan perkara ini, sebagai tambahan kepada teknologi itu sendiri, mungkin lebih difahami dari tahap kesedaran kita. Kesan kerentanan yang besar sudah cukup untuk memberi amaran kepada pengamal keselamatan maklumat dalam industri Internet: panggilan bangun untuk keselamatan maklumat terus berdering sepanjang masa.
1. Kita harus membangunkan tabiat pembangunan yang baik dalam pembangunan sistem maklumat risiko.
2. Sandaran data tapak web yang tepat pada masanya Apabila sistem diserang, sistem yang diserang boleh dipulihkan secepat mungkin.
3 Pasang perisian anti-virus pada perkhidmatan latar belakang, lakukan imbasan virus dan semakan keselamatan lain pada pelayan dengan kerap.
4. Beri perhatian kepada kelemahan Internet terkini dalam masa nyata dan membaiki kelemahan dalam sistem maklumat dengan tepat pada masanya.
5 Sentiasa menjalankan ujian penembusan, ujian kelemahan dan kerja lain pada sistem untuk menemui masalah dengan segera dan membaikinya tepat pada masanya untuk mengelakkan kelemahan daripada terdedah kepada Internet.
6. Ambil sistem yang tidak lagi digunakan di luar talian tepat pada masanya Secara amnya, terdapat lebih banyak isu keselamatan dalam sistem lama dan pengurusan yang lemah mungkin membocorkan sejumlah besar maklumat sensitif.
CVE-2013-2251Struts2
Struts2
Struts2
CNVD-2016-02506, CVE-2016-3081, versi terjejas Struts 2.3.20 - Struts 2.3.20 - Struts.3.20 - Struts. .20.3 dan 2.3.24.3 kecuali)
Nombor CVE: CVE-2016-4438 Struts (S2-037) kerentanan pelaksanaan kod jauh, versi terjejas: Struts 2.3.20 - Struts Struts 2.3.28.1> 🎜>CVE-2017-5638 Versi terjejas: Struts 2.3.5 – Struts 2.3.31
Struts 2.5 –Struts 2.5.10
Untuk butiran lain, sila rujuk struts2 laman web rasmi Sejarah Kerentanan:https://cwiki.apache.org/confluence/display/WW/Security+Bulletins
3. Pengedaran
Memandangkan rangka kerja Struts2 dengan kerentanan yang kerap, kami menjalankan tinjauan dan statistik mengenai pengedaran rangka kerja Struts di wilayah Dengan cap jari tapak di setiap bandar, kami memetakan penggunaan daripada Strust2 di pelbagai bandar di wilayah itu Carta pengedaran rangka kerja adalah seperti berikut:
Menggabungkan analisis data besar dan pengenalan kata kunci, kami menganalisis yang dikumpul. keadaan industri di mana tapak Strust2 digunakan dan dilukis Output carta berikut:
Data jadual khusus:
序号 | 行业类型 | 数量 | 百分比 |
1 | 政府部门 | 447 | 28.29% |
2 | 教育机构 | 155 | 9.80% |
3 | 金融行业 | 110 | 6.96% |
4 | 保险行业 | 28 | 1.77% |
5 | 证券行业 | 14 | 0.88% |
6 | 能源行业 | 8 | 0.50% |
7 | 交通行业 | 93 | 5.88% |
8 | 电信运营商 | 114 | 7.21% |
9 | 互联网企业 | 398 | 25.18% |
10 | 其他企业 | 213 | 13.48% |
Seperti yang dapat dilihat daripada gambar di atas, tiga syarikat teratas (nota: tidak termasuk syarikat lain ) ialah jabatan Kerajaan (memperakaunkan 28.29%), syarikat Internet (25.18%), institusi pendidikan (9.8%)
Kami menjalankan pengesanan kelemahan pada tapak yang dikumpul menggunakan perisian tengah Struts2 Penggunaan ini memberi kesan yang lebih besar kepada Internet. Mengesahkan beberapa kelemahan berisiko tinggi, mengesan kewujudan kelemahan (S2-045, S2-037, S2-032, S2-016) dan membaiki situasi tetulang Selepas menguji 1580 sampel tapak, didapati masih ada Kerentanan Struts2 di beberapa tapak Ia belum dibaiki Statistik tapak dengan kelemahan yang dikesan adalah seperti berikut:
序号 | 行业 | 存在漏洞数量 |
---|---|---|
1 | 政府部门 | 3 |
2 | 教育机构 | 2 |
3 | 金融行业 | 1 |
4 | 互联网企业 | 2 |
5 | 其他 | 2 |
Semasa pengesanan, kami mendapati terdapat banyak laman web dengan kelemahan lama sebelum Stuts2 yang belum dibaiki. Oleh itu, antara kelemahan Stuts2, laman web Pengguna berdaftar terdedah kepada serangan penggodam.
4. Cadangan Keselamatan
Apabila keadaan menjadi semakin kompleks, keselamatan maklumat telah menjadi isu yang melibatkan lebih daripada teknologi. Perkembangan sains dan teknologi adalah pedang bermata dua Ia boleh memberi manfaat kepada manusia, tetapi ia juga boleh membawa kesan yang merosakkan. Dan perkara ini, sebagai tambahan kepada teknologi itu sendiri, mungkin lebih difahami dari tahap kesedaran kita. Kesan kerentanan yang besar sudah cukup untuk memberi amaran kepada pengamal keselamatan maklumat dalam industri Internet: panggilan bangun untuk keselamatan maklumat terus berdering sepanjang masa.
1. Kita harus membangunkan tabiat pembangunan yang baik dalam pembangunan sistem maklumat risiko.
2. Sandaran data tapak web yang tepat pada masanya Apabila sistem diserang, sistem yang diserang boleh dipulihkan secepat mungkin.
3 Pasang perisian anti-virus pada perkhidmatan latar belakang, lakukan imbasan virus dan semakan keselamatan lain pada pelayan dengan kerap.
4. Beri perhatian kepada kelemahan Internet terkini dalam masa nyata dan membaiki kelemahan dalam sistem maklumat dengan tepat pada masanya.
5 Sentiasa menjalankan ujian penembusan, ujian kelemahan dan kerja lain pada sistem untuk menemui masalah dengan segera dan membaikinya tepat pada masanya untuk mengelakkan kelemahan daripada terdedah kepada Internet.
6. Ambil sistem yang tidak lagi digunakan di luar talian tepat pada masanya Secara amnya, terdapat lebih banyak isu keselamatan dalam sistem lama dan pengurusan yang lemah mungkin membocorkan sejumlah besar maklumat sensitif.
Atas ialah kandungan terperinci Contoh analisis risiko tapak rangka kerja Struts2. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



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.

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.

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

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

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

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

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).

Pada masa ini, Apache secara rasmi telah mengeluarkan kemas kini versi untuk membetulkan kelemahan. Adalah disyorkan bahawa pengguna mengesahkan versi produk Apache Struts tepat pada masanya. Jika terjejas, sila ambil langkah menampal tepat pada masanya. 1. Pengenalan Kerentanan ApacheStruts2 ialah sub-projek projek Jakarta di bawah Yayasan Perisian Apache Amerika Ia adalah rangka kerja aplikasi Web berdasarkan reka bentuk MVC. Pada 22 Ogos 2018, Apache secara rasmi mengeluarkan Apache Struts2S2-057 kerentanan keselamatan (CNNVD-201808-740, CVE-2018-11776). Apabila mendayakan fungsi ruang nama pan dalam rangka kerja pembangunan struts2
