InggrisPerancisSpanyol

Ad


favorit OnWorks

flawfinder - Online di Cloud

Jalankan flawfinder di penyedia hosting gratis OnWorks melalui Ubuntu Online, Fedora Online, emulator online Windows, atau emulator online MAC OS

Ini adalah command flawfinder yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

PROGRAM:

NAMA


flawfinder - secara leksikal menemukan potensi kelemahan keamanan ("hit") dalam kode sumber

RINGKASAN


pencari kesalahan [--membantu|-h] [--Versi: kapan] [--daftar aturan]
[--izinkan tautan] [--ikutidotdir] [--tidak ada hubungan]
[--tambalan=nama file|-P nama file]
[--masukan|-I] [ --mintingkat=X | -m X ] [--positif palsu|-F]
[--tidak pernah mengabaikan|-n]
[--regex=POLA | -e POLA]
[--konteks|-c] [--kolom|-C] [--hanya data|-D] [--html|-H] [--segera|-i]
[--garis tunggal|-S] [--menghilangkan waktu] [--diam|-Q]
[--loadhitlist=F] [--savehitlist=F] [--diffhitlist=F]
[--] [ sumber kode fillet or sumber akar direktori ]+

DESKRIPSI


Flawfinder mencari melalui kode sumber C/C++ untuk mencari potensi kelemahan keamanan. Ke
jalankan flawfinder, cukup berikan flawfinder daftar direktori atau file. Untuk setiap direktori
diberikan, semua file yang memiliki ekstensi nama file C/C++ di direktori itu (dan
subdirektori, secara rekursif) akan diperiksa. Jadi, untuk sebagian besar proyek, cukup berikan
flawfinder nama direktori teratas kode sumber (gunakan ``.'' untuk saat ini
direktori), dan flawfinder akan memeriksa semua kode sumber C/C++ proyek. Jika kamu
hanya ingin memiliki perubahan ditinjau, simpan perbedaan terpadu dari perubahan tersebut (dibuat oleh GNU
"diff -u" atau "svn diff" atau "git diff") dalam file tambalan dan gunakan opsi --patch (-P).

Flawfinder akan menghasilkan daftar `` hit'' (potensi kelemahan keamanan), diurutkan berdasarkan risiko; NS
hit paling berisiko ditampilkan terlebih dahulu. Tingkat risiko ditampilkan di dalam tanda kurung siku dan bervariasi
dari 0, risiko sangat kecil, hingga 5, risiko besar. Tingkat risiko ini tidak hanya bergantung pada
fungsi, tetapi pada nilai parameter fungsi. Misal, konstanta
string seringkali kurang berisiko daripada string variabel penuh dalam banyak konteks, dan dalam hal itu
konteks hit akan memiliki tingkat risiko yang lebih rendah. Flawfinder tahu tentang gettext (umum
perpustakaan untuk program internasional) dan akan memperlakukan string konstan yang dilewatkan
gettext seolah-olah itu adalah string konstan; ini mengurangi jumlah hit palsu di
program internasional. Flawfinder akan melakukan hal yang sama dengan _T() dan
_TEXT(), makro Microsoft umum untuk menangani program internasional. penemu cacat
dengan benar mengabaikan sebagian besar teks di dalam komentar dan string. Biasanya flawfinder menunjukkan semuanya
hit dengan tingkat risiko minimal 1, tetapi Anda dapat menggunakan opsi --minlevel untuk hanya menampilkan
hit dengan tingkat risiko yang lebih tinggi jika Anda mau. Deskripsi hit juga perhatikan Common yang relevan
Pengidentifikasi Weakness Enumeration (CWE) dalam tanda kurung, seperti yang dibahas di bawah ini. penemu cacat
secara resmi Kompatibel dengan CWE.

Tidak setiap serangan sebenarnya merupakan kerentanan keamanan, dan tidak setiap kerentanan keamanan
tentu ditemukan. Namun demikian, flawfinder dapat menjadi bantuan dalam menemukan dan menghapus
kerentanan keamanan. Cara umum untuk menggunakan flawfinder adalah dengan terlebih dahulu menerapkan flawfinder ke
satu set kode sumber dan memeriksa item berisiko tertinggi. Kemudian, gunakan --inputs untuk memeriksa
lokasi input, dan periksa untuk memastikan bahwa hanya nilai input yang legal dan aman yang
diterima dari pengguna yang tidak dipercaya.

Setelah Anda mengaudit sebuah program, Anda dapat menandai baris kode sumber yang sebenarnya baik-baik saja tetapi
menyebabkan peringatan palsu sehingga pencari kesalahan akan berhenti mengeluh tentang mereka. Untuk menandai
baris sehingga peringatan ini ditekan, berikan komentar berformat khusus baik di
baris yang sama (setelah kode sumber) atau semua dengan sendirinya di baris sebelumnya. Komentar
harus memiliki salah satu dari dua format berikut:

· // Pencari kesalahan: abaikan

· /* Flawfinder: abaikan */

Demi kompatibilitas, Anda dapat mengganti "Flawfinder:" dengan "ITS4:" atau "RATS:" di
komentar berformat khusus. Karena mungkin saja garis seperti itu salah, Anda dapat menggunakan
opsi --neverignore, yang menyebabkan flawfinder tidak pernah mengabaikan baris apa pun yang terjadi
arahan komentar mengatakan (lebih membingungkan, --neverignore mengabaikan pengabaian).

Flawfinder menggunakan database internal yang disebut ``ruleset''; mengidentifikasi aturan
fungsi yang merupakan penyebab umum dari kelemahan keamanan. Aturan standar mencakup besar
sejumlah masalah potensial yang berbeda, termasuk masalah umum yang dapat berdampak
program C/C++, serta sejumlah fungsi mirip Unix dan Windows yang
terutama bermasalah. Opsi --listrules melaporkan daftar aturan saat ini dan
tingkat risiko default mereka. Seperti disebutkan di atas, setiap potensi kelemahan keamanan yang ditemukan di suatu
file kode sumber (cocok dengan entri dalam kumpulan aturan) disebut ``hit,'' dan himpunan
hit yang ditemukan selama menjalankan program tertentu disebut ``hitlist.'' Hitlists
dapat disimpan (menggunakan --savehitlist), dimuat ulang untuk ditampilkan kembali (menggunakan --loadhitlist), dan
Anda hanya dapat menampilkan hit yang berbeda dari run lainnya (menggunakan --diffhitlist).

