EnglishFrenchSpanyol

Ad


Favicon OnWorks

pencari cela - Dalam talian di Awan

Jalankan pencari cacat dalam penyedia pengehosan percuma OnWorks melalui Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS

Ini ialah pencari cacat perintah yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.

JADUAL:

NAMA


flawfinder - secara leksikal mencari kelemahan keselamatan yang berpotensi ("hits") dalam kod sumber

SINOPSIS


pencari cela [- membantu|-h] [--versi] [--listrules]
[--allowlink] [--followdotdir] [--nolink]
[--tampalan=nama fail|-P nama fail]
[--input|-I] [ --minlevel=X | -m X ] [--positif palsu|-F]
[--jangan abaikan|-n]
[--regex=CORAK | -e CORAK]
[--konteks|-c] [--lajur|-C] [--dataonly|-D] [--html|-H] [--segera|-i]
[--talian tunggal|-S] [--omittime] [--senyap|-Q]
[--loadhitlist=F] [--savehitlist=F] [--diffhitlist=F]
[--] [ sumber kod fail or sumber akar direktori ]+

DESCRIPTION


Flawfinder mencari melalui kod sumber C/C++ mencari kemungkinan kecacatan keselamatan. Kepada
jalankan flawfinder, hanya berikan flawfinder senarai direktori atau fail. Untuk setiap direktori
diberikan, semua fail yang mempunyai sambungan nama fail C/C++ dalam direktori itu (dan failnya
subdirektori, secara rekursif) akan diperiksa. Oleh itu, untuk kebanyakan projek, berikan sahaja
pencari cacat nama direktori paling atas kod sumber (gunakan ``.'' untuk arus
direktori), dan pencari cela akan memeriksa semua kod sumber C/C++ projek. Jika awak
hanya mahu memiliki perubahan disemak, simpan perbezaan bersatu bagi perubahan tersebut (dicipta oleh GNU
"diff -u" atau "svn diff" atau "git diff") dalam fail tampalan dan gunakan pilihan --patch (-P).

Flawfinder akan menghasilkan senarai ``hits'' (kepincangan keselamatan yang berpotensi), disusun mengikut risiko; yang
hits paling berisiko ditunjukkan dahulu. Tahap risiko ditunjukkan di dalam kurungan segi empat sama dan berbeza-beza
daripada 0, risiko yang sangat kecil, kepada 5, risiko yang besar. Tahap risiko ini bukan sahaja bergantung pada
fungsi, tetapi pada nilai parameter fungsi. Sebagai contoh, tetap
rentetan selalunya kurang berisiko daripada rentetan berubah sepenuhnya dalam banyak konteks, dan dalam konteks tersebut
konteks hit akan mempunyai tahap risiko yang lebih rendah. Flawfinder tahu tentang gettext (a common
perpustakaan untuk program antarabangsa) dan akan merawat rentetan berterusan yang dilalui
gettext seolah-olah ia adalah rentetan berterusan; ini mengurangkan bilangan hentaman palsu
program antarabangsa. Flawfinder akan melakukan perkara yang sama dengan _T() dan
_TEXT(), makro Microsoft biasa untuk mengendalikan program antarabangsa. Pencari cela
mengabaikan kebanyakan teks dalam ulasan dan rentetan dengan betul. Biasanya pencari cacat menunjukkan semua
hits dengan tahap risiko sekurang-kurangnya 1, tetapi anda boleh menggunakan pilihan --minlevel untuk menunjukkan sahaja
hits dengan tahap risiko yang lebih tinggi jika anda mahu. Perihalan hit juga ambil perhatian Biasa yang berkaitan
Pengecam Weakness Enumeration (CWE) dalam kurungan, seperti yang dibincangkan di bawah. Pencari cela
secara rasminya Serasi CWE.

Bukan setiap pukulan sebenarnya adalah kelemahan keselamatan, dan bukan setiap kelemahan keselamatan
sudah semestinya dijumpai. Namun begitu, pencari cela boleh menjadi bantuan dalam mencari dan mengalih keluar
kelemahan keselamatan. Cara biasa untuk menggunakan pencari cela adalah dengan menggunakan pencari cela terlebih dahulu
satu set kod sumber dan periksa item berisiko tinggi. Kemudian, gunakan --inputs untuk memeriksa
lokasi input, dan semak untuk memastikan bahawa hanya nilai input yang sah dan selamat
diterima daripada pengguna yang tidak dipercayai.

Sebaik sahaja anda telah mengaudit program, anda boleh menandakan baris kod sumber yang sebenarnya baik tetapi
menyebabkan amaran palsu supaya pencari kecacatan akan berhenti mengadu tentangnya. Untuk menandakan a
baris supaya amaran ini dihalang, letakkan komen berformat khas sama ada pada
baris yang sama (selepas kod sumber) atau semuanya dengan sendirinya dalam baris sebelumnya. Komen itu
mesti mempunyai salah satu daripada dua format berikut:

· // Pencari Cela: abaikan

· /* Pencari Cela: abaikan */

Demi keserasian, anda boleh menggantikan "Flawfinder:" dengan "ITS4:" atau "RATS:" dalam ini
komen berformat khas. Memandangkan ada kemungkinan baris tersebut salah, anda boleh gunakan
pilihan --neverignore, yang menyebabkan pencari cacat tidak akan mengabaikan sebarang baris walau apa pun
arahan komen berkata (lebih mengelirukan, --neverignore mengabaikan abaikan).

Flawfinder menggunakan pangkalan data dalaman yang dipanggil ``ruleset''; set peraturan mengenal pasti
fungsi yang menjadi punca biasa kecacatan keselamatan. Set peraturan standard termasuk yang besar
bilangan masalah berpotensi yang berbeza, termasuk kedua-dua isu umum yang boleh memberi kesan kepada mana-mana
Program C/C++, serta beberapa fungsi seperti Unix dan Windows tertentu yang
terutama bermasalah. Pilihan --listrules melaporkan senarai peraturan semasa dan
tahap risiko lalai mereka. Seperti yang dinyatakan di atas, setiap kecacatan keselamatan yang berpotensi ditemui dalam sesuatu yang diberikan
fail kod sumber (berpadanan dengan entri dalam set peraturan) dipanggil ``hit,'' dan set
hits yang ditemui semasa menjalankan program tertentu dipanggil ``senarai hit.'' Hitlists
boleh disimpan (menggunakan --savehitlist), dimuat semula untuk paparan semula (menggunakan --loadhitlist), dan
anda boleh menunjukkan hanya hits yang berbeza daripada larian lain (menggunakan --diffhitlist).

