diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-angr.spec | 216 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 218 insertions, 0 deletions
@@ -0,0 +1 @@ +/angr-9.2.39.tar.gz diff --git a/python-angr.spec b/python-angr.spec new file mode 100644 index 0000000..b756668 --- /dev/null +++ b/python-angr.spec @@ -0,0 +1,216 @@ +%global _empty_manifest_terminate_build 0 +Name: python-angr +Version: 9.2.39 +Release: 1 +Summary: A multi-architecture binary analysis toolkit, with the ability to perform dynamic symbolic execution and various static analyses on binaries +License: BSD-2-Clause +URL: https://github.com/angr/angr +Source0: https://files.pythonhosted.org/packages/b0/49/6b56174c08c685b23554c2b1e21a75292f073abfff99e3880b68e1303782/angr-9.2.39.tar.gz + +Requires: python3-CppHeaderParser +Requires: python3-GitPython +Requires: python3-ailment +Requires: python3-archinfo +Requires: python3-cachetools +Requires: python3-capstone +Requires: python3-cffi +Requires: python3-claripy +Requires: python3-cle +Requires: python3-dpkt +Requires: python3-itanium-demangler +Requires: python3-mulpyplexer +Requires: python3-nampa +Requires: python3-networkx +Requires: python3-progressbar2 +Requires: python3-protobuf +Requires: python3-psutil +Requires: python3-pycparser +Requires: python3-pyvex +Requires: python3-rpyc +Requires: python3-sortedcontainers +Requires: python3-sympy +Requires: python3-unicorn +Requires: python3-colorama +Requires: python3-sqlalchemy +Requires: python3-pypcode + +%description +[](https://pypi.python.org/pypi/angr/) +[](https://pypistats.org/packages/angr) +[](https://github.com/angr/angr/actions/workflows/.github/workflows/ci.yml/badge.svg) +[](https://github.com/angr/angr/blob/master/LICENSE) +[](https://docs.angr.io) +[](https://angr.io/api-doc) +[](https://github.com/psf/black) +[](https://github.com/pre-commit/pre-commit) +angr is a platform-agnostic binary analysis framework. +It is brought to you by [the Computer Security Lab at UC Santa Barbara](https://seclab.cs.ucsb.edu), [SEFCOM at Arizona State University](https://sefcom.asu.edu), their associated CTF team, [Shellphish](https://shellphish.net), the open source community, and **[@rhelmot](https://github.com/rhelmot)**. +# What? +angr is a suite of Python 3 libraries that let you load a binary and do a lot of cool things to it: +- Disassembly and intermediate-representation lifting +- Program instrumentation +- Symbolic execution +- Control-flow analysis +- Data-dependency analysis +- Value-set analysis (VSA) +- Decompilation +The most common angr operation is loading a binary: `p = angr.Project('/bin/bash')` If you do this in an enhanced REPL like IPython, you can use tab-autocomplete to browse the [top-level-accessible methods](https://docs.angr.io/docs/toplevel) and their docstrings. +The short version of "how to install angr" is `mkvirtualenv --python=$(which python3) angr && python -m pip install angr`. +# Example +angr does a lot of binary analysis stuff. +To get you started, here's a simple example of using symbolic execution to get a flag in a CTF challenge. +```python +import angr +project = angr.Project("angr-doc/examples/defcamp_r100/r100", auto_load_libs=False) +@project.hook(0x400844) +def print_flag(state): + print("FLAG SHOULD BE:", state.posix.dumps(0)) + project.terminate_execution() +project.execute() +``` +# Quick Start +- [Install Instructions](https://docs.angr.io/introductory-errata/install) +- Documentation as [HTML](https://docs.angr.io/) and as a [Github repository](https://github.com/angr/angr-doc) +- Dive right in: [top-level-accessible methods](https://docs.angr.io/core-concepts/toplevel) +- [Examples using angr to solve CTF challenges](https://docs.angr.io/examples). +- [API Reference](https://angr.io/api-doc/) +- [awesome-angr repo](https://github.com/degrigis/awesome-angr) + +%package -n python3-angr +Summary: A multi-architecture binary analysis toolkit, with the ability to perform dynamic symbolic execution and various static analyses on binaries +Provides: python-angr +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-cffi +BuildRequires: gcc +BuildRequires: gdb +%description -n python3-angr +[](https://pypi.python.org/pypi/angr/) +[](https://pypistats.org/packages/angr) +[](https://github.com/angr/angr/actions/workflows/.github/workflows/ci.yml/badge.svg) +[](https://github.com/angr/angr/blob/master/LICENSE) +[](https://docs.angr.io) +[](https://angr.io/api-doc) +[](https://github.com/psf/black) +[](https://github.com/pre-commit/pre-commit) +angr is a platform-agnostic binary analysis framework. +It is brought to you by [the Computer Security Lab at UC Santa Barbara](https://seclab.cs.ucsb.edu), [SEFCOM at Arizona State University](https://sefcom.asu.edu), their associated CTF team, [Shellphish](https://shellphish.net), the open source community, and **[@rhelmot](https://github.com/rhelmot)**. +# What? +angr is a suite of Python 3 libraries that let you load a binary and do a lot of cool things to it: +- Disassembly and intermediate-representation lifting +- Program instrumentation +- Symbolic execution +- Control-flow analysis +- Data-dependency analysis +- Value-set analysis (VSA) +- Decompilation +The most common angr operation is loading a binary: `p = angr.Project('/bin/bash')` If you do this in an enhanced REPL like IPython, you can use tab-autocomplete to browse the [top-level-accessible methods](https://docs.angr.io/docs/toplevel) and their docstrings. +The short version of "how to install angr" is `mkvirtualenv --python=$(which python3) angr && python -m pip install angr`. +# Example +angr does a lot of binary analysis stuff. +To get you started, here's a simple example of using symbolic execution to get a flag in a CTF challenge. +```python +import angr +project = angr.Project("angr-doc/examples/defcamp_r100/r100", auto_load_libs=False) +@project.hook(0x400844) +def print_flag(state): + print("FLAG SHOULD BE:", state.posix.dumps(0)) + project.terminate_execution() +project.execute() +``` +# Quick Start +- [Install Instructions](https://docs.angr.io/introductory-errata/install) +- Documentation as [HTML](https://docs.angr.io/) and as a [Github repository](https://github.com/angr/angr-doc) +- Dive right in: [top-level-accessible methods](https://docs.angr.io/core-concepts/toplevel) +- [Examples using angr to solve CTF challenges](https://docs.angr.io/examples). +- [API Reference](https://angr.io/api-doc/) +- [awesome-angr repo](https://github.com/degrigis/awesome-angr) + +%package help +Summary: Development documents and examples for angr +Provides: python3-angr-doc +%description help +[](https://pypi.python.org/pypi/angr/) +[](https://pypistats.org/packages/angr) +[](https://github.com/angr/angr/actions/workflows/.github/workflows/ci.yml/badge.svg) +[](https://github.com/angr/angr/blob/master/LICENSE) +[](https://docs.angr.io) +[](https://angr.io/api-doc) +[](https://github.com/psf/black) +[](https://github.com/pre-commit/pre-commit) +angr is a platform-agnostic binary analysis framework. +It is brought to you by [the Computer Security Lab at UC Santa Barbara](https://seclab.cs.ucsb.edu), [SEFCOM at Arizona State University](https://sefcom.asu.edu), their associated CTF team, [Shellphish](https://shellphish.net), the open source community, and **[@rhelmot](https://github.com/rhelmot)**. +# What? +angr is a suite of Python 3 libraries that let you load a binary and do a lot of cool things to it: +- Disassembly and intermediate-representation lifting +- Program instrumentation +- Symbolic execution +- Control-flow analysis +- Data-dependency analysis +- Value-set analysis (VSA) +- Decompilation +The most common angr operation is loading a binary: `p = angr.Project('/bin/bash')` If you do this in an enhanced REPL like IPython, you can use tab-autocomplete to browse the [top-level-accessible methods](https://docs.angr.io/docs/toplevel) and their docstrings. +The short version of "how to install angr" is `mkvirtualenv --python=$(which python3) angr && python -m pip install angr`. +# Example +angr does a lot of binary analysis stuff. +To get you started, here's a simple example of using symbolic execution to get a flag in a CTF challenge. +```python +import angr +project = angr.Project("angr-doc/examples/defcamp_r100/r100", auto_load_libs=False) +@project.hook(0x400844) +def print_flag(state): + print("FLAG SHOULD BE:", state.posix.dumps(0)) + project.terminate_execution() +project.execute() +``` +# Quick Start +- [Install Instructions](https://docs.angr.io/introductory-errata/install) +- Documentation as [HTML](https://docs.angr.io/) and as a [Github repository](https://github.com/angr/angr-doc) +- Dive right in: [top-level-accessible methods](https://docs.angr.io/core-concepts/toplevel) +- [Examples using angr to solve CTF challenges](https://docs.angr.io/examples). +- [API Reference](https://angr.io/api-doc/) +- [awesome-angr repo](https://github.com/degrigis/awesome-angr) + +%prep +%autosetup -n angr-9.2.39 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-angr -f filelist.lst +%dir %{python3_sitearch}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri Feb 24 2023 Python_Bot <Python_Bot@openeuler.org> - 9.2.39-1 +- Package Spec generated @@ -0,0 +1 @@ +50c1030910ea900164eae8d4e2d38795 angr-9.2.39.tar.gz |