Flawfinder adalah alat sederhana, yang mengarah ke beberapa pro dan kontra mendasar. Flawfinder bekerja
dengan melakukan tokenisasi leksikal sederhana (melewatkan komentar dan menandai string dengan benar),
mencari kecocokan token ke database (terutama untuk menemukan panggilan fungsi).
Flawfinder mirip dengan RATS dan ITS4, yang juga menggunakan tokenisasi leksikal sederhana.
Flawfinder kemudian memeriksa teks parameter fungsi untuk memperkirakan risiko. Tidak seperti
alat seperti belat, bendera peringatan gcc, dan dentang, flawfinder tidak tidak menggunakan atau memiliki
akses ke informasi tentang aliran kontrol, aliran data, atau tipe data saat mencari
kerentanan potensial atau memperkirakan tingkat risiko. Dengan demikian, pencari kesalahan akan
tentu menghasilkan banyak kesalahan positif untuk kerentanan dan gagal melaporkan banyak
kerentanan. Di sisi lain, flawfinder dapat menemukan kerentanan dalam program yang
tidak dapat dibangun atau tidak dapat dihubungkan. Itu sering dapat bekerja dengan program yang bahkan tidak bisa
dikompilasi (setidaknya dengan alat resensi). Flawfinder juga tidak bingung dengan
definisi makro dan keanehan lain yang bermasalah dengan alat yang lebih canggih.
Flawfinder juga dapat berguna sebagai pengantar sederhana untuk alat analisis statis di
umum, karena mudah digunakan dan mudah dipahami.

Setiap nama file yang diberikan pada baris perintah akan diperiksa (bahkan jika tidak memiliki nama biasa
ekstensi nama file C/C++); sehingga Anda dapat memaksa flawfinder untuk memeriksa file tertentu yang Anda miliki
menginginkan. Saat mencari direktori secara rekursif, flawfinder hanya membuka dan memeriksa
file biasa yang memiliki ekstensi nama file C/C++. Flawfinder menganggap bahwa file tersebut adalah
File C/C++ jika memiliki ekstensi ".c", ".h", ".ec", ".ecp", ".pgc", ".C", ".cpp",
".CPP", ".cxx", ".cc", ".CC", ".pcc", ".hpp", atau ".H". Nama file ``-'' berarti
masukan standar. Untuk mencegah masalah keamanan, file khusus (seperti file khusus perangkat
dan pipa bernama) selalu dilewati, dan secara default tautan simbolik dilewati (the
--allowlink opsi mengikuti tautan simbolik).

Setelah daftar hit adalah ringkasan singkat dari hasil (gunakan -D untuk menghapus ini
informasi). Ini akan menunjukkan jumlah hit, garis yang dianalisis (seperti yang dilaporkan oleh wc -l), dan
baris kode sumber fisik (SLOC) dianalisis. Sebuah SLOC fisik adalah non-kosong, non-
baris komentar. Ini kemudian akan menunjukkan jumlah hit di setiap level; perhatikan bahwa akan ada
tidak pernah menjadi hit di level yang lebih rendah dari minlevel (1 secara default). Jadi, "[0] 0 [1] 9"
berarti di level 0 ada 0 hit yang dilaporkan, dan di level 1 ada 9 hit
dilaporkan. Ini selanjutnya akan menunjukkan jumlah hit pada level tertentu atau lebih besar (jadi level 3+
memiliki jumlah jumlah hit pada level 3, 4, dan 5). Jadi, entri "[0+] 37"
menunjukkan bahwa pada level 0 atau lebih tinggi ada 37 hit (entri 0+ akan selalu sama
seperti nomor "hits" di atas). Hit per KSLOC selanjutnya ditampilkan; ini adalah masing-masing dari "tingkat atau
lebih tinggi" nilai dikalikan dengan 1000 dan dibagi dengan SLOC fisik. Jika symlink adalah
dilewati, jumlah itu dilaporkan. Jika hit ditekan (menggunakan "abaikan"
arahan dalam komentar kode sumber seperti dijelaskan di atas), nomor yang ditekan dilaporkan.
Tingkat risiko minimum untuk dimasukkan dalam laporan ditampilkan; secara default ini adalah 1
(gunakan --minlevel untuk mengubah ini). Ringkasan berakhir dengan pengingat penting: Tidak semua hit
tentu saja merupakan kerentanan keamanan, dan mungkin ada kerentanan keamanan lainnya
tidak dilaporkan oleh alat.

Flawfinder dirilis di bawah lisensi GNU GPL versi 2 atau yang lebih baru (GPLv2+).

Flawfinder bekerja mirip dengan program lain, ITS4, yang tidak sepenuhnya open source
perangkat lunak (sebagaimana didefinisikan dalam Definisi Sumber Terbuka) atau perangkat lunak bebas (sebagaimana didefinisikan oleh
Yayasan Perangkat Lunak Bebas). Penulis Flawfinder belum pernah melihat kode sumber ITS4.

SINGKAT TUTORIAL


Berikut adalah contoh singkat tentang bagaimana flawfinder dapat digunakan. Bayangkan Anda memiliki C/C++
kode sumber untuk beberapa program bernama xyzzy (yang mungkin sudah atau belum Anda tulis), dan
Anda sedang mencari kerentanan keamanan (sehingga Anda dapat memperbaikinya sebelum pelanggan
menghadapi kerentanan). Untuk tutorial ini, saya akan berasumsi bahwa Anda menggunakan Unix-
seperti sistem, seperti Linux, OpenBSD, atau MacOS X.

Jika kode sumber berada dalam subdirektori bernama xyzzy, Anda mungkin akan memulai dengan membuka a
jendela teks dan menggunakan pengaturan default flawfinder, untuk menganalisis program dan melaporkan
daftar prioritas kerentanan keamanan potensial (``kurang'' hanya memastikan
hasil tetap di layar):
pencari cacat xyzzy | lebih sedikit

Pada titik ini, Anda akan melihat sejumlah besar entri. Setiap entri memiliki nama file, a
titik dua, nomor baris, tingkat risiko dalam tanda kurung (di mana 5 adalah yang paling berisiko), kategori,
nama fungsinya, dan deskripsi mengapa flawfinder menganggap garis itu a
kerentanan. Flawfinder biasanya mengurutkan berdasarkan tingkat risiko, menampilkan item yang paling berisiko terlebih dahulu;
jika Anda memiliki waktu terbatas, mungkin yang terbaik adalah mulai mengerjakan item yang paling berisiko dan
lanjutkan sampai Anda kehabisan waktu. Jika Anda ingin membatasi tampilan pada risiko hanya dengan
tingkat risiko tertentu atau lebih tinggi, gunakan opsi --minlevel. Jika Anda mendapatkan
jumlah positif palsu yang luar biasa karena nama variabel terlihat berbahaya
nama fungsi, gunakan opsi -F untuk menghapus laporan tentangnya. Jika Anda tidak mengerti
pesan kesalahan, silakan lihat dokumen seperti Writing Aman program untuk Linux dan
Unix CARAhttp://www.dwheeler.com/secure-programs⟩ pada http://www.dwheeler.com/secure-
program yang menyediakan informasi lebih lanjut tentang menulis program yang aman.

Setelah Anda mengidentifikasi masalah dan memahaminya, Anda dapat memperbaikinya. Kadang-kadang Anda mungkin
mau analisa ulang, karena nomor baris akan berubah dan untuk memastikan
bahwa kode baru belum memperkenalkan kerentanan yang berbeda.

Jika Anda telah menentukan bahwa beberapa baris tidak benar-benar menjadi masalah, dan Anda yakin akan hal itu, Anda bisa
masukkan tepat sebelum atau pada baris yang menyinggung komentar seperti
/* Flawfinder: abaikan */
untuk menjaga mereka dari muncul di output.

Setelah Anda selesai melakukannya, Anda harus kembali dan mencari input program, untuk membuat
memastikan bahwa program dengan kuat menyaring semua inputnya yang tidak tepercaya. Pencari cacat bisa
mengidentifikasi banyak input program dengan menggunakan opsi --inputs, seperti ini:
flawfinder --masukkan xyzzy

Flawfinder dapat berintegrasi dengan baik dengan editor teks dan lingkungan pengembangan terintegrasi;
lihat contoh untuk informasi lebih lanjut.

Flawfinder menyertakan banyak opsi lain, termasuk opsi untuk membuat versi HTML dari
output (berguna untuk tampilan yang lebih cantik). Bagian selanjutnya menjelaskan opsi-opsi itu lebih lanjut
detail.

PILIHAN


Flawfinder memiliki sejumlah opsi, yang dapat dikelompokkan menjadi opsi yang mengontrolnya sendiri
dokumentasi, pilih data input, pilih klik mana yang akan ditampilkan, pilih format output,
dan melakukan manajemen daftar sasaran. Flawfinder mendukung sintaks standar yang ditentukan dalam
POSIX (Edisi 7 Edisi 2013) bagian ``Konvensi Utilitas''. Ini juga mendukung GNU
opsi panjang (opsi bentuk tanda hubung ganda --Option) seperti yang didefinisikan dalam GNU C Perpustakaan
Referensi panduan ``Konvensi Sintaks Argumen Program'' dan GNU Pengkodean Standar
``Standar untuk Antarmuka Baris Perintah''. Argumen opsi panjang dapat diberikan sebagai
``--nama=nilai'' atau ``-nilai nama''. Beberapa opsi hanya dapat diakses menggunakan opsi lainnya
konvensi opsi panjang GNU yang dapat dibaca; opsi umum juga didukung oleh yang lebih tua
konvensi opsi satu huruf.

Dokumentasi
--membantu

-h Tampilkan informasi penggunaan (bantuan).

--Versi: kapan Menunjukkan (hanya) nomor versi dan keluar.

--daftar aturan Buat daftar istilah (token) yang memicu pemeriksaan lebih lanjut, risiko defaultnya
level, dan peringatan default (termasuk pengidentifikasi CWE), jika
berlaku), semua dipisahkan tab. Istilah-istilah tersebut terutama adalah nama-nama yang berpotensi-
fungsi berbahaya. Perhatikan bahwa tingkat risiko yang dilaporkan dan peringatan untuk beberapa
kode tertentu mungkin berbeda dari default, tergantung pada bagaimana istilahnya
digunakan. Kombinasikan dengan -D jika Anda tidak menginginkan header yang biasa. penemu cacat
versi 1.29 mengubah pemisah dari spasi menjadi tab, dan menambahkan default
bidang peringatan.

Memilih Memasukkan Data
--izinkan tautan Izinkan penggunaan tautan simbolik; biasanya tautan simbolik dilewati. jangan
gunakan opsi ini jika Anda menganalisis kode oleh orang lain; penyerang bisa melakukan banyak hal
hal-hal yang menyebabkan masalah untuk analisis dengan opsi ini diaktifkan. Untuk
misalnya, penyerang dapat menyisipkan tautan simbolis ke file seperti / etc / passwd
(membocorkan informasi tentang file) atau membuat lingkaran melingkar, yang akan
menyebabkan flawfinder menjalankan ``selamanya''. Masalah lain dengan mengaktifkan ini
pilihannya adalah jika file yang sama direferensikan beberapa kali menggunakan simbolis
link, itu akan dianalisis beberapa kali (dan dengan demikian dilaporkan beberapa kali).
Perhatikan bahwa flawfinder sudah menyertakan beberapa perlindungan terhadap tautan simbolik
untuk jenis file khusus seperti jenis file perangkat (misalnya, /dev/zero atau
C:\mystuff\com1). Perhatikan bahwa untuk flawfinder versi 1.01 dan sebelumnya, ini adalah
default.

--ikutidotdir
Masukkan direktori yang namanya dimulai dengan ".". Biasanya direktori seperti itu adalah
diabaikan, karena biasanya menyertakan data pribadi kontrol versi (seperti
.git/ atau .svn/), konfigurasi, dan seterusnya.

--tidak ada hubungan Diabaikan. Secara historis ini menonaktifkan tautan simbolik berikut; perilaku ini
sekarang menjadi default.

--tambalan=file tambalan