Flawfinder ialah alat mudah, yang membawa kepada beberapa kebaikan dan keburukan asas. Flawfinder berfungsi
dengan melakukan tokenisasi leksikal mudah (melangkau komen dan menandai rentetan dengan betul),
mencari padanan token ke pangkalan data (terutamanya untuk mencari panggilan fungsi).
Oleh itu, Flawfinder adalah serupa dengan RATS dan ITS4, yang juga menggunakan tokenisasi leksikal mudah.
Flawfinder kemudian memeriksa teks parameter fungsi untuk menganggarkan risiko. Tidak seperti
alatan seperti splint, bendera amaran gcc dan clang, flawfinder berfungsi tidak menggunakan atau mempunyai
akses kepada maklumat tentang aliran kawalan, aliran data atau jenis data semasa mencari
potensi kelemahan atau menganggar tahap risiko. Oleh itu, pencari cacat akan
semestinya menghasilkan banyak positif palsu untuk kelemahan dan gagal melaporkan banyak
kelemahan. Sebaliknya, pencari cacat boleh mencari kelemahan dalam program yang
tidak boleh dibina atau tidak boleh dipautkan. Ia selalunya boleh berfungsi dengan program yang tidak boleh
disusun (sekurang-kurangnya oleh alat penyemak). Flawfinder juga tidak begitu keliru
takrifan makro dan keanehan lain yang mempunyai masalah dengan alatan yang lebih canggih.
Flawfinder juga boleh berguna sebagai pengenalan ringkas kepada alat analisis statik dalam
umum, kerana ia mudah untuk mula digunakan dan mudah difahami.

Mana-mana nama fail yang diberikan pada baris arahan akan diperiksa (walaupun ia tidak mempunyai fail biasa
Sambungan nama fail C/C++); oleh itu anda boleh memaksa pencari cacat untuk memeriksa mana-mana fail khusus anda
keinginan. Semasa mencari direktori secara rekursif, pencari cacat hanya membuka dan memeriksa
fail biasa yang mempunyai sambungan nama fail C/C++. Flawfinder menganggap bahawa fail adalah
Fail C/C++ jika ia mempunyai sambungan ".c", ".h", ".ec", ".ecp", ".pgc", ".C", ".cpp",
".CPP", ".cxx", ".cc", ".CC", ".pcc", ".hpp", atau ".H". Nama fail ``-'' bermaksud
input standard. Untuk mengelakkan masalah keselamatan, fail khas (seperti fail khas peranti
dan paip bernama) sentiasa dilangkau, dan secara lalai pautan simbolik dilangkau (the
--pilihan allowlink mengikuti pautan simbolik).

Selepas senarai hits ialah ringkasan ringkas keputusan (gunakan -D untuk mengalih keluar ini
maklumat). Ia akan menunjukkan bilangan hits, baris yang dianalisis (seperti yang dilaporkan oleh wc -l), dan
baris sumber fizikal kod (SLOC) dianalisis. SLOC fizikal ialah bukan kosong, bukan-
baris komen. Ia kemudian akan menunjukkan bilangan hits pada setiap peringkat; ambil perhatian bahawa akan ada
jangan sekali-kali menjadi hit pada tahap yang lebih rendah daripada tahap min (1 secara lalai). Oleh itu, "[0] 0 [1] 9"
bermakna pada tahap 0 terdapat 0 hits dilaporkan, dan pada tahap 1 terdapat 9 hits
dilaporkan. Ia seterusnya akan menunjukkan bilangan hits pada tahap tertentu atau lebih besar (jadi tahap 3+
mempunyai jumlah bilangan hits pada tahap 3, 4, dan 5). Oleh itu, entri "[0+] 37"
menunjukkan bahawa pada tahap 0 atau lebih tinggi terdapat 37 hits (entri 0+ akan sentiasa sama
sebagai nombor "hits" di atas). Hit setiap KSLOC ditunjukkan seterusnya; ini adalah setiap satu daripada "peringkat atau
lebih tinggi" didarab dengan 1000 dan dibahagikan dengan SLOC fizikal. Jika pautan sym
dilangkau, kiraan mereka dilaporkan. Jika hits telah dihalang (menggunakan "abaikan"
arahan dalam komen kod sumber seperti yang diterangkan di atas), nombor yang ditindas dilaporkan.
Tahap risiko minimum untuk dimasukkan ke dalam laporan dipaparkan; secara lalai ini ialah 1
(gunakan --minlevel untuk menukar ini). Ringkasan berakhir dengan peringatan penting: Bukan setiap pukulan
semestinya merupakan kelemahan keselamatan, dan mungkin terdapat kelemahan keselamatan yang lain
tidak dilaporkan oleh alat.

Flawfinder dikeluarkan di bawah lesen GNU GPL versi 2 atau lebih baru (GPLv2+).

Flawfinder berfungsi sama dengan program lain, ITS4, yang bukan sumber terbuka sepenuhnya
perisian (seperti yang ditakrifkan dalam Definisi Sumber Terbuka) atau perisian percuma (seperti yang ditakrifkan oleh
Yayasan Perisian Percuma). Pengarang Flawfinder tidak pernah melihat kod sumber ITS4.

CEPAT TUTORIAL


Berikut ialah contoh ringkas tentang cara pencari cela boleh digunakan. Bayangkan anda mempunyai C/C++
kod sumber untuk beberapa program bernama xyzzy (yang mungkin anda tulis atau tidak), dan
anda sedang mencari kelemahan keselamatan (supaya anda boleh membetulkannya sebelum pelanggan
menghadapi kelemahan). Untuk tutorial ini, saya akan menganggap bahawa anda menggunakan Unix-
seperti sistem, seperti Linux, OpenBSD atau MacOS X.

Jika kod sumber berada dalam subdirektori bernama xyzzy, anda mungkin akan bermula dengan membuka a
tetingkap teks dan menggunakan tetapan lalai flawfinder, untuk menganalisis program dan melaporkan a
senarai keutamaan potensi kelemahan keselamatan (``kurang'' hanya memastikan bahawa
keputusan kekal pada skrin):
pencari cela xyzzy | kurang

Pada ketika ini, anda akan melihat sejumlah besar penyertaan. Setiap entri mempunyai nama fail, a
titik bertindih, nombor baris, tahap risiko dalam kurungan (di mana 5 adalah paling berisiko), kategori,
nama fungsi dan penerangan tentang sebab pencari cacat berpendapat bahawa baris itu ialah a
kelemahan. Flawfinder biasanya mengisih mengikut tahap risiko, menunjukkan item yang paling berisiko dahulu;
jika anda mempunyai masa yang terhad, mungkin lebih baik untuk mula bekerja pada item yang paling berisiko dan
teruskan sehingga anda kehabisan masa. Jika anda ingin mengehadkan paparan kepada risiko dengan hanya a
tahap risiko tertentu atau lebih tinggi, gunakan pilihan --minlevel. Jika anda mendapat
bilangan positif palsu yang luar biasa kerana nama pembolehubah kelihatan seperti berbahaya
nama fungsi, gunakan pilihan -F untuk mengalih keluar laporan tentangnya. Kalau tak faham
mesej ralat, sila lihat dokumen seperti Penulisan Selamat Program Untuk Linux and
Unix BAGAIMANA UNTUKhttp://www.dwheeler.com/secure-programs⟩ pada http://www.dwheeler.com/secure-
program yang menyediakan lebih banyak maklumat tentang menulis program selamat.

