aboutsummaryrefslogtreecommitdiff
path: root/security/peda
diff options
context:
space:
mode:
authorMateusz Piotrowski <0mp@FreeBSD.org>2018-12-28 14:58:25 +0000
committerMateusz Piotrowski <0mp@FreeBSD.org>2018-12-28 14:58:25 +0000
commit6f37a18858bfa419e81ba897fc1c7fd6b7f8266f (patch)
tree1bfdbf93f57ae62a74dfb1b02d49f04577e73607 /security/peda
parent4e671c3698b87763ca1bfaebf26899b85d6f6472 (diff)
downloadports-6f37a18858bfa419e81ba897fc1c7fd6b7f8266f.tar.gz
ports-6f37a18858bfa419e81ba897fc1c7fd6b7f8266f.zip
New port: security/peda: Python-based GDB extension for exploit development and debugging
PEDA (Python Exploit Development Assistance for GDB) is a plugin for GDB. It extends GDB with a colorful text-based UI making it easier to work with the debugger. Note that PEDA requires that GDB is compiled with Python support. Its key features are: - Enhance the display of GDB: colorize and display disassembly codes, registers, memory information during debugging. - Add commands to support debugging and exploit development. WWW: http://ropshell.com/peda/ Reviewed by: mat Approved by: mat (mentor) Differential Revision: https://reviews.freebsd.org/D18433
Notes
Notes: svn path=/head/; revision=488605
Diffstat (limited to 'security/peda')
-rw-r--r--security/peda/Makefile46
-rw-r--r--security/peda/distinfo3
-rw-r--r--security/peda/files/pkg-message.in16
-rw-r--r--security/peda/pkg-descr13
-rw-r--r--security/peda/pkg-plist10
5 files changed, 88 insertions, 0 deletions
diff --git a/security/peda/Makefile b/security/peda/Makefile
new file mode 100644
index 000000000000..ca532b9cb301
--- /dev/null
+++ b/security/peda/Makefile
@@ -0,0 +1,46 @@
+# $FreeBSD$
+
+PORTNAME= peda
+DISTVERSIONPREFIX= v
+DISTVERSION= 1.1-19
+DISTVERSIONSUFFIX= -g7f673be
+CATEGORIES= security python
+
+MAINTAINER= 0mp@FreeBSD.org
+COMMENT= Python-based GDB extension for exploit development and debugging
+
+LICENSE= CC-BY-NC-SA-3.0
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+RUN_DEPENDS= gdb>7.0:devel/gdb \
+ nasm:devel/nasm \
+ ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}future>0:devel/py-future@${PY_FLAVOR}
+
+USES= python:2.6+,run
+
+USE_GITHUB= yes
+GH_ACCOUNT= longld
+
+NO_ARCH= yes
+NO_BUILD= yes
+
+SUB_FILES= pkg-message
+SUB_LIST= LIBEXECDIR=${LIBEXECDIR} UTILITY_NAME=${UTILITY_NAME}
+
+OPTIONS_DEFINE= DOCS
+
+UTILITY_NAME= ${PORTNAME}.py
+LIBEXECDIR= ${PREFIX}/libexec/${PORTNAME}
+
+do-install:
+ ${MKDIR} ${STAGEDIR}${LIBEXECDIR}
+ ${INSTALL_DATA} ${WRKSRC}/${UTILITY_NAME} ${STAGEDIR}${LIBEXECDIR}
+ ${MKDIR} ${STAGEDIR}${LIBEXECDIR}/lib
+ cd ${WRKSRC}/lib && ${COPYTREE_SHARE} \* ${STAGEDIR}${LIBEXECDIR}/lib
+
+do-install-DOCS-on:
+ ${MKDIR} ${STAGEDIR}${DOCSDIR}
+ cd ${WRKSRC} && ${INSTALL_DATA} README README.md python23-compatibility.md ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
diff --git a/security/peda/distinfo b/security/peda/distinfo
new file mode 100644
index 000000000000..a15078238049
--- /dev/null
+++ b/security/peda/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1544002114
+SHA256 (longld-peda-v1.1-19-g7f673be_GH0.tar.gz) = eaff6f6ad164e7d503e7259a98fdf6b5917bae7facd8b60fcd9778287e898a8a
+SIZE (longld-peda-v1.1-19-g7f673be_GH0.tar.gz) = 65469
diff --git a/security/peda/files/pkg-message.in b/security/peda/files/pkg-message.in
new file mode 100644
index 000000000000..f42fc40bfda7
--- /dev/null
+++ b/security/peda/files/pkg-message.in
@@ -0,0 +1,16 @@
+Now that PEDA is installed it can be used with gdb(1).
+
+Run the following command in the gdb prompt to load the plugin:
+
+```
+source %%LIBEXECDIR%%/%%UTILITY_NAME%%
+```
+
+In order to load PEDA automatically on gdb(1) launch add the line mentioned
+above to ~/.gdbinit:
+
+```
+echo "source %%LIBEXECDIR%%/%%UTILITY_NAME%%" >> ~/.gdbinit
+```
+
+Keep in mind that PEDA requires at least GDB 7.0 to work.
diff --git a/security/peda/pkg-descr b/security/peda/pkg-descr
new file mode 100644
index 000000000000..726c618c2aea
--- /dev/null
+++ b/security/peda/pkg-descr
@@ -0,0 +1,13 @@
+PEDA (Python Exploit Development Assistance for GDB) is a plugin for GDB. It
+extends GDB with a colorful text-based UI making it easier to work with the
+debugger.
+
+Note that PEDA requires that GDB is compiled with Python support.
+
+Its key features are:
+
+- Enhance the display of GDB: colorize and display disassembly codes,
+ registers, memory information during debugging.
+- Add commands to support debugging and exploit development.
+
+WWW: http://ropshell.com/peda/
diff --git a/security/peda/pkg-plist b/security/peda/pkg-plist
new file mode 100644
index 000000000000..305d2778a6f0
--- /dev/null
+++ b/security/peda/pkg-plist
@@ -0,0 +1,10 @@
+libexec/peda/lib/config.py
+libexec/peda/lib/nasm.py
+libexec/peda/lib/shellcode.py
+libexec/peda/lib/six.py
+libexec/peda/lib/skeleton.py
+libexec/peda/lib/utils.py
+libexec/peda/peda.py
+%%PORTDOCS%%%%DOCSDIR%%/README
+%%PORTDOCS%%%%DOCSDIR%%/README.md
+%%PORTDOCS%%%%DOCSDIR%%/python23-compatibility.md