-P file tambalan
Periksa file atau direktori yang dipilih, tetapi hanya laporkan klik pada baris yang
ditambahkan atau dimodifikasi oleh file patch yang diberikan. File patch harus dalam format a
format diff terpadu yang dikenali (misalnya, output dari GNU "diff -u old new",
"svn diff", atau "git diff [komit]"). Flawfinder berasumsi bahwa patch tersebut memiliki
sudah diterapkan ke file. File tambalan juga dapat menyertakan perubahan pada
file yang tidak relevan (mereka akan diabaikan begitu saja). Nomor baris yang diberikan dalam
file tambalan digunakan untuk menentukan baris mana yang diubah, jadi jika Anda memiliki
memodifikasi file sejak file tambalan dibuat, membuat ulang file tambalan
pertama. Hati-hati bahwa nama file dari file baru diberikan dalam file patch
harus sama persis, termasuk huruf besar/kecil, awalan jalur, dan direktori
pemisah (\ vs. /). Hanya format diff terpadu yang diterima (GNU diff, svn
diff, dan keluaran git diff baik-baik saja); jika Anda memiliki format yang berbeda, lagi
regenerasi dulu. Hanya pukulan yang terjadi pada garis yang diubah, atau
tepat di atas dan di bawah mereka, dilaporkan. Opsi ini menyiratkan
--tidak pernah mengabaikan.

Memilih Hits untuk Display
--masukan

-I Tampilkan hanya fungsi yang memperoleh data dari luar program; ini juga mengatur
tingkat minimum ke 0.

--mintingkat=X

-m X Tetapkan tingkat risiko minimum ke X untuk dimasukkan dalam daftar sasaran. Ini bisa dari 0 (``tidak
risiko'') hingga 5 (``risiko maksimum''); defaultnya adalah 1.

--positif palsu

-F Jangan sertakan klik yang cenderung positif palsu. Saat ini, ini berarti
bahwa nama fungsi diabaikan jika tidak diikuti oleh "(", dan itu
deklarasi array karakter tidak dicatat. Jadi, jika Anda telah menggunakan variabel
bernama "akses" di mana-mana, ini akan menghilangkan referensi ke biasa ini
variabel. Ini bukan default, karena ini juga meningkatkan kemungkinan
kehilangan hit penting; khususnya, nama fungsi dalam klausa dan panggilan #define
melalui pointer fungsi akan terlewatkan.

--tidak pernah mengabaikan

-n Jangan pernah mengabaikan masalah keamanan, meskipun memiliki arahan ``abaikan'' dalam a
komentar.

--regexp=POLA

-e POLA
Hanya laporkan klik dengan teks yang cocok dengan POLA pola ekspresi reguler.
Misalnya, untuk hanya melaporkan klik yang berisi teks "CWE-120", gunakan ``--regex
CWE-120''. Nama flag opsi ini sama dengan grep.

Memilih Keluaran dibentuk
--kolom

-C Tampilkan nomor kolom (serta nama file dan nomor baris) dari setiap klik;
ini ditunjukkan setelah nomor baris dengan menambahkan titik dua dan nomor kolom di
baris (karakter pertama dalam baris adalah kolom nomor 1). Ini berguna
untuk editor yang dapat melompat ke kolom tertentu, atau untuk berintegrasi dengan yang lain
alat (seperti yang untuk menyaring lebih lanjut positif palsu).

--konteks

-c Tampilkan konteks, yaitu, baris yang memiliki "hit"/potensi cacat. Secara default
garis ditampilkan segera setelah peringatan.

--hanya data

-D Jangan tampilkan header dan footer. Gunakan ini bersama dengan --quiet untuk melihat dengan adil
datanya sendiri.

--html

-H Format output sebagai HTML, bukan sebagai teks sederhana.

--segera

-i Segera tampilkan hits (jangan hanya menunggu sampai habis).

--garis tunggal

-S Tampilkan sebagai satu baris output teks untuk setiap klik. Berguna untuk berinteraksi
dengan alat kompilasi.

--menghilangkan waktu Abaikan informasi waktu. Ini berguna untuk uji regresi flawfinder
itu sendiri, sehingga outputnya tidak bervariasi tergantung pada berapa lama analisisnya
mengambil.

--diam

-Q Jangan tampilkan informasi status (yaitu, file mana yang sedang diperiksa) saat
analisis sedang berlangsung.

Daftar Hit Pengelolaan
--savehitlist=F
Simpan semua hasil hit ("hitlist") ke F.

--loadhitlist=F
Muat daftar hit dari F alih-alih menganalisis program sumber. Peringatan: Lakukan tidak
memuat daftar hit dari sumber yang tidak tepercaya (untuk alasan keamanan).

--diffhitlist=F
Tampilkan hanya hit (dimuat atau dianalisis) bukan dalam F. F mungkin dibuat
sebelumnya menggunakan --savehitlist. Peringatan: Lakukan tidak perbedaan daftar hit dari tidak tepercaya
sumber (untuk alasan keamanan). Jika opsi --loadhitlist tidak tersedia,
ini akan menampilkan klik dalam file kode sumber yang dianalisis yang bukan
sebelumnya disimpan di F. Jika digunakan bersama dengan --loadhitlist, ini akan menunjukkan
hit di daftar hit yang dimuat bukan di F. Algoritma perbedaannya adalah
konservatif; hit hanya dianggap ``sama'' jika memiliki kesamaan
nama file, nomor baris, posisi kolom, nama fungsi, dan tingkat risiko.

CONTOH


Berikut adalah berbagai contoh cara memanggil flawfinder. Contoh pertama menunjukkan berbagai
opsi baris perintah sederhana. Flawfinder dirancang untuk bekerja dengan baik dengan editor teks dan
lingkungan pengembangan terintegrasi, jadi bagian selanjutnya menunjukkan cara mengintegrasikan flawfinder
menjadi vim dan emacs.

Sederhana baris perintah Pilihan
pencari kesalahan /usr/src/linux-3.16
Periksa semua file C/C++ di direktori /usr/src/linux-3.16 dan semuanya
subdirektori (secara rekursif), melaporkan semua klik yang ditemukan. Secara default
flawfinder akan melewati tautan simbolik dan direktori dengan nama yang dimulai dengan
sebuah periode.

pencari kesalahan --mintingkat=4 .
Periksa semua file C/C++ di direktori saat ini dan subdirektorinya
(secara rekursif); hanya melaporkan kerentanan level 4 dan lebih tinggi (dua tertinggi
tingkat risiko).

pencari kesalahan --masukan mydir
Periksa semua file C/C++ di mydir dan subdirektorinya (secara rekursif), dan
fungsi laporan yang mengambil input (sehingga Anda dapat memastikan bahwa mereka memfilter
masukan dengan tepat).

pencari kesalahan --tidak pernah mengabaikan mydir
Periksa semua file C/C++ di direktori mydir dan subdirektorinya,
termasuk bahkan klik yang ditandai untuk diabaikan dalam komentar kode.