Sebaik sahaja anda mengenal pasti masalah dan memahaminya, anda boleh membetulkannya. Sesekali boleh
nak buat analisis semula, kedua-duanya kerana nombor baris akan berubah and memastikan
bahawa kod baharu itu belum lagi memperkenalkan kelemahan yang berbeza.

Jika anda telah menentukan bahawa beberapa talian sebenarnya tidak menjadi masalah, dan anda pasti akan perkara itu, anda boleh
sisipkan sebelum atau pada baris yang menyinggung komen seperti
/* Pencari Cela: abaikan */
untuk menghalang mereka daripada muncul dalam output.

Sebaik sahaja anda telah melakukannya, anda harus kembali dan mencari input program, untuk dibuat
pastikan program menapis dengan kuat mana-mana input yang tidak dipercayainya. Flawfinder boleh
mengenal pasti banyak input program dengan menggunakan pilihan --inputs, seperti ini:
pencari cela --masukan xyzzy

Flawfinder boleh berintegrasi dengan baik dengan penyunting teks dan persekitaran pembangunan bersepadu;
lihat contoh untuk maklumat lanjut.

Flawfinder termasuk banyak pilihan lain, termasuk pilihan untuk membuat versi HTML
output (berguna untuk paparan yang lebih cantik). Bahagian seterusnya menerangkan pilihan tersebut dengan lebih lanjut
terperinci.

PILIHAN


Flawfinder mempunyai beberapa pilihan, yang boleh dikumpulkan ke dalam pilihan yang mengawal pilihannya sendiri
dokumentasi, pilih data input, pilih hits untuk dipaparkan, pilih format output,
dan melaksanakan pengurusan senarai hit. Flawfinder menyokong sintaks standard yang ditakrifkan dalam
POSIX (Isu 7, Edisi 2013) bahagian ``Konvensyen Utiliti''. Ia juga menyokong GNU
pilihan panjang (pilihan sempang dua bentuk --pilihan) seperti yang ditakrifkan dalam GNU C Perpustakaan
Rujukan manual ``Konvensyen Sintaks Argumen Program'' dan GNU Pengekodan Piawaian
``Standard untuk Antara Muka Baris Perintah''. Hujah pilihan panjang boleh disediakan sebagai
``--name=value'' atau ``-name value''. Sesetengah pilihan hanya boleh diakses menggunakan lebih banyak
konvensyen pilihan panjang GNU yang boleh dibaca; pilihan biasa juga disokong oleh yang lebih tua
konvensyen pilihan huruf tunggal.

dokumentasi
- membantu

-h Tunjukkan maklumat penggunaan (bantuan).

--versi Menunjukkan (hanya) nombor versi dan keluar.

--listrules Senaraikan terma (token) yang mencetuskan pemeriksaan lanjut, risiko lalainya
tahap, dan amaran lalai (termasuk pengecam CWE), jika
berkenaan), semua tab dipisahkan. Terma-terma itu terutamanya nama-nama yang berpotensi-
fungsi berbahaya. Ambil perhatian bahawa tahap risiko yang dilaporkan dan amaran untuk sesetengah orang
kod tertentu mungkin berbeza daripada kod lalai, bergantung pada bagaimana istilah itu
digunakan. Gabungkan dengan -D jika anda tidak mahu pengepala biasa. Pencari cela
versi 1.29 menukar pemisah daripada ruang kepada tab, dan menambah lalai
medan amaran.

Memilih Input Tarikh
--allowlink Benarkan penggunaan pautan simbolik; biasanya pautan simbolik dilangkau. jangan
gunakan pilihan ini jika anda menganalisis kod oleh orang lain; penyerang boleh melakukan banyak perkara
perkara yang menyebabkan masalah untuk analisis dengan pilihan ini didayakan. Untuk
contoh, penyerang boleh memasukkan pautan simbolik ke fail seperti / etc / passwd
(membocorkan maklumat tentang fail) atau buat gelung bulat, yang akan
menyebabkan flawfinder berjalan ``selamanya''. Satu lagi masalah dengan mendayakan ini
pilihan ialah jika fail yang sama dirujuk beberapa kali menggunakan simbolik
pautan, ia akan dianalisis beberapa kali (dan dengan itu dilaporkan beberapa kali).
Ambil perhatian bahawa pencari cela sudah termasuk beberapa perlindungan terhadap pautan simbolik
kepada jenis fail khas seperti jenis fail peranti (cth, /dev/zero atau
C:\mystuff\com1). Ambil perhatian bahawa untuk flawfinder versi 1.01 dan sebelumnya, ini adalah
lalai.

--followdotdir
Masukkan direktori yang namanya bermula dengan ".". Biasanya direktori sedemikian adalah
diabaikan, kerana mereka biasanya menyertakan data peribadi kawalan versi (seperti
.git/ atau .svn/), konfigurasi dan sebagainya.

--nolink tidak diendahkan. Dari segi sejarah, ini dilumpuhkan berikutan pautan simbolik; tingkah laku ini
kini menjadi lalai.

--tampalan=patchfile

-P patchfile
Periksa fail atau direktori yang dipilih, tetapi hanya laporkan hits dalam baris itu
ditambah atau diubah suai oleh fail tampalan yang diberikan. Fail tampalan mestilah dalam a
format diff bersatu yang diiktiraf (cth, output GNU "diff -u lama baru",
"svn diff", atau "git diff [commit]"). Flawfinder menganggap bahawa tampalan itu mempunyai
telah digunakan pada fail. Fail tampalan juga boleh memasukkan perubahan kepada
fail yang tidak berkaitan (mereka hanya akan diabaikan). Nombor baris yang diberikan dalam
fail patch digunakan untuk menentukan baris mana yang telah diubah, jadi jika anda ada
mengubah suai fail sejak fail tampalan dibuat, jana semula fail tampalan
pertama. Berhati-hati bahawa nama fail fail baharu diberikan dalam fail tampalan
mesti sepadan dengan tepat, termasuk huruf besar/kecil, awalan laluan dan direktori
pemisah (\ vs. /). Hanya format perbezaan bersatu diterima (GNU diff, svn
diff, dan output git diff adalah okay); jika anda mempunyai format yang berbeza, sekali lagi
jana semula dahulu. Hanya hits yang berlaku pada baris yang terhasil, atau
serta-merta di atas dan di bawah mereka, dilaporkan. Pilihan ini membayangkan
--jangan abaikan.

