The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Google открыл Atheris, инструментарий для fuzzing-тестирования кода на языке Python"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Google открыл Atheris, инструментарий для fuzzing-тестирования кода на языке Python"  +/
Сообщение от opennews (??), 06-Дек-20, 11:14 
Компания Google объявила об открытии исходных текстов проекта Atheris, развивающего специализированный инструментарий для fuzzing-тестирования кода на языке Python и расширений для CPython, написанных на C/C++. Проект использует движок на основе libFuzzer и может применяться совместно с инструментами  Address Sanitizer и Undefined Behavior Sanitizer  для выявления дополнительных ошибок. Код открыт под лицензией Apache 2.0...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=54204

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +1 +/
Сообщение от Аноним (1), 06-Дек-20, 11:14 
Я одного не могу понять, а почему Гугл НЕ создал эту программу открытой изначально?
Ответить | Правка | Наверх | Cообщить модератору

3. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +2 +/
Сообщение от Аноним (3), 06-Дек-20, 11:20 
наверно потому, что сам он этого не делал, а опять купил, как и ВСЕ остальные проекты? Да-да, даже нынешний поисковик гугла - купленный.
Ответить | Правка | Наверх | Cообщить модератору

9. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от макаронофикус (?), 06-Дек-20, 12:28 
>> нынешний поисковик гугла - купленный.

Поделись, пжа, источником.

Ответить | Правка | Наверх | Cообщить модератору

18. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +8 +/
Сообщение от 101 (??), 06-Дек-20, 14:40 
Вот здесь можно посметреть что купил google, в том числе и поисковики
https://en.wikipedia.org/wiki/List_of_mergers_and_acquisitio...
Ответить | Правка | Наверх | Cообщить модератору

45. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от Аноним (45), 07-Дек-20, 17:27 
Если пройтись по ссылкам из таблицы, там написано, что наработки купленных текстовых поисковиков использовались только для вычисления рейтинга для сортировки результатов.
Ответить | Правка | Наверх | Cообщить модератору

47. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +1 +/
Сообщение от anonimous (?), 08-Дек-20, 01:08 
>Если пройтись по ссылкам из таблицы, там написано, что наработки купленных текстовых поисковиков использовались только для вычисления рейтинга для сортировки результатов.

Это как-бы в поисковике самое главное. Остальное это робот для выкачки файлов по ссылкам.

Ответить | Правка | Наверх | Cообщить модератору

48. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от Аноним (48), 08-Дек-20, 02:25 
В Гугле главное — это децентрализация. Он смог подняться благодаря тому, что за поиск отвечал не один-единственный супермощный и дорогой сервер, как у той же Альтависты, а скачанные страницы и индексы были с самого начала разбросаны по почти десятку разнородных машин (и интелы, и спарки, и пауэры). Чтобы угнаться за ростом Интернета, ему достаточно тупо докупать новые сервера для датацентров. Их уже миллионы.
Ответить | Правка | Наверх | Cообщить модератору

5. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +10 +/
Сообщение от Аноним (5), 06-Дек-20, 11:23 
А с чего им делиться с конкурентами полезными наработками, в которые они вложили деньги? А вот когда оно стало ненужно или полезность не оправдала ожиданий - выкидываешь в опен сорс - кушайте, не обляпайтесь. Гугл теперь выглядит белым и пушистым - "поделился", а поддерживают пусть кто хочет своими силами. Бонус поинты за рализ только сырцов без документации и инструментов сборки - вроде и открыли, а долбиться никто не захочет.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

24. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +1 +/
Сообщение от Аноним (24), 06-Дек-20, 19:47 
Вы правы, но это лучше чем ничего. Когда даже уже древнее ПО все еще не хотят открывать это грустно, кому-то да может понадобиться...
Ответить | Правка | Наверх | Cообщить модератору

12. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +9 +/
Сообщение от погроммист (?), 06-Дек-20, 13:03 
В компаниях вроде гугла используется тонна внутренних сервисов и библиотек: от собственной системы сборки и CI, до собственной VCS и диалекта ЯП. Оно сильно интегрировано между собой, что даёт серьезный буст производительности разработчикам, но затрудняет открытие сорцов. Нужно потратить уйму времени на рутинное отвязывание кода от всего этого NIH добра, а также настроить синхронизацию внешнего кода с внутренней монорепой, выделить человека для связи с общественностью (категоризацию багов, внешнего код ревью).
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

15. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +3 +/
Сообщение от Аноним (15), 06-Дек-20, 13:42 
Дав ваще беспредел! Скрывают от сообщества сырые неюзабельные прототипы без документации!
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

16. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +3 +/
Сообщение от commiethebeastie (ok), 06-Дек-20, 14:21 
Потому что код может быть написан так, что годен только для внутреннего использования.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

7. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  –2 +/
Сообщение от Аноним (-), 06-Дек-20, 11:51 
> libFuzzer

Хочу такую же, но для gcc !!!

Ответить | Правка | Наверх | Cообщить модератору

13. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от погроммист (?), 06-Дек-20, 13:11 
Его вроде можно и к GCC >= 9.0 прикрутить (но я не пробовал). См. man gcc /-fsanitize-coverage=
Ответить | Правка | Наверх | Cообщить модератору

14. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +1 +/
Сообщение от Аноним (15), 06-Дек-20, 13:40 
Тебе не пофиг, чем *тестовую* сборку делать?
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

22. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от Аноним (-), 06-Дек-20, 18:15 
Не пофиг
Ответить | Правка | Наверх | Cообщить модератору

31. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от Аноним (31), 07-Дек-20, 07:15 
Эээ, american fuzzy loop не подойдёт?
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

20. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +2 +/
Сообщение от Аноним (20), 06-Дек-20, 17:15 
>version = subprocess.check_output(

[current_path + "/setup_utils/check_libfuzzer_version.sh", libfuzzer])

вот у вас питон есть, зачем всякое говно через subprocess вызывать?

Ответить | Правка | Наверх | Cообщить модератору

21. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  –4 +/
Сообщение от Аноним (21), 06-Дек-20, 17:49 
Как это ни удивительно, некоторые вещи проще и адекватнее делать на шелле. А главное быстрее. Когда это что-то сложнее запустить 1-2 программы и сравнить полтора значения, тут уже возможны варианты.
Ответить | Правка | Наверх | Cообщить модератору

32. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  –1 +/
Сообщение от Аноним (31), 07-Дек-20, 07:19 
В вызываемом там скрипте не делается ничего такого, что на питоне не ложится в сравнимое или меньшее количество строчек. Просто поиск текста в выводе objdump.
Ответить | Правка | Наверх | Cообщить модератору

33. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  –1 +/
Сообщение от Аноним (21), 07-Дек-20, 07:24 
Зачем из питона вызывать шел с питоном (ну или без шела)? Нужен более многострочный и менее читаемый вариант? Нормальный, не вызывающий отвращения вариант аналогичного кода, будет значительно больше. И он будет менее удобен для сопровождения.
Ответить | Правка | Наверх | Cообщить модератору

23. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  –3 +/
Сообщение от Аноним (-), 06-Дек-20, 18:20 
вы ничего не понимаете.... питон - это для другого....
Ответить | Правка | К родителю #20 | Наверх | Cообщить модератору

25. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от Вадик (??), 06-Дек-20, 19:55 
А чего сюда-то писать, можно же прямо к ним с этим придти и с коммитом если считаешь что неправильно.
Ответить | Правка | К родителю #20 | Наверх | Cообщить модератору

26. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от Аноним (20), 06-Дек-20, 21:06 
1. Зачем мне выполнять за Гугл его работу?
2. ... с перспективой получить ответ "и без твоего PR прекрасно жили"?
Ответить | Правка | Наверх | Cообщить модератору

35. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от VALERIIemail (?), 07-Дек-20, 09:43 
А мне интересно как можно проверить на Питоне или другом языке следующее:
# libfuzzer = /path/to/libFuzzer*.a
if objdump -t "$libfuzzer" | grep "LLVMFuzzerRunDriver" > /dev/null; then
  echo "up-to-date"
else
  if objdump -t "$libfuzzer" | grep "__sanitizer_cov_8bit_counters_init" > /dev/null; then
    echo "outdated-recoverable"
  else
    echo "outdated-unrecoverable"
  fi
