Я пытаюсь запустить сканирование CASA уровня 2 в приложении iOS с помощью Fluidattacks/cli, и мне не удается понять, как его настроить.
Команда, которую я запускаю:
docker run -v $(pwd)/FluidScanArtifacts:/working-dir fluidattacks/cli:arm64 skims scan /working-dir/MyApp/config.yaml
И мой config.yaml выглядит следующим образом:
namespace: MyApp
output:
file_path: ./Fluid-Attacks-Results.csv
format: CSV
working_dir: .
language: EN
sast:
include:
- .
exclude:
- glob(**/Pods/**)
sca:
include:
- .
exclude:
- glob(**/Pods/**)
Когда он запускается, я не получаю никаких ошибок и сообщает, что уязвимости не обнаружены, но я не уверен, что он действительно что-то сканирует, поскольку весь процесс занимает, возможно, секунду, и он говорит «Анализ по 0 путям»:
INFO] Official Documentation: https://docs.fluidattacks.com/tech/scanner/standalone/
[INFO] Namespace: MyApp
[ERROR] Computing commit hash: /src
[INFO] info HEAD is now at: 0000000000000000000000000000000000000000
[INFO] Startup work dir is: /src
[INFO] Moving work dir to: /src
[INFO] Running SAST analysis on specified paths
[INFO] Performing lines analysis
[INFO] Performing Path Analysis on 0 paths
[INFO] SAST path analysis completed!
[INFO] Performing graph analysis
[INFO] Performing unverifiable paths analysis
[INFO] SAST analysis completed!
[INFO] Analysis finished, writing results
[INFO] An output file has been written: /src/Fluid-Attacks-Results.csv
[INFO] Summary: No vulnerabilities were found in your targets.
Итак, что-то здесь не так, и я думаю, что это может быть связано с рабочим_каталогом в config.yaml, для которого установлено значение .. Я не могу понять, к чему относится этот путь. Если я установлю что-нибудь кроме ., я просто получу (после установки MyApp):
File "/nix/store/ls4wycw226gqlidzliw3p9bzyr9gknx4-skims/core/scan.py", line 277, in main
os.chdir(ctx.SKIMS_CONFIG.working_dir)
FileNotFoundError: [Errno 2] No such file or directory: '/src/MyApp'
[INFO] Summary: An error occurred while analyzing your targets.
А что такое /src? На самом деле я сделал docker cp в каталоге src из контейнера после его успешного запуска, и все, что у него было, это мой CSV-файл. Я ожидал, что там будет весь мой код, но это не так.
Кто-нибудь знает, что здесь происходит?
Я на самом деле тоже его не получил, но смог найти его в контейнере.
Да, тоже нашел где-то в контейнере, спасибо.





Документация неверна. Вам нужно изменить working-dir на src.
В вашем примере команда будет выглядеть так:
docker run -v $(pwd)/FluidScanArtifacts:/src fluidattacks/cli:arm64 skims scan /src/MyApp/config.yaml
Я написал сообщение в блоге, описывающее шаги после борьбы с этим, что может помочь: https://mzansibytes.com/2024/03/07/performing-a-sast-for-a-casa-tier-2-self- скан/
Спасибо за публикацию этого! Я пытался получить доступ к вашему сообщению в блоге, но почему-то оно не загружается, и Chrome выдает ошибку, что страница не отвечает (то же самое в Safari). Кажется, некоторые изображения не загружаются. Ваше руководство кажется очень полезным, поэтому было бы здорово его прочитать. Огромное спасибо и, надеюсь, вы сможете исправить свою страницу! Ваше здоровье!
Это фиксированная. Извините, я тестировал плагин Jetpack Boost, но, похоже, у него возникли проблемы.
Спасибо! Мне удалось выполнить ваши действия, и кажется, что это сработало, но в полученном CSV-файле есть только одна строка с надписью «Сводка: в ваших целях не обнаружено уязвимостей». Предполагается ли, что в нем будет больше контента? Например, откуда мне знать, что оно прошло через исходный код приложения? Я думал, что в выводе будет указано, сколько строк кода или файлов оно просканировало. Я совершенно новичок в этом, поэтому ваши комментарии и помощь очень приветствуются. Спасибо!!
Извините за долгую задержку с ответом. Прежде чем отвечать, я хотел сначала пройти весь процесс и посмотреть, что произойдет, поскольку я также обнаружил, что этот «пустой» файл представляет собой странный отчет. Они были довольны этим «пустым» файлом, но у них были некоторые вопросы, относящиеся к заявке, на которые мне пришлось ответить. После этого они остались довольны и дали одобрение.
Что касается меня, я не получаю CSV-файл в конце...