Memilih Hit kepada paparan
--input

-I Tunjukkan hanya fungsi yang memperoleh data dari luar program; ini juga menetapkan
tahap min kepada 0.

--minlevel=X

-m X Tetapkan tahap risiko minimum kepada X untuk dimasukkan dalam senarai hit. Ini boleh dari 0 (``tidak
risiko'') hingga 5 (``risiko maksimum''); lalai ialah 1.

--positif palsu

-F Jangan sertakan hits yang berkemungkinan positif palsu. Pada masa ini, ini bermakna
nama fungsi itu diabaikan jika mereka tidak diikuti oleh "(", dan itu
pengisytiharan tatasusunan aksara tidak diperhatikan. Oleh itu, jika anda telah menggunakan pembolehubah
dinamakan "akses" di mana-mana, ini akan menghapuskan rujukan kepada perkara biasa ini
pembolehubah. Ini bukan lalai, kerana ini juga meningkatkan kemungkinan
kehilangan hits penting; khususnya, nama fungsi dalam #define klausa dan panggilan
melalui penunjuk fungsi akan terlepas.

--jangan abaikan

-n Jangan sekali-kali mengabaikan isu keselamatan, walaupun ia mempunyai arahan ``abaikan'' dalam a
komen.

--regexp=CORAK

-e CORAK
Hanya laporkan hits dengan teks yang sepadan dengan CORAK corak ungkapan biasa.
Contohnya, untuk hanya melaporkan hits yang mengandungi teks "CWE-120", gunakan ``--regex
CWE-120''. Nama bendera pilihan ini adalah sama dengan grep.

Memilih Output format
--lajur

-C Tunjukkan nombor lajur (serta nama fail dan nombor baris) setiap hit;
ini ditunjukkan selepas nombor baris dengan menambahkan titik bertindih dan nombor lajur dalam
baris (aksara pertama dalam baris ialah nombor lajur 1). Ini berguna
untuk editor yang boleh melompat ke lajur tertentu, atau untuk menyepadukan dengan yang lain
alatan (seperti untuk menapis lagi positif palsu).

--konteks

-c Tunjukkan konteks, iaitu, baris yang mempunyai "hit"/potensi kecacatan. Secara lalainya
baris ditunjukkan sejurus selepas amaran.

--dataonly

-D Jangan paparkan pengepala dan pengaki. Gunakan ini bersama-sama dengan --tenang untuk melihat sahaja
data itu sendiri.

--html

-H Formatkan output sebagai HTML dan bukannya sebagai teks ringkas.

--segera

-i Segera paparkan hits (jangan tunggu sehingga tamat sahaja).

--talian tunggal

-S Paparkan sebagai satu baris output teks untuk setiap hit. Berguna untuk berinteraksi
dengan alat kompilasi.

--omittime Tinggalkan maklumat masa. Ini berguna untuk ujian regresi pencari cacat
sendiri, supaya output tidak berbeza-beza bergantung pada berapa lama analisis
mengambil.

--senyap

-Q Jangan paparkan maklumat status (iaitu, fail yang sedang diperiksa) semasa
analisis sedang berjalan.

Senarai hit pengurusan
--savehitlist=F
Simpan semua hits yang terhasil ("senarai hit") ke F.

--loadhitlist=F
Muatkan senarai hit daripada F dan bukannya menganalisis program sumber. Amaran: Lakukan tidak
muatkan senarai hit daripada sumber yang tidak dipercayai (atas sebab keselamatan).

--diffhitlist=F
Tunjukkan hanya hits (dimuatkan atau dianalisis) bukan dalam F. F mungkin dibuat
sebelum ini menggunakan --savehitlist. Amaran: Lakukan tidak senarai hit berbeza daripada tidak dipercayai
sumber (atas sebab keselamatan). Jika pilihan --loadhitlist tidak disediakan,
ini akan menunjukkan hits dalam fail kod sumber yang dianalisis yang tidak
sebelum ini disimpan dalam F. Jika digunakan bersama --loadhitlist, ini akan menunjukkan
hits dalam senarai hit yang dimuatkan bukan dalam F. Algoritma perbezaannya ialah
konservatif; hits hanya dianggap ``sama'' jika mempunyai yang sama
nama fail, nombor baris, kedudukan lajur, nama fungsi dan tahap risiko.

CONTOH


Berikut ialah pelbagai contoh cara menggunakan pencari cela. Contoh pertama menunjukkan pelbagai
pilihan baris arahan mudah. Flawfinder direka untuk berfungsi dengan baik dengan penyunting teks dan
persekitaran pembangunan bersepadu, jadi bahagian seterusnya menunjukkan cara menyepadukan pencari cela
ke dalam vim dan emacs.

Mudah baris perintah pilihan
pencari cela /usr/src/linux-3.16
Periksa semua fail C/C++ dalam direktori /usr/src/linux-3.16 dan semua
subdirektori (secara rekursif), melaporkan semua hits yang ditemui. Secara lalai
flawfinder akan melangkau pautan simbolik dan direktori dengan nama yang bermula dengan
tempoh.

pencari cela --minlevel=4 .
Periksa semua fail C/C++ dalam direktori semasa dan subdirektorinya
(secara rekursif); hanya melaporkan kerentanan tahap 4 dan ke atas (dua tertinggi
tahap risiko).

pencari cela --input mydir
Periksa semua fail C/C++ dalam mydir dan subdirektorinya (secara rekursif), dan
melaporkan fungsi yang mengambil input (supaya anda boleh memastikan ia menapis fail
input dengan sewajarnya).

pencari cela --jangan abaikan mydir
Periksa semua fail C/C++ dalam direktori mydir dan subdirektorinya,
termasuk juga hits yang ditanda kerana mengabaikan dalam komen kod.

pencari cela -QD mydir
Periksa mydir dan laporkan hanya keputusan sebenar (mengalih keluar pengepala dan
pengaki keluaran). Borang ini berguna jika output akan disalurkan ke dalam
alat lain untuk analisis lanjut. -C (--lajur) dan -S (--garis tunggal)
pilihan juga boleh berguna jika anda menyalurkan data ke alat lain.

pencari cela -QDSC mydir
Periksa mydir, hanya melaporkan keputusan sebenar (tiada pengepala atau pengaki). setiap satu
hit dilaporkan pada satu baris, dan nombor lajur dilaporkan. Ini boleh menjadi a
arahan berguna jika anda menyuapkan output flawfinder ke alatan lain.