pencari kesalahan -QD mydir
Periksa mydir dan laporkan hanya hasil aktual (menghapus header dan
footer keluaran). Formulir ini berguna jika output akan disalurkan ke
alat lain untuk analisis lebih lanjut. The -C (--columns) dan -S (--singleline)
opsi juga dapat berguna jika Anda menyalurkan data ke alat lain.

pencari kesalahan -QDSC mydir
Periksa mydir, hanya melaporkan hasil aktual (tanpa header atau footer). Setiap
hit dilaporkan pada satu baris, dan nomor kolom dilaporkan. Ini bisa menjadi
perintah yang berguna jika Anda memasukkan keluaran flawfinder ke alat lain.

pencari kesalahan --diam --html --konteks mydir > result.html
Periksa semua file C/C++ di direktori mydir dan subdirektorinya, dan
menghasilkan versi hasil format HTML. Manajemen kode sumber
sistem (seperti SourceForge dan Savannah) mungkin menggunakan perintah seperti ini.

pencari kesalahan --diam --simpan daftar hit disimpan.hits *.[ch]
Periksa semua file .c dan .h di direktori saat ini. Jangan laporkan
status pemrosesan, dan simpan daftar hit yang dihasilkan (kumpulan semua hit) di
file disimpan.hits.

pencari kesalahan --daftar diffhit disimpan.hits *.[ch]
Periksa semua file .c dan .h di direktori saat ini, dan tunjukkan setiap klik yang
belum ada di file save.hits. Ini hanya dapat digunakan untuk menunjukkan
Kerentanan ``baru'' dalam program yang dimodifikasi, jika disimpan. hit dibuat dari
versi lama dari program yang sedang dianalisis.

pencari kesalahan --tambalan terbaru.patch .
Periksa direktori saat ini secara rekursif, tetapi hanya baris laporan yang
diubah atau ditambahkan dalam file tambalan yang sudah diterapkan bernama terbaru.patch.

pencari kesalahan --regex "CWE-120|CWE-126" src /
Periksa direktori src secara rekursif, tetapi hanya melaporkan hit di mana CWE-120 atau
CWE-126 berlaku.

Memohon dari semangat
Editor teks vim menyertakan mekanisme "perbaikan cepat" yang berfungsi baik dengan flawfinder, jadi
bahwa Anda dapat dengan mudah melihat pesan peringatan dan melompat ke kode sumber yang relevan.

Pertama, Anda perlu memanggil flawfinder untuk membuat daftar hit, dan ada dua cara untuk
melakukan hal ini. Cara pertama adalah memulai flawfinder terlebih dahulu, dan kemudian (menggunakan outputnya) memanggil
vim. Cara kedua adalah memulai (atau terus menjalankan) vim, dan kemudian memanggil flawfinder
(biasanya dari dalam vim).

Untuk cara pertama, jalankan flawfinder dan simpan outputnya di beberapa FLAWFILE (katakanlah "flawfile"),
kemudian panggil vim menggunakan opsi -q-nya, seperti ini: "vim -q flawfile". Cara kedua
(memulai flawfinder setelah memulai vim) dapat dilakukan dengan banyak cara. Salah satunya adalah untuk memohon
flawfinder menggunakan perintah shell, ":!flawfinder-command > FLAWFILE", lalu ikuti dengan
perintah ":cf FLAWFILE". Cara lain adalah dengan menyimpan perintah flawfinder di
makefile (seperti, katakanlah, perintah semu seperti "flaw"), dan kemudian jalankan ":make flaw".

Dalam semua kasus ini, Anda memerlukan perintah untuk menjalankan flawfinder. Perintah yang masuk akal, yang
menempatkan setiap hit di barisnya sendiri (-S) dan menghapus header dan footer yang akan membingungkan
ini:

pencari kesalahan -SQD .

Anda sekarang dapat menggunakan berbagai perintah pengeditan untuk melihat hasilnya. Perintah ":cn" ditampilkan
pukulan berikutnya; ":cN" menampilkan hit sebelumnya, dan ":cr" memundurkan kembali ke hit pertama.
":copen" akan membuka jendela untuk menampilkan daftar hit saat ini, yang disebut "perbaikan cepat
window"; ":cclose" akan menutup jendela quickfix. Jika buffer di jendela yang digunakan memiliki
diubah, dan kesalahan ada di file lain, melompat ke kesalahan akan gagal. Kamu harus
pastikan jendela berisi buffer yang dapat ditinggalkan sebelum mencoba melompat ke a
file baru, katakan dengan menyimpan file; ini mencegah kehilangan data yang tidak disengaja.

Memohon dari emacs
Editor teks / emacs sistem operasi menyertakan "mode grep" dan "mode kompilasi"
mekanisme yang bekerja dengan baik dengan flawfinder, memudahkan untuk melihat pesan peringatan, melompat
ke kode sumber yang relevan, dan perbaiki masalah yang Anda temukan.

Pertama, Anda perlu memanggil flawfinder untuk membuat daftar pesan peringatan. Anda dapat gunakan
"grep mode" atau "compile mode" untuk membuat daftar ini. Seringkali "mode grep" lebih nyaman;
itu membiarkan mode kompilasi tidak tersentuh sehingga Anda dapat dengan mudah mengkompilasi ulang setelah Anda mengubahnya
sesuatu. Namun, jika Anda ingin melompat ke posisi kolom yang tepat dari hit, kompilasi
mode mungkin lebih nyaman karena emacs dapat menggunakan output kolom dari flawfinder untuk
langsung melompat ke lokasi yang tepat tanpa konfigurasi khusus.

Untuk menggunakan mode grep, masukkan perintah "Mx grep" lalu masukkan flawfinder yang diperlukan
memerintah. Untuk menggunakan mode kompilasi, masukkan perintah "Mx compile" dan masukkan yang diperlukan
perintah pencari kesalahan. Ini adalah perintah meta-key, jadi Anda harus menggunakan kunci meta untuk
keyboard Anda (biasanya ini adalah tombol ESC). Seperti semua perintah emacs, Anda harus
tekan RETURN setelah mengetik "grep" atau "compile". Jadi pada banyak sistem, mode grep adalah
dipanggil dengan mengetik ESC xgrep RETURN.

Anda kemudian perlu memasukkan perintah, menghapus apa pun yang ada sebelumnya jika perlu. A
perintah yang masuk akal adalah:

pencari kesalahan -SQDC .

Perintah ini membuat setiap laporan klik menjadi satu baris, yang jauh lebih mudah bagi alat untuk
menangani. Opsi senyap dan hanya data menghapus informasi status lain yang tidak diperlukan untuk
gunakan di dalam emacs. Periode akhir berarti bahwa direktori saat ini dan semua
keturunan dicari untuk kode C/C++, dan dianalisis untuk kekurangannya.

Setelah Anda memanggil flawfinder, Anda dapat menggunakan emacs untuk melompat-lompat dalam hasilnya. NS
perintah Cx ` (Control-x backtick) mengunjungi lokasi kode sumber untuk peringatan berikutnya
pesan. Cu Cx ` (control-u control-x backtick) dimulai ulang dari awal. Kamu bisa
kunjungi sumber untuk pesan kesalahan tertentu dengan pindah ke pesan hit itu di
*compile* buffer atau *grep* buffer dan mengetikkan kunci kembali. (Catatan teknis: dalam
buffer kompilasi, ini memanggil compile-goto-error.) Anda juga dapat mengklik Mouse-2
tombol pada pesan kesalahan (Anda tidak perlu beralih ke buffer * kompilasi * terlebih dahulu).

Jika Anda ingin menggunakan mode grep untuk melompat ke kolom hit tertentu, Anda harus
konfigurasikan emacs secara khusus untuk melakukan ini. Untuk melakukan ini, ubah variabel emacs "grep-regexp-
alist". Variabel ini memberi tahu Emacs cara mengurai output dari perintah "grep", mirip dengan
variabel "compilation-error-regexp-alist" yang mencantumkan berbagai format kesalahan kompilasi
pesan.

Memohon dari Integrado Pengembangan Lingkungan (IDE)
Untuk IDE (lainnya), lihat set plug-in IDE Anda.

UMUM KELEMAHAN ENUMERASI (CWE)


Common Weakness Enumeration (CWE) adalah ``daftar formal atau kamus perangkat lunak umum
kelemahan yang dapat terjadi pada arsitektur, desain, kode, atau implementasi perangkat lunak yang
dapat menyebabkan kerentanan keamanan yang dapat dieksploitasi... dibuat untuk digunakan sebagai bahasa umum
untuk menggambarkan kelemahan keamanan perangkat lunak'' (http://cwe.mitre.org/about/faq.html). Untuk
informasi lebih lanjut tentang CWE, lihat http://cwe.mitre.org.

Flawfinder mendukung CWE dan secara resmi Kompatibel dengan CWE. Deskripsi hit biasanya
sertakan pengenal Common Weakness Enumeration (CWE) yang relevan dalam tanda kurung jika ada
dikenal sebagai CWE yang relevan. Misalnya, banyak hit terkait buffer menyebutkan
CWE-120, pengidentifikasi CWE untuk ``salinan buffer tanpa memeriksa ukuran input'' (alias
`` Luapan Buffer Klasik''). Dalam beberapa kasus, lebih dari satu pengidentifikasi CWE dapat dicantumkan.
Laporan HTML juga menyertakan tautan hypertext ke definisi CWE yang dihosting di MITRE. Di dalam
dengan cara ini, flawfinder dirancang untuk memenuhi persyaratan CWE-Output.

Banyak CWE yang dilaporkan oleh flawfinder diidentifikasi dalam daftar 25 teratas CWE/SANS 2011
(http://cwe.mitre.org/top25/). Banyak orang ingin mencari CWE dalam daftar ini,
seperti CWE-120 (buffer overflow klasik), Ketika flawfinder memetakan ke CWE yang lebih
umum daripada 25 item teratas, ini mencantumkannya sebagai lebih umum: lebih spesifik (mis.
CWE-119:CWE-120), di mana yang lebih umum adalah pemetaan sebenarnya. Jika flawfinder memetakan ke lebih banyak
item CWE spesifik yang merupakan kasus spesifik dari 25 item teratas, tercantum dalam formulir
top-25/lebih spesifik (misalnya, CWE-362/CWE-367), di mana pemetaan sebenarnya lebih spesifik
entri CWE. Jika entri yang sama dipetakan ke beberapa CWE, CWE dipisahkan dengan koma
(ini sering terjadi dengan CWE-20, Validasi Input yang Tidak Tepat). Ini menyederhanakan pencarian untuk
CWE tertentu.

CWE versi 2.7 (dirilis 23 Juni 2014) digunakan untuk pemetaan. CWE saat ini
pemetaan memilih CWE paling spesifik yang dapat ditentukan oleh alat. Secara teori, sebagian besar CWE
elemen keamanan (tanda tangan/pola yang dicari oleh alat) secara teoritis dapat menjadi
dipetakan ke CWE-676 (Penggunaan Fungsi yang Berpotensi Berbahaya), tetapi pemetaan seperti itu tidak akan
berguna. Dengan demikian, pemetaan yang lebih spesifik lebih disukai di tempat yang dapat ditemukan. penemu cacat
adalah alat analisis leksikal; akibatnya, tidak praktis untuk lebih spesifik daripada
pemetaan yang diterapkan saat ini. Ini juga berarti bahwa tidak mungkin membutuhkan banyak
memperbarui untuk mata uang peta; itu tidak memiliki informasi yang cukup untuk disempurnakan menjadi
tingkat CWE terperinci yang biasanya dipengaruhi oleh perubahan CWE. Daftar pengidentifikasi CWE
dihasilkan secara otomatis menggunakan "make show-cwes", jadi ada keyakinan bahwa daftar ini
benar. Silakan laporkan masalah pemetaan CWE sebagai bug jika Anda menemukannya.

Flawfinder mungkin gagal menemukan kerentanan, bahkan jika flawfinder mencakup salah satu dari CWE ini
kelemahan. Yang mengatakan, flawfinder memang menemukan kerentanan yang terdaftar oleh CWE yang dicakupnya,
dan itu tidak akan melaporkan baris tanpa kerentanan tersebut dalam banyak kasus. Jadi, sebagai
diperlukan untuk alat apa pun yang ingin kompatibel dengan CWE, flawfinder memiliki tingkat kesalahan
positif kurang dari 100% dan tingkat negatif palsu kurang dari 100%. Pencari cacat hampir
selalu melaporkan setiap kali menemukan kecocokan dengan elemen keamanan CWE (tanda tangan/pola sebagai
didefinisikan dalam basis datanya), meskipun konstruksi tertentu yang tidak jelas dapat menyebabkannya gagal (lihat BUGS
bawah).

Flawfinder dapat melaporkan CWE berikut (ini adalah CWE yang dicakup oleh flawfinder;
``*'' menandai daftar 25 teratas CWE/SANS):

· CWE-20: Validasi Input yang Tidak Tepat

· CWE-22: Batasan Nama Path yang Tidak Tepat ke Direktori Terbatas (``Path Traversal'')

· CWE-78: Netralisasi yang Tidak Tepat dari Elemen Khusus yang digunakan dalam Perintah OS (``OS Command
Injeksi'')*

· CWE-119: Pembatasan Operasi yang Tidak Tepat dalam Batas Buffer Memori (a
induk dari CWE-120*, jadi ini ditampilkan sebagai CWE-119:CWE-120)

· CWE-120: Penyalinan Penyangga tanpa Memeriksa Ukuran Masukan (``Melimpah Buffer Klasik'')*

· CWE-126: Buffer Over-baca

· CWE-134: String Format Tidak Terkendali*

· CWE-190: Integer Overflow atau Wraparound*

· CWE-250: Eksekusi dengan Hak Istimewa yang Tidak Perlu

· CWE-327: Penggunaan Algoritma Kriptografi Rusak atau Berisiko*

· CWE-362: Eksekusi Bersamaan menggunakan Sumber Daya Bersama dengan Sinkronisasi yang Tidak Tepat
(``Kondisi Balapan'')

· CWE-377: File Sementara Tidak Aman

· CWE-676: Penggunaan Fungsi yang Berpotensi Berbahaya*

· CWE-732: Penetapan Izin Salah untuk Sumber Daya Kritis*

· CWE-785: Penggunaan Fungsi Manipulasi Jalur tanpa Buffer berukuran Maksimum (anak dari
CWE-120*, jadi ini ditampilkan sebagai CWE-120/CWE-785)

· CWE-807: Ketergantungan pada Input yang Tidak Tepercaya dalam Keputusan Keamanan*

· CWE-829: Penyertaan Fungsi dari Lingkup Kontrol Tidak Tepercaya*

Anda dapat memilih subset tertentu dari CWE untuk dilaporkan dengan menggunakan opsi ``--regex'' (-e).
Opsi ini menerima ekspresi reguler, sehingga Anda dapat memilih beberapa CWE, misalnya, ``--regex
"CWE-120|CWE-126"''. Jika Anda memilih beberapa CWE dengan ``|'' pada baris perintah, Anda akan
biasanya perlu mengutip parameter (karena ``|'' yang tidak dikutip adalah simbol pipa).
Flawfinder dirancang untuk memenuhi persyaratan CWE-Searchable.

Jika tujuan Anda adalah untuk melaporkan subset CWE yang terdaftar dalam file, itu dapat dicapai
pada sistem mirip Unix menggunakan opsi ``--regex'' alias ``-e''. File harus dalam
format ekspresi reguler. Misalnya, ``flawfinder -e $(cat file1)'' hanya akan melaporkan
klik yang cocok dengan pola di ``file1''. Jika file1 berisi ``CWE-120|CWE-126'' itu
hanya akan melaporkan klik yang cocok dengan CWE tersebut.

Daftar semua elemen keamanan CWE (tanda tangan/pola yang dicari flawfinder)
dapat ditemukan dengan menggunakan opsi ``--listrules''. Setiap baris mencantumkan token tanda tangan
(biasanya nama fungsi) yang dapat menghasilkan klik, tingkat risiko default, dan
peringatan default (yang mencakup pengenal CWE default). Untuk sebagian besar tujuan ini adalah
juga cukup jika Anda ingin melihat elemen keamanan CWE apa yang dipetakan ke CWE mana, atau
membalikkan. Misalnya, untuk melihat sebagian besar tanda tangan (nama fungsi) yang dipetakan ke
CWE-327, tanpa melihat tingkat risiko default atau teks peringatan terperinci, jalankan ``flawfinder
--listrules | grep CWE-327 | potong -f1''. Anda juga dapat melihat token tanpa pemetaan CWE
cara ini dengan menjalankan ``flawfinder -D --listrules | grep -v CWE-''. Namun, sementara
--listrules mencantumkan semua elemen keamanan CWE, hanya mencantumkan pemetaan default dari CWE
elemen keamanan ke pengidentifikasi CWE. Itu tidak termasuk penyempurnaan yang flawfinder
berlaku (misalnya, dengan memeriksa parameter fungsi).

Jika Anda menginginkan pemetaan yang terperinci dan tepat antara elemen keamanan CWE dan CWE
pengidentifikasi, kode sumber flawfinder (termasuk dalam distribusi) adalah tempat terbaik
untuk informasi itu. Informasi terperinci ini terutama menarik bagi segelintir orang itu
orang yang mencoba menyempurnakan pemetaan CWE dari flawfinder atau menyempurnakan CWE secara umum.
Kode sumber mendokumentasikan pemetaan antara elemen keamanan ke masing-masing CWE
pengenal, dan merupakan file Python tunggal. Dataset ``c_rules'' mendefinisikan sebagian besar aturan,
dengan mengacu pada fungsi yang dapat membuat penyempurnaan lebih lanjut. Anda dapat mencari
dataset untuk nama fungsi untuk melihat CWE apa yang dihasilkannya secara default; jika parameter pertama adalah
bukan ``normal'' maka itu adalah nama metode pemurnian Python yang dapat memilih yang berbeda
CWE (tergantung pada informasi tambahan). Sebaliknya, Anda dapat mencari ``CWE-number''
dan temukan elemen keamanan (tanda tangan atau pola) yang merujuk pada pengenal CWE tersebut.
Bagi kebanyakan orang, ini lebih dari yang mereka butuhkan; kebanyakan orang hanya ingin memindai mereka
kode sumber untuk menemukan masalah dengan cepat.

KEAMANAN


Inti dari alat ini adalah untuk membantu menemukan kerentanan sehingga dapat diperbaiki.
Namun, pengembang dan pengulas harus tahu cara mengembangkan perangkat lunak yang aman untuk menggunakan ini
alat, karena jika tidak, a menipu dengan a alat is masih a menipu. Buku saya di
http://www.dwheeler.com/secure-programs mungkin membantu.

Alat ini harus, paling banyak, merupakan bagian kecil dari proses pengembangan perangkat lunak yang lebih besar
dirancang untuk menghilangkan atau mengurangi dampak kerentanan. Pengembang dan pengulas
perlu mengetahui cara mengembangkan perangkat lunak yang aman, dan mereka perlu menerapkan pengetahuan ini untuk mengurangi
risiko kerentanan di tempat pertama.

Alat pencari kerentanan yang berbeda cenderung menemukan kerentanan yang berbeda. Jadi, kamu
sebaiknya menggunakan tinjauan manusia dan berbagai alat. Alat ini dapat membantu menemukan beberapa
kerentanan, tetapi tidak berarti semua.

Anda harus selalu menganalisis salinan dari program sumber yang dianalisis, bukan direktori
yang dapat dimodifikasi oleh pengembang saat flawfinder melakukan analisis. Ini adalah
terutama benar jika Anda tidak perlu memercayai pengembang program yang sedang dianalisis.
Jika penyerang memiliki kendali atas file saat Anda menganalisisnya, penyerang dapat
memindahkan file atau mengubah isinya untuk mencegah paparan masalah keamanan
(atau menciptakan kesan masalah yang sebenarnya tidak ada). Jika Anda khawatir tentang
pemrogram jahat Anda harus tetap melakukan ini, karena setelah analisis Anda harus
verifikasi bahwa kode yang akhirnya dijalankan adalah kode yang Anda analisis. Juga, jangan gunakan
--allowlink opsi dalam kasus seperti itu; penyerang dapat membuat tautan simbolis berbahaya ke file
di luar area kode sumber mereka (seperti / etc / passwd).

Sistem manajemen kode sumber (seperti SourceForge dan Savannah) pasti termasuk dalam ini
kategori; jika Anda memelihara salah satu sistem tersebut, salin atau ekstrak file terlebih dahulu ke dalam
direktori terpisah (yang tidak dapat dikendalikan oleh penyerang) sebelum menjalankan flawfinder atau
alat analisis kode lainnya.

Perhatikan bahwa flawfinder hanya membuka file biasa, direktori, dan (jika diminta) simbolis
link; itu tidak akan pernah membuka jenis file lain, bahkan jika tautan simbolis dibuat untuk mereka.
Ini melawan penyerang yang memasukkan jenis file yang tidak biasa ke dalam kode sumber. Namun, ini
hanya berfungsi jika sistem file yang dianalisis tidak dapat dimodifikasi oleh penyerang selama
analisis, seperti yang direkomendasikan di atas. Perlindungan ini juga tidak berfungsi pada platform Cygwin,
sayangnya.

Sistem Cygwin (emulasi Unix di atas Windows) memiliki masalah tambahan jika flawfinder
digunakan untuk menganalisis program yang tidak dapat dipercaya oleh analis. Masalahnya adalah karena desain
cacat di Windows (yang diwarisi dari MS-DOS). Pada Windows dan MS-DOS, nama file tertentu
(misalnya, ``com1'') secara otomatis diperlakukan oleh sistem operasi sebagai nama
periferal, dan ini benar bahkan ketika nama path lengkap diberikan. Ya, Windows dan MS-DOS
benar-benar dirancang seburuk ini. Flawfinder menangani ini dengan memeriksa apa itu sistem file
objek, dan kemudian hanya membuka direktori dan file biasa (dan symlink jika diaktifkan).
Sayangnya, ini tidak bekerja di Cygwin; pada setidaknya beberapa versi Cygwin pada beberapa
versi Windows, hanya mencoba menentukan apakah file adalah jenis perangkat dapat menyebabkan
program untuk digantung. Solusinya adalah menghapus atau mengganti nama file apa pun yang ditafsirkan
sebagai nama perangkat sebelum melakukan analisis. Yang disebut ``nama yang dicadangkan'' ini adalah
CON, PRN, AUX, CLOCK$, NUL, COM1-COM9, dan LPT1-LPT9, opsional diikuti dengan ekstensi
(misalnya, ``com1.txt''), di direktori mana pun, dan dalam kasus apa pun (Windows tidak peka huruf besar-kecil).

Do tidak memuat atau membedakan daftar hit dari sumber yang tidak tepercaya. Mereka diimplementasikan menggunakan
Modul acar Python, dan modul acar tidak dimaksudkan untuk aman dari kesalahan
atau data yang dibuat dengan jahat. Daftar hit yang disimpan dimaksudkan untuk digunakan nanti oleh yang sama
pengguna yang membuat daftar sasaran; dalam konteks itu pembatasan ini tidak menjadi masalah.

Gunakan flawfinder online menggunakan layanan onworks.net


Server & Workstation Gratis

Unduh aplikasi Windows & Linux

  • 1
    Phaser
    Phaser
    Phaser adalah pembukaan yang cepat, gratis, dan menyenangkan
    kerangka kerja game HTML5 sumber yang menawarkan
    Rendering WebGL dan Canvas di seluruh
    browser web desktop dan seluler. permainan
    bisa bersama...
    Unduh Phaser.dll
  • 2
    Mesin VASSAL
    Mesin VASSAL
    VASSAL adalah mesin permainan untuk membuat
    versi elektronik dari papan tradisional
    dan permainan kartu. Ini memberikan dukungan untuk
    rendering dan interaksi potongan game,
    dan ...
    Unduh Mesin VASSAL
  • 3
    OpenPDF - Garpu iText
    OpenPDF - Garpu iText
    OpenPDF adalah perpustakaan Java untuk membuat
    dan mengedit file PDF dengan LGPL dan
    Lisensi sumber terbuka MPL. OpenPDF adalah
    LGPL/MPL penerus sumber terbuka iText,
    Sebuah...
    Unduh OpenPDF - Garpu iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - Sistem untuk Otomatis
    Analisis Geoscientific - adalah Geografis
    Perangkat lunak Sistem Informasi (GIS) dengan
    kemampuan luar biasa untuk geodata
    pengolahan dan ...
    Unduh SAGA GIS
  • 5
    Toolbox untuk Java/JTOpen
    Toolbox untuk Java/JTOpen
    Toolbox IBM untuk Java / JTOpen adalah a
    perpustakaan kelas Java mendukung
    client/server dan pemrograman internet
    model ke sistem yang menjalankan OS/400,
    i5/OS, atau...
    Unduh Toolbox untuk Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (atau D3 untuk Dokumen Berbasis Data)
    adalah perpustakaan JavaScript yang memungkinkan Anda
    untuk menghasilkan data yang dinamis dan interaktif
    visualisasi di browser web. Dengan D3
    kamu...
    Unduh D3.js
  • Lebih banyak lagi »

Perintah Linux

Ad