Repositori ini berisi kode untuk kertas dimva'18: "Jast: Deteksi sintaksis sepenuhnya dari javascript berbahaya (dikaburkan)".
Harap dicatat bahwa dalam kondisi saat ini, kode ini adalah POC dan bukan API siap-produksi yang sepenuhnya.
Implementasi kami, yang bertujuan mendeteksi sampel JavaScript berbahaya, dibagi menjadi beberapa paket dengan fungsionalitas yang berbeda:
Deteksi sampel JavaScript yang menghormati tata bahasa yang ditentukan oleh ECMA-International, deteksi JavaScript yang rusak, dan file yang tidak ditulis dalam JavaScript.
Untuk menggunakan alat ini: python3 <path-of-js/is_js.py> --help .
Analisis AST dari sampel JavaScript dapat dilakukan. Studi ini didasarkan pada analisis frekuensi-N-gram yang ada dalam file yang dipertimbangkan.
Jika Anda menggunakan Jast untuk penelitian akademik, Anda sangat dianjurkan untuk mengutip makalah berikut:
@inproceedings{fass2018jast,
author="Fass, Aurore and Krawczyk, Robert P. and Backes, Michael and Stock, Ben",
title="{textsc{JaSt}: Fully Syntactic Detection of Malicious (Obfuscated) JavaScript}",
booktitle="Proceedings of the International Conference on Detection of Intrusions and Malware, and Vulnerability Assessment~(DIMVA)",
year="2018"
}
JavaScript adalah bahasa skrip browser yang awalnya dibuat untuk meningkatkan interaktivitas situs web dan untuk meningkatkan keramahan pengguna mereka. Namun, karena menurunkan pekerjaan ke browser pengguna, itu dapat digunakan untuk terlibat dalam aktivitas jahat seperti penambangan crypto, serangan pengunduhan drive-by, atau pengalihan ke situs web yang menampung perangkat lunak berbahaya. Mengingat prevalensi naskah jahat seperti itu, industri anti-virus telah meningkatkan fokus pada deteksi mereka. Para penyerang, pada gilirannya, memanfaatkan meningkatnya teknik kebingungan, untuk menghambat analisis dan penciptaan tanda tangan yang sesuai. Namun sampel jahat ini berbagi kesamaan sintaksis pada tingkat abstrak, yang memungkinkan untuk mem -bypass kebingungan dan mendeteksi bahkan varian malware yang tidak diketahui.
Dalam makalah ini, kami menyajikan JAST, solusi rendah-overhead yang menggabungkan ekstraksi fitur dari pohon sintaks abstrak dengan pengklasifikasi hutan acak untuk mendeteksi instance JavaScript berbahaya. Ini didasarkan pada analisis frekuensi pola spesifik, yang merupakan prediksi jinak atau sampel jahat. Meskipun analisis ini sepenuhnya statis, ia menghasilkan akurasi deteksi tinggi hampir 99,5% dan memiliki tingkat negatif palsu yang rendah sebesar 0,54%.
Ini adalah pekerjaan penelitian dan niatnya adalah untuk mempublikasikan hasilnya, untuk membuat hasilnya dapat diverifikasi, dan untuk mempromosikan keamanan informasi. Itu tidak selalu mencerminkan kebijakan resmi atau posisi Bundesamt für Sicherheit di Der Informationstechnik (BSI). Meskipun penulis telah melakukan segala upaya untuk memastikan bahwa informasi dalam publikasi ini benar, penulis tidak berasumsi dan dengan ini menyangkal tanggung jawab apa pun kepada pihak mana pun atas kehilangan, kerusakan, atau gangguan yang disebabkan oleh kesalahan atau kelalaian, apakah kesalahan atau kelalaian tersebut dihasilkan dari kelalaian, kecelakaan, atau penyebab lainnya.
Die von dem Benutzer Auf Github Bereitgestellten Inhalte Spiegeln Nicht Die Meinung des Bsi Lebih Rah.
Die Verwendung der Bereitgestellten inhalte geschieht auf eigene gefahr des anwenders. Eine haftung für die richtigkeit, vollständigkeit und aktualität dieser inhalte kann seitens des bsi nicht übernommenmen Werden.
Das bsi ist nicht verantwortlich und übernimmt keererlei haftung für Schäden, unter anderem für direkte, indirekte, zufällige, vorab konkret zu bestmende singer folgeschäden, die angiblich durchret verwendret aufufget, die angeblich durcher verwendret aufufget, die decure durchret aufende aufget, die angeblich durcher durchrret verwendret aufende singer, die durchret derure aumende oHwendEret, die Durchret derure odwende derer dering
Esprima, dibuat dan dikelola oleh Ariya Hidayat telah digunakan untuk melakukan analisis leksikal dan sintaksis file JavaScript.
"Hak Cipta JS Foundation dan kontributor lainnya, https://js.foundation/
Redistribusi dan penggunaan dalam bentuk sumber dan biner, dengan atau tanpa modifikasi, diizinkan dengan ketentuan bahwa kondisi berikut dipenuhi:
Perangkat lunak ini disediakan oleh pemegang hak cipta dan kontributor "sebagaimana adanya" dan setiap jaminan tersirat atau tersirat, termasuk, tetapi tidak terbatas pada, jaminan tersirat dari dapat diperjualbelikan dan kebugaran untuk tujuan tertentu ditolak. Dalam hal apa pun tidak akan bertanggung jawab atas kerusakan langsung, tidak langsung, insidental, khusus, patut dicontoh, atau konsekuensial (termasuk, tetapi tidak terbatas pada, pengadaan barang atau layanan pengganti; hilangnya penggunaan, data, atau laba; atau gangguan bisnis) namun pada hal -hal yang terjadi pada hal itu, baik dalam hal ini, apakah ada tort, atau kelalaian yang terjadi, baik yang terjadi di dalam kontrak, atau kelalaian yang terjadi pada hal -hal yang terjadi di dalam kontrak, atau kelalaian dalam hal ini, baik yang terjadi di dalam kontrak, atau kelalaian yang terjadi pada hal itu, atau tidak ada dalam hal ini, baik yang terjadi pada kontrak, atau tidak ada. KERUSAKAN."