pencari cela --senyap --html --konteks mydir > hasil.html
Periksa semua fail C/C++ dalam direktori mydir dan subdirektorinya, dan
menghasilkan versi keputusan berformat HTML. Pengurusan kod sumber
sistem (seperti SourceForge dan Savannah) mungkin menggunakan arahan seperti ini.

pencari cela --senyap --savehitlist disimpan.hits *.[ch]
Periksa semua fail .c dan .h dalam direktori semasa. Jangan laporkan pada
status pemprosesan, dan simpan senarai hit yang terhasil (set semua hits) dalam
fail disimpan.hits.

pencari cela --diffhitlist disimpan.hits *.[ch]
Periksa semua fail .c dan .h dalam direktori semasa dan tunjukkan mana-mana hits itu
belum ada dalam fail save.hits. Ini boleh digunakan untuk menunjukkan hanya
kelemahan ``baru'' dalam program yang diubah suai, jika saved.hits dicipta daripada
versi lama program yang sedang dianalisis.

pencari cela --tampalan baru-baru ini.patch .
Periksa direktori semasa secara rekursif, tetapi hanya laporkan baris yang telah
ditukar atau ditambah dalam patchfile yang telah digunakan bernama baru-baru ini.patch.

pencari cela --regex "CWE-120|CWE-126" src /
Periksa direktori src secara rekursif, tetapi hanya melaporkan hits di mana CWE-120 atau
CWE-126 terpakai.

Menyerang dari VIM
Vim editor teks termasuk mekanisme "pembetulan pantas" yang berfungsi dengan baik dengan pencari cacat, jadi
bahawa anda boleh melihat mesej amaran dengan mudah dan melompat ke kod sumber yang berkaitan.

Mula-mula, anda perlu menggunakan pencari cela untuk membuat senarai hits dan terdapat dua cara untuk melakukannya
melakukan ini. Cara pertama ialah memulakan pencari cela dahulu, dan kemudian (menggunakan outputnya) invoke
vim. Cara kedua ialah untuk memulakan (atau terus menjalankan) vim, dan kemudian gunakan pencari cela
(biasanya dari dalam vim).

Untuk cara pertama, jalankan flawfinder dan simpan outputnya dalam beberapa FLAWFILE (katakan "fail cacat"),
kemudian panggil vim menggunakan pilihan -qnya, seperti ini: "vim -q flawfile". Cara kedua
(memulakan pencari cela selepas memulakan vim) boleh dilakukan dengan pelbagai cara. Satu adalah untuk memohon
flawfinder menggunakan perintah shell, ":!flawfinder-command > FLAWFILE", kemudian ikuti dengan
arahan ": cf FLAWFILE". Cara lain ialah menyimpan arahan pencari cela dalam anda
makefile (sebagai, katakan, pseudocommand seperti "cacat"), dan kemudian jalankan ":make flaw".

Dalam semua kes ini, anda memerlukan arahan untuk flawfinder untuk dijalankan. Perintah yang munasabah, yang
meletakkan setiap hit dalam barisnya sendiri (-S) dan mengalih keluar pengepala dan pengaki yang akan mengelirukan
ia adalah:

pencari cela -SQD .

Anda kini boleh menggunakan pelbagai arahan pengeditan untuk melihat hasilnya. Perintah ":cn" dipaparkan
pukulan seterusnya; ":cN" memaparkan hit sebelumnya dan ":cr" berundur kembali ke hit pertama.
":copen" akan membuka tetingkap untuk menunjukkan senarai hits semasa, yang dipanggil "pembetulan pantas
window"; ":cclose" akan menutup tetingkap quickfix. Jika penimbal dalam tetingkap yang digunakan mempunyai
berubah, dan ralat berada dalam fail lain, melompat ke ralat akan gagal. Kamu perlu
pastikan tetingkap mengandungi penimbal yang boleh ditinggalkan sebelum cuba melompat ke a
fail baharu, katakan dengan menyimpan fail; ini menghalang kehilangan data secara tidak sengaja.

Menyerang dari emacs
Penyunting teks / sistem pengendalian emacs termasuk "mod grep" dan "mod kompilasi"
mekanisme yang berfungsi dengan baik dengan pencari cacat, menjadikannya mudah untuk melihat mesej amaran, melompat
kepada kod sumber yang berkaitan dan selesaikan sebarang masalah yang anda temui.

Mula-mula, anda perlu menggunakan pencari cacat untuk membuat senarai mesej amaran. Anda boleh gunakan
"mod grep" atau "mod kompilasi" untuk membuat senarai ini. Selalunya "mod grep" lebih mudah;
ia meninggalkan mod penyusunan tidak disentuh supaya anda boleh menyusun semula dengan mudah setelah anda menukar
sesuatu. Walau bagaimanapun, jika anda ingin melompat ke kedudukan lajur yang tepat untuk hit, susun
mod mungkin lebih mudah kerana emacs boleh menggunakan output lajur flawfinder untuk
terus melompat ke lokasi yang betul tanpa sebarang konfigurasi khas.

Untuk menggunakan mod grep, masukkan arahan "Mx grep" dan kemudian masukkan pencari cela yang diperlukan
perintah. Untuk menggunakan mod penyusunan, masukkan arahan "Mx compile" dan masukkan yang diperlukan
perintah pencari cela. Ini ialah arahan meta-key, jadi anda perlu menggunakan meta key untuk
papan kekunci anda (ini biasanya kekunci ESC). Seperti semua arahan emacs, anda perlu melakukannya
tekan RETURN selepas menaip "grep" atau "compile". Jadi pada banyak sistem, mod grep adalah
dipanggil dengan menaip ESC xgrep RETURN.

Anda kemudiannya perlu memasukkan arahan, mengalih keluar apa sahaja yang ada sebelum ini jika perlu. A
perintah yang munasabah ialah:

pencari cela -SQDC .

Perintah ini menjadikan setiap laporan hit satu baris, yang lebih mudah untuk alat
mengendalikan. Pilihan senyap dan data sahaja mengalih keluar maklumat status lain yang tidak diperlukan
gunakan dalam emacs. Tempoh mengekor bermakna direktori semasa dan semua
keturunan dicari untuk kod C/C++, dan dianalisis untuk kelemahan.

Sebaik sahaja anda telah menggunakan pencari cela, anda boleh menggunakan emacs untuk melompat-lompat dalam keputusannya. The
arahan Cx ` (Control-x backtick) melawat lokasi kod sumber untuk amaran seterusnya
mesej. Cu Cx ` (control-u control-x backtick) dimulakan semula dari awal. Awak boleh
lawati sumber untuk sebarang mesej ralat tertentu dengan beralih ke mesej hit tersebut dalam
*kompilasi* penimbal atau *grep* penimbal dan menaip kekunci pulangan. (Nota teknikal: dalam
penimbal kompilasi, ini memanggil compile-goto-error.) Anda juga boleh mengklik Mouse-2
butang pada mesej ralat (anda tidak perlu beralih kepada penimbal *kompilasi* dahulu).

