secure-delete New Package

This commit is contained in:
alick01
2022-10-21 22:16:01 +03:00
parent 5a93b63cc8
commit 03a30fef26
9 changed files with 366 additions and 0 deletions
+26
View File
@@ -0,0 +1,26 @@
#!/usr/bin/python
# -*- coding: utf-8 -*-
#
# Licensed under the GNU General Public License, version 3.
# See the file http://www.gnu.org/copyleft/gpl.txt.
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
from pisi.actionsapi import get
WorkDir = "secure_delete-3.1-a"
def build():
shelltools.export("CFLAGS", "%s -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64" % get.CFLAGS())
autotools.make()
def install():
autotools.rawInstall("prefix=%s/usr" % get.installDIR())
pisitools.doman("*.1")
pisitools.dodoc("CHANGES", "FILES", "README*", "TODO", "*.doc")
pisitools.rename("/usr/bin/smem", "sdmem")
pisitools.rename("/usr/share/man/man1/smem.1", "sdmem.1")
+9
View File
@@ -0,0 +1,9 @@
diff -Nur secure_delete-3.1-old//Makefile secure_delete-3.1/Makefile
--- secure_delete-3.1-old//Makefile 2011-06-20 09:13:27.256001364 +0300
+++ secure_delete-3.1/Makefile 2011-06-20 09:13:47.349001319 +0300
@@ -1,4 +1,4 @@
-CC=gcc
+CC ?= gcc
OPT=$(CFLAGS) -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
#OPT=-Wall -D_DEBUG_ -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
INSTALL_DIR=$(prefix)/bin
@@ -0,0 +1,21 @@
diff -Nur secure_delete-3.1-old//Makefile secure_delete-3.1/Makefile
--- secure_delete-3.1-old//Makefile 2011-06-17 12:22:25.383001395 +0300
+++ secure_delete-3.1/Makefile 2011-06-17 12:22:19.135001323 +0300
@@ -21,13 +21,13 @@
sdel-lib.o: sdel-lib.c
$(CC) ${OPT} -c sdel-lib.c
-srm: srm.c
+srm: srm.c sdel-lib.o
$(CC) ${OPT} -o srm srm.c sdel-lib.o
-sfill: sfill.c
+sfill: sfill.c sdel-lib.o
$(CC) ${OPT} -o sfill sfill.c sdel-lib.o
-sswap: sswap.c
+sswap: sswap.c sdel-lib.o
$(CC) ${OPT} -o sswap sswap.c sdel-lib.o
-smem: smem.c
+smem: smem.c sdel-lib.o
$(CC) ${OPT} -o smem smem.c sdel-lib.o
clean:
@@ -0,0 +1,15 @@
diff -Nur secure_delete-3.1-old//srm.c secure_delete-3.1/srm.c
--- secure_delete-3.1-old//srm.c 2011-06-16 14:36:13.119001280 +0300
+++ secure_delete-3.1/srm.c 2011-06-16 14:36:22.264001036 +0300
@@ -166,8 +166,10 @@
return 3;
}
- if (sdel_overwrite(mode, fd, 0, bufsize, filestat.st_size > 0 ? filestat.st_size : 1, zero) == 0)
+ if (sdel_overwrite(mode, fd, 0, bufsize, filestat.st_size > 0 ? filestat.st_size : 1, zero) == 0) {
+ close(fd);
return sdel_unlink(filename, 0, 1, slow);
+ }
} /* end IS_REG() */
else {
if (S_ISDIR(filestat.st_mode)) {
@@ -0,0 +1,77 @@
diff -Nur secure_delete-3.1-old//Makefile secure_delete-3.1/Makefile
--- secure_delete-3.1-old//Makefile 2011-06-16 14:36:13.119001280 +0300
+++ secure_delete-3.1/Makefile 2011-06-16 14:36:22.263001009 +0300
@@ -1,19 +1,19 @@
CC=gcc
-OPT=-O2 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
+OPT=$(CFLAGS) -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
#OPT=-Wall -D_DEBUG_ -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
-INSTALL_DIR=/usr/local/bin
+INSTALL_DIR=$(prefix)/bin
MAN_DIR=/usr/local/man
DOC_DIR=/usr/share/doc/secure_delete
OPT_MOD=-D__KERNEL__ -DMODULE -fomit-frame-pointer -fno-strict-aliasing -pipe -mpreferred-stack-boundary=2
#LD_MOD=-r
-all: sdel-lib.o srm sfill sswap smem sdel-mod.o
- @echo
- @echo "A Puritan is someone who is deathly afraid that someone, somewhere, is"
- @echo "having fun."
- @echo
- @echo "I hope YOU have fun!"
- @echo
+all: sdel-lib.o srm sfill sswap smem
+# @echo
+# @echo "A Puritan is someone who is deathly afraid that someone, somewhere, is"
+# @echo "having fun."
+# @echo
+# @echo "I hope YOU have fun!"
+# @echo
sdel-mod.o: sdel-mod.c
$(CC) $(OPT) $(OPT_MOD) $(LD_MOD) -I/lib/modules/`uname -r`/build/include -c sdel-mod.c
@@ -23,32 +23,28 @@
srm: srm.c
$(CC) ${OPT} -o srm srm.c sdel-lib.o
- -strip srm
sfill: sfill.c
$(CC) ${OPT} -o sfill sfill.c sdel-lib.o
- -strip sfill
sswap: sswap.c
$(CC) ${OPT} -o sswap sswap.c sdel-lib.o
- -strip sswap
smem: smem.c
$(CC) ${OPT} -o smem smem.c sdel-lib.o
- -strip smem
clean:
rm -f sfill srm sswap smem sdel sdel-lib.o sdel-mod.o core *~
install: all
mkdir -p -m 755 ${INSTALL_DIR} 2> /dev/null
- rm -f sdel && ln -s srm sdel
- cp -f sdel srm sfill sswap smem the_cleaner.sh ${INSTALL_DIR}
- chmod 711 ${INSTALL_DIR}/srm ${INSTALL_DIR}/sfill ${INSTALL_DIR}/sswap ${INSTALL_DIR}/smem ${INSTALL_DIR}/the_cleaner.sh
- mkdir -p -m 755 ${MAN_DIR}/man1 2> /dev/null
- cp -f srm.1 sfill.1 sswap.1 smem.1 ${MAN_DIR}/man1
- chmod 644 ${MAN_DIR}/man1/srm.1 ${MAN_DIR}/man1/sfill.1 ${MAN_DIR}/man1/sswap.1 ${MAN_DIR}/man1/smem.1
- mkdir -p -m 755 ${DOC_DIR} 2> /dev/null
- cp -f CHANGES FILES README secure_delete.doc usenix6-gutmann.doc ${DOC_DIR}
- -test -e sdel-mod.o && cp -f sdel-mod.o /lib/modules/`uname -r`/kernel/drivers/char
+# rm -f sdel && ln -s srm sdel
+ cp -f srm sfill sswap smem ${INSTALL_DIR}
+ chmod 711 ${INSTALL_DIR}/srm ${INSTALL_DIR}/sfill ${INSTALL_DIR}/sswap ${INSTALL_DIR}/smem
+# mkdir -p -m 755 ${MAN_DIR}/man1 2> /dev/null
+# cp -f srm.1 sfill.1 sswap.1 smem.1 ${MAN_DIR}/man1
+# chmod 644 ${MAN_DIR}/man1/srm.1 ${MAN_DIR}/man1/sfill.1 ${MAN_DIR}/man1/sswap.1 ${MAN_DIR}/man1/smem.1
+# mkdir -p -m 755 ${DOC_DIR} 2> /dev/null
+# cp -f CHANGES FILES README secure_delete.doc usenix6-gutmann.doc ${DOC_DIR}
+# -test -e sdel-mod.o && cp -f sdel-mod.o /lib/modules/`uname -r`/kernel/drivers/char
# @-test '!' -e sdel-mod.o -a `uname -s` = 'Linux' && echo "type \"make sdel-mod install\" to compile and install the Linux loadable kernel module for secure delete"
- @echo
- @echo "If men could get pregnant, abortion would be a sacrament."
- @echo
+# @echo
+# @echo "If men could get pregnant, abortion would be a sacrament."
+# @echo
@@ -0,0 +1,72 @@
diff -Nur secure_delete-3.1-old/smem.1 secure_delete-3.1/smem.1
--- secure_delete-3.1-old/smem.1 2011-06-20 16:31:36.890599669 +0300
+++ secure_delete-3.1/smem.1 2011-06-20 16:37:11.867622820 +0300
@@ -9,7 +9,7 @@
sdmem \- secure memory wiper (secure_deletion toolkit)
.SH SYNOPSIS
-.B sdmem [-f] [-l] [-l] [-v]
+.B sdmem [-f] [-l] [-l] [-m] [-v]
.SH DESCRIPTION
.I sdmem
@@ -54,6 +54,9 @@
-l for a second time lessons the security even more: only one pass with
0x00 is written.
.TP
+.B \-m
+moderate security. Five passes are written.
+.TP
.B \-v
verbose mode
.PP
diff -Nur secure_delete-3.1-old/smem.c secure_delete-3.1/smem.c
--- secure_delete-3.1-old/smem.c 2011-06-20 16:31:36.889599617 +0300
+++ secure_delete-3.1/smem.c 2011-06-20 16:32:58.805684329 +0300
@@ -46,6 +46,7 @@
printf("Options:\n");
printf("\t-f fast (and insecure mode): no /dev/urandom.\n");
printf("\t-l lessens the security (use twice for total insecure mode).\n");
+ printf("\t-m moderate security (5 writes).\n");
printf("\t-v is verbose mode.\n");
printf("\nsmem does a secure overwrite of the memory (RAM), because memory contents can\n");
printf("be recovered even after a shutdown! Default is secure mode (38 writes).\n");
@@ -127,7 +128,19 @@
alarm(600); /* needed to prevent mem caching */
while ( (ptr = calloc(4096, 16)) != NULL) {
- if (mode > 0) {
+ if (mode == 3) {
+ __sdel_fill_buf(write_modes[0], BLOCKSIZE + 2, buf);
+ memcpy(ptr, buf, BLOCKSIZE);
+ __sdel_fill_buf(write_modes[1], BLOCKSIZE + 2, buf);
+ memcpy(ptr, buf, BLOCKSIZE);
+ __sdel_random_buf(BLOCKSIZE + 2, buf);
+ memcpy(ptr, buf, BLOCKSIZE);
+ __sdel_fill_buf(write_modes[0], BLOCKSIZE + 2, buf);
+ memcpy(ptr, buf, BLOCKSIZE);
+ __sdel_fill_buf(write_modes[1], BLOCKSIZE + 2, buf);
+ memcpy(ptr, buf, BLOCKSIZE);
+ }
+ else if (mode > 0) {
for (turn=0; turn<=36; turn++) {
if ((mode == 1) && (turn > 0)) break;
if ((turn>=5) && (turn<=31)) {
@@ -170,7 +183,7 @@
help();
while (1) {
- result = getopt(argc, argv, "FfLlSsVvZz");
+ result = getopt(argc, argv, "FfLlmSsVvZz");
if (result<0) break;
switch (result) {
case 'F' :
@@ -179,6 +192,8 @@
case 'L' :
case 'l' : if (secure) secure--;
break;
+ case 'm' : secure = 3;
+ break;
case 'S' :
case 's' : secure++;
break;
@@ -0,0 +1,94 @@
diff -Nur secure_delete-3.1-old//sfill.1 secure_delete-3.1/sfill.1
--- secure_delete-3.1-old//sfill.1 2011-06-16 14:36:13.119001280 +0300
+++ secure_delete-3.1/sfill.1 2011-06-16 14:36:22.264001036 +0300
@@ -130,5 +130,5 @@
(1),
.I sswap
(1),
-.I smem
+.I sdmem
(1)
diff -Nur secure_delete-3.1-old//smem.1 secure_delete-3.1/smem.1
--- secure_delete-3.1-old//smem.1 2011-06-16 14:36:13.119001280 +0300
+++ secure_delete-3.1/smem.1 2011-06-16 14:36:22.264001036 +0300
@@ -3,16 +3,16 @@
.if n .sp
.if t .sp 0.4
..
-.TH SMEM 1
+.TH SDMEM 1
.SH NAME
-smem \- secure memory wiper (secure_deletion toolkit)
+sdmem \- secure memory wiper (secure_deletion toolkit)
.SH SYNOPSIS
-.B smem [-f] [-l] [-l] [-v]
+.B sdmem [-f] [-l] [-l] [-v]
.SH DESCRIPTION
-.I smem
+.I sdmem
is designed to delete data which may lie still in your memory (RAM)
in a secure manner which can not be recovered by thiefs, law enforcement
or other threats.
@@ -24,7 +24,7 @@
.PP
The
.I secure data deletion
-process of smem goes like this:
+process of sdmem goes like this:
.PP
.TP
.B *
@@ -58,13 +58,19 @@
verbose mode
.PP
+.SH NOTE
+.TP
+This utility was originally called
+.I sdmem
+but was renamed for debian to avoid name clashes with another package.
+
.SH BEWARE
.TP
.B SLOW
-Wiping the memory is very slow. You might use smem with the -ll option. (tip)
+Wiping the memory is very slow. You might use sdmem with the -ll option. (tip)
.TP
.B BETA!
-.I smem
+.I sdmem
is still beta.
.PP
@@ -84,7 +90,7 @@
can be obtained from
.I http://www.thc.org
.Sp
-.I smem
+.I sdmem
and the
.I secure_deletion package
is (C) 1997-2003 by van Hauser / THC (vh@thc.org)
diff -Nur secure_delete-3.1-old//srm.1 secure_delete-3.1/srm.1
--- secure_delete-3.1-old//srm.1 2011-06-16 14:36:13.119001280 +0300
+++ secure_delete-3.1/srm.1 2011-06-16 14:36:22.265001067 +0300
@@ -136,5 +136,5 @@
(1),
.I sswap
(1),
-.I smem
+.I sdmem
(1)
diff -Nur secure_delete-3.1-old//sswap.1 secure_delete-3.1/sswap.1
--- secure_delete-3.1-old//sswap.1 2011-06-16 14:36:13.119001280 +0300
+++ secure_delete-3.1/sswap.1 2011-06-16 14:36:22.263001009 +0300
@@ -106,5 +106,5 @@
(1),
.I sfill
(1),
-.I smem
+.I sdmem
(1)
+44
View File
@@ -0,0 +1,44 @@
<?xml version="1.0" ?>
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>secure-delete</Name>
<Homepage>https://github.com/GIJack/secure_delete</Homepage>
<Packager>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>GPLv2</License>
<IsA>app:console</IsA>
<Summary>Secure delete utilities</Summary>
<Description>Secure file/disk/swap/memory erasure utilities.</Description>
<Archive sha1sum="4bca843eb26aefc4843b2b2730c017f3e1440f51" type="targz">https://github.com/GIJack/secure_delete/archive/refs/tags/3.1-a.tar.gz</Archive>
<Patches>
<Patch level="1">makefile.patch</Patch>
<Patch level="1">deplibs.patch</Patch>
<Patch level="1">flush.patch</Patch>
<Patch level="1">sdmem.patch</Patch>
<Patch level="1">cc.patch</Patch>
<Patch level="1">mode_moderate.patch</Patch>
</Patches>
</Source>
<Package>
<Name>secure-delete</Name>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="doc">/usr/share/doc/secure-delete</Path>
<Path fileType="man">/usr/share/man</Path>
</Files>
</Package>
<History>
<Update release="1">
<Date>2022-10-20</Date>
<Version>3.1</Version>
<Comment>First release</Comment>
<Name>Ali Cengiz Kurt</Name>
<Email>alicengizkurt@gmail.com</Email>
</Update>
</History>
</PISI>
@@ -0,0 +1,8 @@
<?xml version="1.0" ?>
<PISI>
<Source>
<Name>secure-delete</Name>
<Summary xml:lang="tr">Güvenli silme araçları</Summary>
<Description xml:lang="tr">Güvenli dosya/disk/takas alanı/hafıza silme araçları.</Description>
</Source>
</PISI>