Add dirb
The source tarball is just a repackage with fixed permissions of directories and the configure file (which don't have +x on the source repo).
This commit is contained in:
parent
6b72a0d742
commit
cc81f3aa22
5 changed files with 242 additions and 0 deletions
178
dirb/SOURCES/Fix-DIRB-for-GCC-10.patch
Normal file
178
dirb/SOURCES/Fix-DIRB-for-GCC-10.patch
Normal file
|
@ -0,0 +1,178 @@
|
||||||
|
From a949ec35d6368537e52bf85458aab590c4deec77 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Nikita Ermakov <arei@altlinux.org>
|
||||||
|
Date: Wed, 9 Dec 2020 15:12:41 +0300
|
||||||
|
Subject: [PATCH] Fix DIRB for GCC 10
|
||||||
|
|
||||||
|
GCC now defaults to -fno-common. Use the common module variables.c for
|
||||||
|
global variables.
|
||||||
|
---
|
||||||
|
src/Makefile.am | 3 ++-
|
||||||
|
src/Makefile.in | 6 ++++--
|
||||||
|
src/dirb.h | 1 -
|
||||||
|
src/variables.c | 30 ++++++++++++++++++++++++++++++
|
||||||
|
src/variables.h | 45 +++++++++++++++++++++++----------------------
|
||||||
|
5 files changed, 59 insertions(+), 26 deletions(-)
|
||||||
|
create mode 100644 src/variables.c
|
||||||
|
|
||||||
|
diff --git a/src/Makefile.am b/src/Makefile.am
|
||||||
|
index c0d56c6..5e6f384 100644
|
||||||
|
--- a/src/Makefile.am
|
||||||
|
+++ b/src/Makefile.am
|
||||||
|
@@ -11,7 +11,8 @@ base = crea_wordlist.c\
|
||||||
|
calculanec.c\
|
||||||
|
utils.c\
|
||||||
|
options.c\
|
||||||
|
- resume.c
|
||||||
|
+ resume.c\
|
||||||
|
+ variables.c
|
||||||
|
|
||||||
|
dirb_SOURCES = $(base)
|
||||||
|
|
||||||
|
diff --git a/src/Makefile.in b/src/Makefile.in
|
||||||
|
index add6c74..990de35 100644
|
||||||
|
--- a/src/Makefile.in
|
||||||
|
+++ b/src/Makefile.in
|
||||||
|
@@ -50,7 +50,7 @@ binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
|
||||||
|
PROGRAMS = $(bin_PROGRAMS)
|
||||||
|
am__objects_1 = crea_wordlist.$(OBJEXT) dirb.$(OBJEXT) \
|
||||||
|
get_url.$(OBJEXT) lanza_ataque.$(OBJEXT) calculanec.$(OBJEXT) \
|
||||||
|
- utils.$(OBJEXT) options.$(OBJEXT) resume.$(OBJEXT)
|
||||||
|
+ utils.$(OBJEXT) options.$(OBJEXT) resume.$(OBJEXT) variables.$(OBJEXT)
|
||||||
|
am_dirb_OBJECTS = $(am__objects_1)
|
||||||
|
dirb_OBJECTS = $(am_dirb_OBJECTS)
|
||||||
|
dirb_LDADD = $(LDADD)
|
||||||
|
@@ -153,7 +153,8 @@ base = crea_wordlist.c\
|
||||||
|
calculanec.c\
|
||||||
|
utils.c\
|
||||||
|
options.c\
|
||||||
|
- resume.c
|
||||||
|
+ resume.c\
|
||||||
|
+ variables.c
|
||||||
|
|
||||||
|
dirb_SOURCES = $(base)
|
||||||
|
dirb_LDFLAGS = @NETWORK_LIBS@
|
||||||
|
@@ -230,6 +231,7 @@ distclean-compile:
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/options.Po@am__quote@
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resume.Po@am__quote@
|
||||||
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utils.Po@am__quote@
|
||||||
|
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/variables.Po@am__quote@
|
||||||
|
|
||||||
|
.c.o:
|
||||||
|
@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
|
||||||
|
diff --git a/src/dirb.h b/src/dirb.h
|
||||||
|
index 5917adc..a3df2eb 100644
|
||||||
|
--- a/src/dirb.h
|
||||||
|
+++ b/src/dirb.h
|
||||||
|
@@ -8,7 +8,6 @@
|
||||||
|
|
||||||
|
#include "global.h"
|
||||||
|
#include "variables.h"
|
||||||
|
-#include "estructuras.h"
|
||||||
|
#include "funciones.h"
|
||||||
|
|
||||||
|
|
||||||
|
diff --git a/src/variables.c b/src/variables.c
|
||||||
|
new file mode 100644
|
||||||
|
index 0000000..55afcf0
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/src/variables.c
|
||||||
|
@@ -0,0 +1,30 @@
|
||||||
|
+#include "variables.h"
|
||||||
|
+
|
||||||
|
+FILE *outfile; // Fichero de output
|
||||||
|
+CURL *curl; // Descriptor CURL
|
||||||
|
+struct opciones options; // Array con las opciones recibidas del usuario
|
||||||
|
+
|
||||||
|
+struct result *nec[100]; // Array que almacena los NECs
|
||||||
|
+int contador; // Contador de palabras generadas
|
||||||
|
+int descargadas; // Numero de URLs descargadas
|
||||||
|
+int encontradas; // Numero de URLs encontradas
|
||||||
|
+int errores; // Contador de errores
|
||||||
|
+int existant; // Flag para determinar si la URL actual existe
|
||||||
|
+int listable; // Flag para determinar si un directorio es listable
|
||||||
|
+
|
||||||
|
+struct words *wordlist_base; // Base de la lista de palabras
|
||||||
|
+struct words *wordlist_current; // Nodo actual de la lista de palabras
|
||||||
|
+struct words *wordlist_final; // Final de la lista de palabras
|
||||||
|
+
|
||||||
|
+struct words *exts_base; // Base de la lista de extensiones
|
||||||
|
+struct words *exts_current; // Nodo actual de la lista de externsiones
|
||||||
|
+int exts_num; // Numero de extensiones
|
||||||
|
+
|
||||||
|
+struct words *muts_base; // Base de la lista de mutaciones
|
||||||
|
+
|
||||||
|
+struct words *dirlist_base; // Base de la lista de los directorios encontrados
|
||||||
|
+struct words *dirlist_final; // Final de la lista los directorios encontrados
|
||||||
|
+struct words *dirlist_current; // Nodo actual de la lista los directorios encontrados
|
||||||
|
+
|
||||||
|
+int resuming; // Flag para saber si estamos en una sesion resumida
|
||||||
|
+int next_dir; // Flag para saber si tenemos que pasar al siguiente directorio
|
||||||
|
diff --git a/src/variables.h b/src/variables.h
|
||||||
|
index d06d6bf..0b0c271 100644
|
||||||
|
--- a/src/variables.h
|
||||||
|
+++ b/src/variables.h
|
||||||
|
@@ -7,38 +7,39 @@
|
||||||
|
|
||||||
|
|
||||||
|
#include "global.h"
|
||||||
|
+#include "estructuras.h"
|
||||||
|
|
||||||
|
|
||||||
|
/* Global variables */
|
||||||
|
|
||||||
|
-FILE *outfile; // Fichero de output
|
||||||
|
-CURL *curl; // Descriptor CURL
|
||||||
|
-struct opciones options; // Array con las opciones recibidas del usuario
|
||||||
|
+extern FILE *outfile; // Fichero de output
|
||||||
|
+extern CURL *curl; // Descriptor CURL
|
||||||
|
+extern struct opciones options; // Array con las opciones recibidas del usuario
|
||||||
|
|
||||||
|
-struct result *nec[100]; // Array que almacena los NECs
|
||||||
|
-int contador; // Contador de palabras generadas
|
||||||
|
-int descargadas; // Numero de URLs descargadas
|
||||||
|
-int encontradas; // Numero de URLs encontradas
|
||||||
|
-int errores; // Contador de errores
|
||||||
|
-int existant; // Flag para determinar si la URL actual existe
|
||||||
|
-int listable; // Flag para determinar si un directorio es listable
|
||||||
|
+extern struct result *nec[100]; // Array que almacena los NECs
|
||||||
|
+extern int contador; // Contador de palabras generadas
|
||||||
|
+extern int descargadas; // Numero de URLs descargadas
|
||||||
|
+extern int encontradas; // Numero de URLs encontradas
|
||||||
|
+extern int errores; // Contador de errores
|
||||||
|
+extern int existant; // Flag para determinar si la URL actual existe
|
||||||
|
+extern int listable; // Flag para determinar si un directorio es listable
|
||||||
|
|
||||||
|
-struct words *wordlist_base; // Base de la lista de palabras
|
||||||
|
-struct words *wordlist_current; // Nodo actual de la lista de palabras
|
||||||
|
-struct words *wordlist_final; // Final de la lista de palabras
|
||||||
|
+extern struct words *wordlist_base; // Base de la lista de palabras
|
||||||
|
+extern struct words *wordlist_current; // Nodo actual de la lista de palabras
|
||||||
|
+extern struct words *wordlist_final; // Final de la lista de palabras
|
||||||
|
|
||||||
|
-struct words *exts_base; // Base de la lista de extensiones
|
||||||
|
-struct words *exts_current; // Nodo actual de la lista de externsiones
|
||||||
|
-int exts_num; // Numero de extensiones
|
||||||
|
+extern struct words *exts_base; // Base de la lista de extensiones
|
||||||
|
+extern struct words *exts_current; // Nodo actual de la lista de externsiones
|
||||||
|
+extern int exts_num; // Numero de extensiones
|
||||||
|
|
||||||
|
-struct words *muts_base; // Base de la lista de mutaciones
|
||||||
|
+extern struct words *muts_base; // Base de la lista de mutaciones
|
||||||
|
|
||||||
|
-struct words *dirlist_base; // Base de la lista de los directorios encontrados
|
||||||
|
-struct words *dirlist_final; // Final de la lista los directorios encontrados
|
||||||
|
-struct words *dirlist_current; // Nodo actual de la lista los directorios encontrados
|
||||||
|
+extern struct words *dirlist_base; // Base de la lista de los directorios encontrados
|
||||||
|
+extern struct words *dirlist_final; // Final de la lista los directorios encontrados
|
||||||
|
+extern struct words *dirlist_current; // Nodo actual de la lista los directorios encontrados
|
||||||
|
|
||||||
|
-int resuming; // Flag para saber si estamos en una sesion resumida
|
||||||
|
-int next_dir; // Flag para saber si tenemos que pasar al siguiente directorio
|
||||||
|
+extern int resuming; // Flag para saber si estamos en una sesion resumida
|
||||||
|
+extern int next_dir; // Flag para saber si tenemos que pasar al siguiente directorio
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
2.25.4
|
||||||
|
|
BIN
dirb/SOURCES/dirb222.tar.gz
Normal file
BIN
dirb/SOURCES/dirb222.tar.gz
Normal file
Binary file not shown.
5
dirb/create_srpm.sh
Executable file
5
dirb/create_srpm.sh
Executable file
|
@ -0,0 +1,5 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
rpmbuild --define "_topdir `pwd`" -bs dirb.spec
|
||||||
|
mv SRPMS/* .
|
||||||
|
rmdir BUILDROOT RPMS SRPMS BUILD
|
BIN
dirb/dirb-2.22-1.fc34.src.rpm
Normal file
BIN
dirb/dirb-2.22-1.fc34.src.rpm
Normal file
Binary file not shown.
59
dirb/dirb.spec
Normal file
59
dirb/dirb.spec
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
# this spec file was largely based of the altlinux version of it
|
||||||
|
%define debug_package %{nil}
|
||||||
|
|
||||||
|
Name: dirb
|
||||||
|
Version: 2.22
|
||||||
|
Release: 1%{?dist}
|
||||||
|
Summary: DIRB is a Web Content Scanner
|
||||||
|
|
||||||
|
%global _version %(v=%{version}; echo ${v/./})
|
||||||
|
|
||||||
|
License: GPLv2
|
||||||
|
URL: http://dirb.sourceforge.net/
|
||||||
|
Source: dirb%{_version}.tar.gz
|
||||||
|
Patch: Fix-DIRB-for-GCC-10.patch
|
||||||
|
|
||||||
|
BuildRequires: libcurl-devel autoconf gcc make
|
||||||
|
|
||||||
|
%description
|
||||||
|
It looks for existing (and/or hidden) Web Objects.
|
||||||
|
It basically works by launching a dictionary based attack against a web server and analizing the response.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -n %{name}%{_version} -p 1
|
||||||
|
|
||||||
|
%build
|
||||||
|
%configure
|
||||||
|
make
|
||||||
|
|
||||||
|
%install
|
||||||
|
%make_install
|
||||||
|
mv %buildroot/%_bindir/gendict{,-dirb}
|
||||||
|
mkdir -p %buildroot/%_datadir/dirb/
|
||||||
|
find wordlists/ -maxdepth 1 -type f -exec install -m 0644 '{}' %buildroot/%_datadir/dirb/ \;
|
||||||
|
mkdir -p %buildroot/%_datadir/dirb/others
|
||||||
|
find wordlists/others -maxdepth 1 -type f -exec install -m 0644 '{}' %buildroot/%_datadir/dirb/others \;
|
||||||
|
mkdir -p %buildroot/%_datadir/dirb/stress
|
||||||
|
find wordlists/stress -maxdepth 1 -type f -exec install -m 0644 '{}' %buildroot/%_datadir/dirb/stress \;
|
||||||
|
mkdir -p %buildroot/%_datadir/dirb/vulns
|
||||||
|
find wordlists/vulns -maxdepth 1 -type f -exec install -m 0644 '{}' %buildroot/%_datadir/dirb/vulns \;
|
||||||
|
|
||||||
|
%files
|
||||||
|
%_bindir/*
|
||||||
|
%_mandir/man1/*
|
||||||
|
%dir %_datadir/%{name}
|
||||||
|
%_datadir/%{name}/*
|
||||||
|
%doc LICENSE.txt README.txt docs/GENDICT.TXT docs/FAQ.txt docs/TRICKS.txt docs/CHANGES.txt
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Wed May 19 2021 Carlos Mogas da Silva <r3pek@r3pek.org> - 2.22-1
|
||||||
|
- Initial release on COPR
|
||||||
|
|
||||||
|
* Wed Dec 09 2020 Nikita Ermakov <arei@altlinux.org> 2.22-alt3
|
||||||
|
- Fix DIRB for GCC 10.
|
||||||
|
|
||||||
|
* Tue Nov 12 2019 Nikita Ermakov <arei@altlinux.org> 2.22-alt2
|
||||||
|
- Rename gendict to gendict-dirb to avoid collisions with icu-utils.
|
||||||
|
|
||||||
|
* Tue Nov 12 2019 Nikita Ermakov <arei@altlinux.org> 2.22-alt1
|
||||||
|
- Initial build for ALT Linux Sisyphus.
|
Loading…
Reference in a new issue