Jika anda ingin menggunakan mod grep untuk melompat ke lajur tertentu hit, anda perlu melakukannya
mengkonfigurasi emacs khas untuk melakukan ini. Untuk melakukan ini, ubah suai pembolehubah emacs "grep-regexp-
alist". Pembolehubah ini memberitahu Emacs cara menghuraikan output perintah "grep", serupa dengan
pembolehubah "compilation-error-regexp-alist" yang menyenaraikan pelbagai format ralat kompilasi
mesej.

Menyerang dari Bersepadu pembangunan Persekitaran (IDE)
Untuk IDE (lain), rujuk set pemalam IDE anda.

SEMUA ORANG KELEMAHAN ENUMERASI (CWE)


Common Weakness Enumeration (CWE) ialah ``senarai rasmi atau kamus perisian biasa
kelemahan yang boleh berlaku dalam seni bina perisian, reka bentuk, kod atau pelaksanaan yang
boleh membawa kepada kelemahan keselamatan yang boleh dieksploitasi... dicipta untuk berfungsi sebagai bahasa yang sama
untuk menerangkan kelemahan keselamatan perisian'' (http://cwe.mitre.org/about/faq.html). Untuk
maklumat lanjut tentang CWE, lihat http://cwe.mitre.org.

Flawfinder menyokong CWE dan secara rasminya Serasi CWE. Tekan perihalan biasanya
sertakan pengecam Common Weakness Enumeration (CWE) yang berkaitan dalam kurungan di mana terdapat
dikenali sebagai CWE yang berkaitan. Contohnya, kebanyakan hits berkaitan penimbal menyebut
CWE-120, pengecam CWE untuk ``salinan penimbal tanpa memeriksa saiz input'' (aka
``Limpahan Penampan Klasik''). Dalam beberapa kes, lebih daripada satu pengecam CWE mungkin disenaraikan.
Laporan HTML juga termasuk pautan hiperteks kepada definisi CWE yang dihoskan di MITRE. Dalam
dengan cara ini, pencari cacat direka untuk memenuhi keperluan CWE-Output.

Kebanyakan CWE yang dilaporkan oleh pencari cacat dikenal pasti dalam senarai 25 teratas CWE/SANS 2011
(http://cwe.mitre.org/top25/). Ramai orang akan mahu mencari CWE dalam senarai ini,
seperti CWE-120 (limpahan penimbal klasik), Apabila pencari cela memetakan ke CWE yang lebih
umum daripada item 25 teratas, ia menyenaraikannya sebagai lebih umum:lebih khusus (cth,
CWE-119:CWE-120), di mana lebih umum ialah pemetaan sebenar. Jika pencari cela memetakan ke lebih
item CWE khusus yang merupakan kes khusus bagi 25 item teratas, ia disenaraikan dalam borang
atas-25/lebih khusus (cth, CWE-362/CWE-367), di mana pemetaan sebenar adalah lebih khusus
kemasukan CWE. Jika entri yang sama dipetakan kepada berbilang CWE, CWE dipisahkan dengan koma
(ini selalunya berlaku dengan CWE-20, Pengesahan Input Tidak Wajar). Ini memudahkan pencarian
CWE tertentu.

CWE versi 2.7 (dikeluarkan pada 23 Jun 2014) telah digunakan untuk pemetaan. CWE semasa
pemetaan pilih CWE yang paling spesifik yang boleh ditentukan oleh alat itu. Secara teori, kebanyakan CWE
elemen keselamatan (tandatangan/corak yang dicari oleh alat) secara teorinya boleh jadi
dipetakan kepada CWE-676 (Penggunaan Fungsi Berpotensi Berbahaya), tetapi pemetaan sedemikian tidak akan
berguna. Oleh itu, pemetaan yang lebih khusus lebih disukai di mana satu boleh ditemui. Pencari cela
ialah alat analisis leksikal; akibatnya, adalah tidak praktikal untuk ia lebih spesifik daripada
pemetaan yang sedang dilaksanakan. Ini juga bermakna ia tidak mungkin memerlukan banyak
mengemas kini untuk mata wang peta; ia hanya tidak mempunyai maklumat yang mencukupi untuk diperhalusi kepada a
tahap CWE terperinci yang biasanya akan dipengaruhi oleh perubahan CWE. Senarai pengecam CWE
telah dijana secara automatik menggunakan "make show-cwes", jadi terdapat keyakinan bahawa senarai ini
adalah betul. Sila laporkan masalah pemetaan CWE sebagai pepijat jika anda menemui sebarang.

Flawfinder mungkin gagal untuk mencari kelemahan, walaupun flawfinder meliputi salah satu daripada CWE ini
kelemahan. Yang berkata, pencari cacat memang menemui kelemahan yang disenaraikan oleh CWE yang dilindunginya,
dan ia tidak akan melaporkan talian tanpa kelemahan tersebut dalam banyak kes. Oleh itu, sebagai
diperlukan untuk mana-mana alat yang berniat untuk serasi dengan CWE, pencari cacat mempunyai kadar palsu
positif kurang daripada 100% dan kadar negatif palsu kurang daripada 100%. Pencari cela hampir
sentiasa melaporkan setiap kali ia menemui padanan dengan elemen keselamatan CWE (tandatangan/corak sebagai
ditakrifkan dalam pangkalan datanya), walaupun binaan tertentu yang tidak jelas boleh menyebabkannya gagal (lihat BUGS
di bawah).

Flawfinder boleh melaporkan tentang CWE berikut (ini ialah CWE yang dilindungi oleh flawfinder;
``*'' menandakan mereka dalam senarai 25 teratas CWE/SANS):

· CWE-20: Pengesahan Input Tidak Wajar

· CWE-22: Had Nama Laluan yang Tidak Wajar kepada Direktori Terhad (``Path Traversal'')

· CWE-78: Peneutralan Tidak Betul bagi Elemen Khas yang digunakan dalam Perintah OS (``Perintah OS
Suntikan'')*

· CWE-119: Sekatan Operasi yang Tidak Wajar dalam Sempadan Penampan Memori (a
induk CWE-120*, jadi ini ditunjukkan sebagai CWE-119:CWE-120)

· CWE-120: Salin Penampan tanpa Menyemak Saiz Input (``Limpahan Penampan Klasik'')*

· CWE-126: Penampan Terlalu dibaca

· CWE-134: Rentetan Format Tidak Terkawal*

· CWE-190: Integer Overflow atau Wraparound*

· CWE-250: Pelaksanaan dengan Keistimewaan yang Tidak Diperlukan

· CWE-327: Penggunaan Algoritma Kriptografi yang Rosak atau Berisiko*

· CWE-362: Pelaksanaan Serentak menggunakan Sumber Dikongsi dengan Penyegerakan Tidak Betul
(``Keadaan Perlumbaan'')

· CWE-377: Fail Sementara Tidak Selamat

· CWE-676: Penggunaan Fungsi Berpotensi Berbahaya*

· CWE-732: Tugasan Kebenaran Salah untuk Sumber Kritikal*

· CWE-785: Penggunaan Fungsi Manipulasi Laluan tanpa Penampan bersaiz Maksimum (anak daripada
CWE-120*, jadi ini ditunjukkan sebagai CWE-120/CWE-785)

· CWE-807: Pergantungan pada Input Tidak Dipercayai dalam Keputusan Keselamatan*

· CWE-829: Kemasukan Kefungsian daripada Sfera Kawalan Tidak Dipercayai*

Anda boleh memilih subset khusus CWE untuk dilaporkan dengan menggunakan pilihan ``--regex'' (-e).
Pilihan ini menerima ungkapan biasa, jadi anda boleh memilih berbilang CWE, cth, ``--regex
"CWE-120|CWE-126"''. Jika anda memilih berbilang CWE dengan ``|'' pada baris arahan, anda akan melakukannya
lazimnya perlu memetik parameter (memandangkan ``|'' yang tidak disebut adalah simbol paip).
Flawfinder direka untuk memenuhi keperluan CWE-Searchable.

Jika matlamat anda adalah untuk melaporkan subset CWE yang disenaraikan dalam fail, itu boleh dicapai
pada sistem seperti Unix menggunakan pilihan ``--regex'' aka ``-e''. Fail mesti ada dalam
format ungkapan biasa. Sebagai contoh, ``pencari cela -e $(cat file1)'' akan melaporkan sahaja
hits yang sepadan dengan corak dalam ``file1''. Jika file1 mengandungi ``CWE-120|CWE-126'' ia
hanya akan melaporkan hits yang sepadan dengan CWE tersebut.

Senarai semua elemen keselamatan CWE (tanda tangan/corak yang dicari oleh pencari cela)
boleh didapati dengan menggunakan pilihan ``--listrules''. Setiap baris menyenaraikan tanda tandatangan
(biasanya nama fungsi) yang mungkin membawa kepada pukulan, tahap risiko lalai dan
amaran lalai (yang termasuk pengecam CWE lalai). Untuk kebanyakan tujuan ini adalah
juga cukup jika anda ingin melihat elemen keselamatan CWE petakan kepada CWE yang mana, atau
terbalik. Contohnya, untuk melihat kebanyakan tandatangan (nama fungsi) yang dipetakan
CWE-327, tanpa melihat tahap risiko lalai atau teks amaran terperinci, jalankan ``pencari cela
--listrules | grep CWE-327 | potong -f1''. Anda juga boleh melihat token tanpa pemetaan CWE
dengan cara ini dengan menjalankan ``flawfinder -D --listrules | grep -v CWE-''. Walau bagaimanapun, sementara
--listrules menyenaraikan semua elemen keselamatan CWE, ia hanya menyenaraikan pemetaan lalai daripada CWE
elemen keselamatan kepada pengecam CWE. Ia tidak termasuk penghalusan yang mencari kecacatan
terpakai (cth, dengan memeriksa parameter fungsi).

Jika anda mahukan pemetaan yang terperinci dan tepat antara elemen keselamatan CWE dan CWE
pengecam, kod sumber pencari cacat (termasuk dalam pengedaran) ialah tempat terbaik
untuk maklumat tersebut. Maklumat terperinci ini amat menarik minat segelintir orang tersebut
orang yang cuba memperhalusi pemetaan CWE pencari cacat atau memperhalusi CWE secara umum.
Kod sumber mendokumenkan pemetaan antara elemen keselamatan kepada CWE masing-masing
pengecam, dan merupakan satu fail Python. Set data ``c_rules'' mentakrifkan kebanyakan peraturan,
dengan merujuk kepada fungsi yang boleh membuat penambahbaikan selanjutnya. Anda boleh mencari di
set data untuk nama fungsi untuk melihat apa yang CWE hasilkan secara lalai; jika parameter pertama ialah
bukan ``biasa'' maka itu adalah nama kaedah Python penapisan yang mungkin memilih berbeza
CWE (bergantung pada maklumat tambahan). Sebaliknya, anda boleh mencari ``CWE-nombor''
dan cari elemen keselamatan (tandatangan atau corak) yang merujuk kepada pengecam CWE itu.
Bagi kebanyakan orang, ini adalah lebih daripada yang mereka perlukan; kebanyakan orang hanya mahu mengimbas mereka
kod sumber untuk mencari masalah dengan cepat.

KESELAMATAN


Inti dari alat ini adalah untuk membantu mencari kelemahan supaya ia boleh diperbaiki.
Walau bagaimanapun, pembangun dan penyemak mesti tahu cara membangunkan perisian selamat untuk menggunakan ini
alat, kerana jika tidak, a menipu bersama a alat is masih a menipu. Buku saya di
http://www.dwheeler.com/secure-programs boleh membantu.

Alat ini sepatutnya, paling banyak, sebahagian kecil daripada proses pembangunan perisian yang lebih besar
direka untuk menghapuskan atau mengurangkan kesan kelemahan. Pembangun dan pengulas
perlu tahu bagaimana untuk membangunkan perisian selamat, dan mereka perlu menggunakan pengetahuan ini untuk mengurangkan
risiko kelemahan di tempat pertama.

Alat mencari kelemahan yang berbeza cenderung untuk mencari kelemahan yang berbeza. Oleh itu, anda
sebaiknya menggunakan semakan manusia dan pelbagai alat. Alat ini boleh membantu mencari beberapa
kelemahan, tetapi tidak semua.

Anda hendaklah sentiasa menganalisis a salinan program sumber yang dianalisis, bukan direktori
yang boleh diubah suai oleh pembangun semasa pencari cacat sedang melakukan analisis. Ini adalah
terutama benar jika anda tidak semestinya mempercayai pembangun program yang sedang dianalisis.
Jika penyerang mempunyai kawalan ke atas fail semasa anda menganalisisnya, penyerang boleh
alihkan fail atau tukar kandungannya untuk mengelakkan pendedahan masalah keselamatan
(atau mencipta kesan masalah yang tidak ada). Jika anda bimbang tentang
pengaturcara berniat jahat anda harus melakukan ini, kerana selepas analisis anda perlu melakukannya
sahkan bahawa kod akhirnya dijalankan ialah kod yang anda analisis. Juga, jangan gunakan
--allowlink pilihan dalam kes sedemikian; penyerang boleh mencipta pautan simbolik berniat jahat kepada fail
di luar kawasan kod sumber mereka (seperti / etc / passwd).

Sistem pengurusan kod sumber (seperti SourceForge dan Savannah) pasti jatuh ke dalam ini
kategori; jika anda mengekalkan salah satu daripada sistem tersebut, mula-mula salin atau ekstrak fail ke dalam
direktori berasingan (yang tidak boleh dikawal oleh penyerang) sebelum menjalankan flawfinder atau
sebarang alat analisis kod lain.

Harap maklum bahawa pencari cela hanya membuka fail biasa, direktori dan (jika diminta) simbolik
pautan; ia tidak akan membuka jenis fail lain, walaupun pautan simbolik dibuat kepada mereka.
Ini membalas penyerang yang memasukkan jenis fail luar biasa ke dalam kod sumber. Walau bagaimanapun, ini
hanya berfungsi jika sistem fail yang dianalisis tidak boleh diubah suai oleh penyerang semasa
analisis, seperti yang disyorkan di atas. Perlindungan ini juga tidak berfungsi pada platform Cygwin,
malangnya.

Sistem Cygwin (emulasi Unix di atas Windows) mempunyai masalah tambahan jika pencari cacat
digunakan untuk menganalisis program yang tidak boleh dipercayai oleh penganalisis. Masalahnya adalah kerana reka bentuk
kecacatan dalam Windows (yang diwarisi daripada MS-DOS). Pada Windows dan MS-DOS, nama fail tertentu
(cth, ``com1'') secara automatik dianggap oleh sistem pengendalian sebagai nama
persisian, dan ini benar walaupun nama laluan penuh diberikan. Ya, Windows dan MS-DOS
benar-benar direka ini teruk. Flawfinder menangani perkara ini dengan menyemak sistem fail
object is, dan kemudian hanya membuka direktori dan fail biasa (dan symlinks jika didayakan).
Malangnya, ini tidak berfungsi pada Cygwin; pada sekurang-kurangnya beberapa versi Cygwin pada beberapa
versi Windows, hanya cuba untuk menentukan sama ada fail adalah jenis peranti boleh menyebabkan
program untuk menggantung. Penyelesaian adalah untuk memadam atau menamakan semula mana-mana nama fail yang ditafsirkan
sebagai nama peranti sebelum melakukan analisis. Ini yang dipanggil ``nama simpanan'' ialah
CON, PRN, AUX, CLOCK$, NUL, COM1-COM9 dan LPT1-LPT9, secara pilihan diikuti dengan sambungan
(cth, ``com1.txt''), dalam mana-mana direktori dan dalam apa jua keadaan (Windows tidak peka huruf besar-kecil).

Do tidak muatkan atau bezakan senarai hit daripada sumber yang tidak dipercayai. Mereka dilaksanakan menggunakan
Modul acar Python, dan modul acar tidak bertujuan untuk selamat daripada kesilapan
atau data yang dibina secara berniat jahat. Senarai hit yang disimpan bertujuan untuk digunakan kemudian oleh yang sama
pengguna yang mencipta senarai hit; dalam konteks itu sekatan ini tidak menjadi masalah.

Gunakan pencari cela dalam talian menggunakan perkhidmatan onworks.net


Pelayan & Stesen Kerja Percuma

Muat turun apl Windows & Linux

  • 1
    Phaser
    Phaser
    Phaser ialah permainan terbuka yang pantas, percuma dan menyeronokkan
    sumber rangka kerja permainan HTML5 yang menawarkan
    Penyampaian WebGL dan Kanvas merentas
    pelayar web desktop dan mudah alih. Permainan
    boleh bersama...
    Muat turun Phaser
  • 2
    Enjin VASSAL
    Enjin VASSAL
    VASSAL ialah enjin permainan untuk mencipta
    versi elektronik papan tradisional
    dan permainan kad. Ia memberikan sokongan untuk
    rendering dan interaksi sekeping permainan,
    dan ...
    Muat turun Enjin VASSAL
  • 3
    OpenPDF - Fork iText
    OpenPDF - Fork iText
    OpenPDF ialah perpustakaan Java untuk mencipta
    dan mengedit fail PDF dengan LGPL dan
    Lesen sumber terbuka MPL. OpenPDF ialah
    LGPL/MPL pengganti sumber terbuka iText,
    yang ...
    Muat turun OpenPDF - Fork of iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - Sistem untuk Automatik
    Analisis Geosainifik - ialah Geografi
    Perisian Sistem Maklumat (GIS) dengan
    keupayaan yang besar untuk geodata
    pemprosesan dan ana...
    Muat turun SAGA GIS
  • 5
    Kotak alat untuk Java/JTOpen
    Kotak alat untuk Java/JTOpen
    Kotak Alat IBM untuk Java / JTOpen ialah a
    perpustakaan kelas Java yang menyokong
    klien/pelayan dan pengaturcaraan internet
    model kepada sistem yang menjalankan OS/400,
    i5/OS, o...
    Muat turun Toolbox untuk Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (atau D3 untuk Dokumen Dipacu Data)
    ialah perpustakaan JavaScript yang membolehkan anda
    untuk menghasilkan data yang dinamik dan interaktif
    visualisasi dalam pelayar web. Dengan D3
    awak ...
    Muat turun D3.js
  • Lebih »

Arahan Linux

  • 1
    abidiff
    abidiff
    abidiff - bandingkan ABI fail ELF
    abidiff membandingkan Perduaan Aplikasi
    Antara muka (ABI) dua perpustakaan kongsi
    dalam format ELF. Ia memancarkan sesuatu yang bermakna
    penghormatan ...
    Lari abidiff
  • 2
    abidw
    abidw
    abidw - sirikan ABI seorang ELF
    fail abidw membaca perpustakaan kongsi dalam ELF
    memformat dan mengeluarkan perwakilan XML
    ABI kepada output standard. The
    dipancarkan...
    Lari abidw
  • 3
    copac2xml
    copac2xml
    bibutils - penukaran bibliografi
    utiliti...
    Jalankan copac2xml
  • 4
    copt
    copt
    copt - pengoptimum lubang intip SYSNOPIS:
    fail copt.. HURAIAN: copt ialah a
    pengoptimum lubang intip tujuan umum. Ia
    membaca kod daripada input standardnya dan
    menulis sebuah...
    Jalankan copt
  • 5
    gather_stx_titles
    gather_stx_titles
    gather_stx_titles - kumpulkan tajuk
    pengisytiharan daripada dokumen Stx ...
    Jalankan gather_stx_titles
  • 6
    gatling-bench
    gatling-bench
    bangku - penanda aras http ...
    Lari gatling-bench
  • Lebih »

Ad