簡體   English   中英

HP Fortify Android SCA版本

[英]HP Fortify Android SCA build

我正在嘗試使用Fortify sourceanalyser二進制文件來掃描Android項目。 問題是即使我正確設置了類路徑,也找不到類...

這是我的命令:

sourceanalyzer -b MS.ANDROID -clean;
sourceanalyzer -b MS.ANDROID -exclude androidTest -exclude gradle -exclude maven-config -exclude test -cp "/home/devuser/android-sdk-linux/platforms/android-21/android.jar:/var/lib/jenkins/workspace/myproject/**/*.jar" -source 1.7 src

我的輸出是:

[warning]: The following references to java classes could not be resolved. Please make sure to supply all the required jar files that contain these classes to SCA.
    AddressException
    BasicClientCookieHC4
    CancellationTokenSource
    ConnectionConfig.Builder
    ContentType
    Continuation
    Crashlytics
    FileBody
    HttpClientBuilder
    Immutable
    InternetAddress
    MultipartEntityBuilder
    PoolingHttpClientConnectionManager
    Registry
    RequestConfig.Builder
    SSLConnectionSocketFactory
    StringBody
    SuppressFBWarnings
    Task
    Task.TaskCompletionSource

之所以找到android.jar是因為,如果我刪除它,我將找不到更多的類,但是即使為每個人提供完整路徑,也找不到該項目下的所有jars ...

如果任何人都擁有適用於Android的Fortify教程(或包含在gradle中),那也很好。

由於可用的格式,我以答案的形式發表我的評論。 因此,請嘗試以下操作:

cd /var/lib/jenkins/workspace/myproject/
find . | grep Task.class
find . -name .jar | while read jar; do grep -r 'Task' "$jar" ; done

這應該告訴您,在指定的jar中,至少有一個此類位於哪里。 如果您在jar中找不到它,則說明您沒有指定足夠的類路徑。

當前沒有關於gradle的Fortify Knowledge文章。 我會嘗試在適當的時候將Maven插件放入Gradle。 這樣,SCA應該找到依賴項。

如果應用程序編譯成功,但是SCA返回了掃描錯誤,則可能缺少jar文件,但是應用程序可能會編譯,因為這些jar文件是從另一個應用程序(例如Tomcat服務器)(或您的gradle)中包含的。 可以1)將所有相關的jar捆綁到項目中,或者2)將SCA合並到構建腳本(maven或ant)或包(Jenkins或gradle)中。

如果將罐子與應用程序打包在一起,則可以確切知道要包含的功能,並且可以更好地控制攻擊面。 如果您依靠諸如Tomcat之類的外部服務來尋找依賴關系,那么就無法保證可以調用的功能,從而使該解決方案的健壯性和安全性降低。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM