- Version 2.32b: - Added a check for AFL_HARDEN combined with AFL_USE_*SAN. Suggested by Hanno Boeck. - Made several other cosmetic adjustments to cycle timing in the wake of the big tweak made in 2.31b. - Version 2.31b: - Changed havoc cycle counts for a marked performance boost, especially with -S / -d. See the discussion of FidgetyAFL in: https://groups.google.com/forum/#!topic/afl-users/fOPeb62FZUg While this does not implement the approach proposed by the authors of the CCS paper, the solution is a result of digging into that research; more improvements may follow as I do more experiments and get more definitive data. - Version 2.30b: - Made minor improvements to persistent mode to avoid the remote possibility of "no instrumentation detected" issues with very low instrumentation densities. - Fixed a minor glitch with a leftover process in persistent mode. Reported by Jakub Wilk and Daniel Stender. - Made persistent mode bitmaps a bit more consistent and adjusted the way this is shown in the UI, especially in persistent mode. - Version 2.29b: - Made a minor #include fix to llvm_mode. Suggested by Jonathan Metzman. - Made cosmetic updates to the docs. - Version 2.28b: - Added "life pro tips" to docs/. - Moved testcases/_extras/ to dictionaries/ for visibility. - Made minor improvements to install scripts. - Added an important safety tip. - Version 2.27b: - Added libtokencap, a simple feature to intercept strcmp / memcmp and generate dictionary entries that can help extend coverage. OBS-URL: https://build.opensuse.org/request/show/422107 OBS-URL: https://build.opensuse.org/package/show/devel:tools/afl?expand=0&rev=68
63 lines
2.6 KiB
RPMSpec
63 lines
2.6 KiB
RPMSpec
#
|
|
# spec file for package afl
|
|
#
|
|
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
Name: afl
|
|
Version: 2.32b
|
|
Release: 0
|
|
Summary: American fuzzy lop is a security-oriented fuzzer
|
|
License: Apache-2.0
|
|
Group: Development/Tools/Debuggers
|
|
Url: http://lcamtuf.coredump.cx/afl/
|
|
Source: http://lcamtuf.coredump.cx/afl/releases/%{name}-%{version}.tgz
|
|
Source1: afl-rpmlintrc
|
|
Patch1: afl-1.58b-fix-paths.patch
|
|
BuildRequires: gcc-c++
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
ExclusiveArch: i586 x86_64
|
|
|
|
%description
|
|
American fuzzy lop is a security-oriented fuzzer that employs a novel type of compile-time instrumentation and genetic algorithms to automatically discover clean, interesting test cases that trigger new internal states in the targeted binary. This substantially improves the functional coverage for the fuzzed code. The compact synthesized corpora produced by the tool are also useful for seeding other, more labor- or resource-intensive testing regimes down the road.
|
|
|
|
Compared to other instrumented fuzzers, afl-fuzz is designed to be practical: it has modest performance overhead, uses a variety of highly effective fuzzing strategies and effort minimization tricks, requires essentially no configuration, and seamlessly handles complex, real-world use cases - say, common image parsing or file compression libraries.
|
|
|
|
%prep
|
|
%setup -q
|
|
%patch1 -p1
|
|
|
|
%build
|
|
export CFLAGS="$CFLAGS %{optflags}"
|
|
make %{?_smp_mflags} PREFIX=%{_prefix} LIBEXEC_DIR=%{_libexecdir} DOC_DIR=%{_docdir}
|
|
|
|
%install
|
|
make %{?_smp_mflags} PREFIX=%{_prefix} LIBEXEC_DIR=%{_libexecdir} DOC_DIR=%{_docdir} DESTDIR=%{buildroot} install
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%doc docs/COPYING
|
|
%{_bindir}/%{name}-*
|
|
%dir %{_libexecdir}/%{name}
|
|
%{_libexecdir}/%{name}/%{name}-as
|
|
%{_libexecdir}/%{name}/as
|
|
%dir %{_datadir}/%{name}
|
|
%dir %{_datadir}/%{name}/testcases
|
|
%{_datadir}/%{name}/testcases/*
|
|
%dir /usr/share/afl/dictionaries/
|
|
/usr/share/afl/dictionaries/*
|
|
|
|
%changelog
|