fi
Ответить | Правка | Наверх | Cообщить модератору

42. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от Ordu (ok), 07-Дек-20, 12:50 
Можно попробовать сделать dlopen, и получить адрес символа -- если адреса не нашлось, значит символа нету. Правда это в C, в пайтоне, наверное, всё немного иначе.
Ответить | Правка | Наверх | Cообщить модератору

46. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от Аноним (20), 07-Дек-20, 23:05 
from pathlib import Path

libfuzzer = next(Path("/path/to").glob("libFuzzer*.a"))

import sh

odt = sh.Command("objdump").bake(t=True)

ls = odt(libfuzzer).splitlines()

def chk(sym, msg):
    for l in ls:
        if l.find(sym) > -1:
            print(msg)
            sys.exit(0)


chk("LLVMFuzzerRunDriver", "up-to-date")
chk("__sanitizer_cov_8bit_counters_init", "outdated-recoverable")

print("outdated-unrecoverable")

Ответить | Правка | К родителю #35 | Наверх | Cообщить модератору

49. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от VALERIIemail (?), 08-Дек-20, 21:38 
так это тоже самое + sh это pip пакет, который нужно доставлять
Ответить | Правка | Наверх | Cообщить модератору

50. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от Аноним (50), 08-Дек-20, 23:44 
sh не обязательно ставить, можно обойтись subprocess, просто как через subprocess делается я навскидку не скажу.
Ответить | Правка | Наверх | Cообщить модератору

51. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от Аноним (50), 08-Дек-20, 23:51 
Насчёт "то же самое" - зато извращаться не приходится с грепами. С чуть более сложным скриптом извращаться пришлось бы с седами авками и ксаргами и expr. Плюс можно избавиться от лишних процессов. При желании можно заюзать elfutils, и получать инфу вообще без парсинга вывода консольки в структурированном виде. Или наоборот можно заморочиться и сделать правильный парсер вывода без false-positiveов.
Ответить | Правка | К родителю #49 | Наверх | Cообщить модератору

53. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от VALERIIemail (?), 09-Дек-20, 19:33 
> При желании можно заюзать elfutils, и получать инфу вообще без парсинга вывода консольки в структурированном виде. Или наоборот можно заморочиться и сделать правильный парсер вывода без false-positiveов.

Я посмотрел - не так это легко.
Я бы даже согласился бы, что не нужно это делать вообше ;)

Ответить | Правка | Наверх | Cообщить модератору

27. Скрыто модератором  +1 +/
Сообщение от Аноним (27), 06-Дек-20, 22:37 
Ответить | Правка | Наверх | Cообщить модератору

29. Скрыто модератором  +/
Сообщение от анонимуслинус (?), 07-Дек-20, 00:23 
Ответить | Правка | Наверх | Cообщить модератору

34. Скрыто модератором  –1 +/
Сообщение от Аноним (34), 07-Дек-20, 08:39 
Ответить | Правка | Наверх | Cообщить модератору

36. Скрыто модератором  +/
Сообщение от Аноним (36), 07-Дек-20, 09:47 
Ответить | Правка | Наверх | Cообщить модератору

38. Скрыто модератором  +/
Сообщение от Аноним (27), 07-Дек-20, 11:58 
Ответить | Правка | К родителю #34 | Наверх | Cообщить модератору

43. Скрыто модератором  +2 +/
Сообщение от Аноним (43), 07-Дек-20, 13:08 
Ответить | Правка | К родителю #34 | Наверх | Cообщить модератору

52. Скрыто модератором  +/
Сообщение от анонимуслинус (?), 09-Дек-20, 01:17 
Ответить | Правка | К родителю #34 | Наверх | Cообщить модератору

30. Скрыто модератором  +/
Сообщение от Аноним (30), 07-Дек-20, 04:38 
Ответить | Правка | К родителю #27 | Наверх | Cообщить модератору

28. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от Rodegast (ok), 06-Дек-20, 23:58 
Чем оно лучше hypothesis-а?
Ответить | Правка | Наверх | Cообщить модератору

37. "Google открыл Atheris, инструментарий для fuzzing-тестирован..."  +/
Сообщение от Аноним (37), 07-Дек-20, 11:37 
тем что оно не hypothesis
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру