日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
如何使用GoKart對Go代碼進(jìn)行靜態(tài)安全分析

關(guān)于GoKart

GoKart是一款針對Go代碼安全的靜態(tài)分析工具,該工具能夠從Go源代碼中查找使用了SSA(單一靜態(tài)分配)形式的代碼漏洞。GoKart能夠跟蹤變量和函數(shù)參數(shù)的來源,以確定輸入源是否安全,與其他Go安全掃描程序相比,GoKart能夠有效減少誤報的數(shù)量。例如,與變量連接的SQL查詢傳統(tǒng)上可能標(biāo)記為SQL注入,然而,GoKart可以確定變量實(shí)際上是常量還是類似常量的參數(shù),在這種情況下GoKart不會報出漏洞。

工具安裝

我們可以使用下列方式之一來安裝GoKart。

(1) go install安裝

廣大研究人員可以使用下列命令安裝GoKart:

 
 
  1. $ go install github.com/praetorian-inc/gokart@latest 

(2) Release安裝

首先,我們需要訪問該項(xiàng)目的【Releases頁面】,并下載GoKart源碼至本地系統(tǒng)。

接下來,我們可以下載checksums.txt文件來驗(yàn)證下載包的完整性:

 
 
  1. # Check the checksum of the downloaded archive 
  2.  
  3. $ shasum -a 256 gokart_${VERSION}_${ARCH}.tar.gz 
  4.  
  5. b05c4d7895be260aa16336f29249c50b84897dab90e1221c9e96af9233751f22  gokart_${VERSION}_${ARCH}.tar.gz 
  6.  
  7. $ cat gokart_${VERSION}_${ARCH}_checksums.txt | grep gokart_${VERSION}_${ARCH}.tar.gz 
  8.  
  9. b05c4d7895be260aa16336f29249c50b84897dab90e1221c9e96af9233751f22  gokart_${VERSION}_${ARCH}.tar.gz 

然后,提取已下載好的文檔:

 
 
  1. $ tar -xvf gokart_${VERSION}_${ARCH}.tar.gz 

最后,將GoKart代碼移動至我們的運(yùn)行路徑中:

 
 
  1. $ mv ./gokart /usr/local/bin/ 

(3) 源碼安裝

首先,我們需要使用下列命令將該項(xiàng)目源碼克隆至本地:

 
 
  1. $ git clone https://github.com/praetorian-inc/gokart.git 

然后切換至項(xiàng)目根目錄,并構(gòu)建源碼:

 
 
  1. $ cd gokart 
  2.  
  3. $ go build 

最后,將GoKart代碼移動至我們的運(yùn)行路徑中:

 
 
  1. $ mv ./gokart /usr/local/bin 

Docker支持

構(gòu)建Docker鏡像:

 
 
  1. docker build -t gokart . 

運(yùn)行容器,并執(zhí)行本地掃描(本地掃描目錄需要加載至容器鏡像中):

 
 
  1. docker run -v /path/to/scan-dir:/scan-dir gokart scan /scan-dir 

運(yùn)行容器,并執(zhí)行遠(yuǎn)程掃描(指定私鑰以作認(rèn)證,并加載至容器中):

 
 
  1. docker run gokart scan -r https://github.com/praetorian-inc/gokart 
  2.   
  3. # specifying a private key for private repository ssh authentication 
  4.  
  5. docker run -v /path/to/key-dir/:/key-dir gokart scan -r git@github.com:praetorian-inc/gokart.git -k /key-dir/ssh_key 

工具使用

針對當(dāng)前目錄中的Go模塊運(yùn)行GoKart:

 
 
  1. # running without a directory specified defaults to '.' 
  2.  
  3. gokart scan  

掃描不同目錄中的Go模塊:

 
 
  1. gokart scan   

查看幫助信息:

 
 
  1. gokart help 

項(xiàng)目地址

GoKart:【GitHub傳送門】


網(wǎng)頁題目:如何使用GoKart對Go代碼進(jìn)行靜態(tài)安全分析
分享鏈接:http://www.5511xx.com/article/dhcdejd.html