pgpenvelope-users Mailing List for pgpenvelope (Page 4)
Brought to you by:
ftobin
You can subscribe to this list here.
| 2000 |
Jan
(1) |
Feb
(22) |
Mar
(11) |
Apr
(9) |
May
(1) |
Jun
(9) |
Jul
(28) |
Aug
(9) |
Sep
(10) |
Oct
(26) |
Nov
|
Dec
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2001 |
Jan
(8) |
Feb
(2) |
Mar
|
Apr
(2) |
May
(6) |
Jun
|
Jul
(4) |
Aug
(8) |
Sep
(9) |
Oct
|
Nov
(2) |
Dec
(8) |
| 2002 |
Jan
(1) |
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
(3) |
Oct
|
Nov
|
Dec
|
| 2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
(2) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Friedhelm B. <bue...@ma...> - 2000-10-03 18:43:01
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 -----BEGIN PGP SIGNATURE----- Comment: Das Briefgeheimnis sowie das Post- und Comment: Fernmeldegeheimnis sind unverletzlich. Comment: Grundgesetz, Artikel 10, Abs 1. iD8DBQE52icrexQgz1uRM98RAuj9AKC5qZMCGhtdVSWTkS06i5PBPvw+OgCgn5G+ A3dJIZHcTEsGtWsKczhQZIA= =4Qo2 -----END PGP SIGNATURE----- |
|
From: Frank T. <ft...@ui...> - 2000-10-03 18:19:01
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Billy Donahue, at 07:14 -0400 on Tue, 3 Oct 2000, wrote: > Well, it did mangle my patch... Here's an unmangled^Wunsigned version. Actually, could you post it to the Patch Manger for pgpenvelope on SF? I can handle it cleanly there. https://sourceforge.net/patch/?group_id=1628 > By the way, I forgot to mention that to detect forged pgpenvelope borders, > the .procmailrc recipe has to run on EVERY message, not just those which > match /^-----PGP BEGIN/. I took the 'a' option out of the second > recipe in the pgpenvelope `manpage' so that this would be done. > I wish procmail's egrep could do the approximate match required for > forgery detection, but it can't. Right, good idea. - -- Frank Tobin http://www.uiuc.edu/~ftobin/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (FreeBSD) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iEYEARECAAYFAjnaIwUACgkQVv/RCiYMT6Ns6wCdH8iM3xOpoXp91XwkN/1JZC2R 1PsAni+P93/KOsTh+Oxze3ax/qEhged3 =vns2 -----END PGP SIGNATURE----- |
|
From: Billy D. <bi...@da...> - 2000-10-03 11:36:25
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Here's a test message after passing through the forgery filter. My actual pgpenvelope borders are set to be: > ---===[BEGIN PGPENVELOPE PROCESSED MESSAGE]===--- > ---===[END PGPENVELOPE INFORMATION]===--- > ---===[BEGIN PGPENVELOPE INFORMATION]===--- (but without the '> ', of course). Let's see which of these test strings is close enough to set off the bullshit alarm... ---===[BEGIN PGPENVELOPE PROCESSED MESSAGE]===--- > ---===[BEGIN PGPENVELOPE PROCESSED MESSAGE]===--- > > ---===[BEGIN PGPENVELOPE PROCESSED MESSAGE]===--- WARNING:---===[BEGIN PGPENVELOP PROCESSED MESSAGE]===--- WARNING:---===[BEGIN PGPENVELOP PROCESED MESSAGE]===--- - ---===[BEGIN PGPENVELOP PROCESED MASSAGE]===--- - ---===[begin pgpenvelope procesed massage]===--- - ---==[begin pgpenvelope procesed massage]==--- --===[BEGIN PGPENVELOPE PROCESSED MESSAGE]===-- WARNING:--===[BEGIN PGPENVELOPE PROCESSED MESSAGE]===-- WARNING:---===[BEGIN PGPENVELOPE PROCESSED MESSAGE]===--- WARNING:=--===[BEGIN PGPENVELOPE PROCESSED MESSAGE]===--- --===[BEGIN PGPENVELOPE PROCESSED MESSAGE]===--- -===[BEGIN PGPENVELOPE PROCESSED MESSAGE]===--- ===[BEGIN PGPENVELOPE PROCESSED MESSAGE]===--- WARNING:---===[BEGIN PGPENVELOPE INFORMATION]===--- .--===[BEGIN PGPENVELOPE INFORMATION]===--- --===[BEGIN PGPENVELOPE INFORMATION]===--- ---===[BEGIN PGPENVELOPE INFORMATION]===--- WARNING:---===[END PGPENVELOPE INFORMATION]===--- --===[END PGPENVELOPE INFORMATION]===--- .--===[END PGPENVELOPE INFORMATION]===--- ---===[END PGPENVELOPE INFORMATION]===--- A `WARNING:' was prepended to all lines which were close enough to cause an approximate string match at column 0 with a pgpenvelope border. - -- "The Funk, the whole Funk, and nothing but the Funk." Linux barcode software mirror: http://dadadada.net/cuecat Billy Donahue <mailto:bi...@da...> -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (GNU/Linux) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iD8DBQE52cS1+2VvpwIZdF0RArSwAJwMoI54WSUV5Iv0N3Kk3F2JQSN1uACdFCwO oKqKCGiXbsxHXTHN8rrXf+8= =JEvA -----END PGP SIGNATURE----- |
|
From: Billy D. <bi...@da...> - 2000-10-03 11:14:44
|
On Tue, 3 Oct 2000, Billy Donahue wrote:
> Here's a patch to do forgery checks. They are enabled by default.
> You'll need to get String::Approx from CPAN for this to work.
> I've been testing it out and it's working really well.
> I hope GPG doesn't mangle my patch..
Well, it did mangle my patch... Here's an unmangled^Wunsigned version.
By the way, I forgot to mention that to detect forged pgpenvelope borders,
the .procmailrc recipe has to run on EVERY message, not just those which
match /^-----PGP BEGIN/. I took the 'a' option out of the second
recipe in the pgpenvelope `manpage' so that this would be done.
I wish procmail's egrep could do the approximate match required for
forgery detection, but it can't.
diff --exclude Makefile --exclude blib --exclude CVS -ru pgpenvelope.orig/Makefile.PL pgpenvelope/Makefile.PL
--- pgpenvelope.orig/Makefile.PL Tue Oct 3 06:32:54 2000
+++ pgpenvelope/Makefile.PL Tue Oct 3 06:30:53 2000
@@ -14,6 +14,7 @@
'Term::ReadLine::Gnu' => 1.01,
'GnuPG::Interface' => 0.10,
'Class::MethodMaker' => 0.96,
+ 'String::Approx' => 3.13,
};
print
diff --exclude Makefile --exclude blib --exclude CVS -ru pgpenvelope.orig/lib/PGPEnvelope/Config.pm pgpenvelope/lib/PGPEnvelope/Config.pm
--- pgpenvelope.orig/lib/PGPEnvelope/Config.pm Tue Oct 3 06:32:54 2000
+++ pgpenvelope/lib/PGPEnvelope/Config.pm Tue Oct 3 06:21:56 2000
@@ -171,6 +171,16 @@
'signing-key'
=> PGPEnvelope::Config::Definition->new
( ARGCOUNT => 1 ),
+
+ 'forgery-warning'
+ => PGPEnvelope::Config::Definition->new
+ ( ARGCOUNT => 1,
+ DEFAULT => '[WARNING:not from pgpenvelope]',
+ ),
+
+ 'do-forgery-check'
+ => PGPEnvelope::Config::Definition->new
+ ( DEFAULT => 1 ),
);
@@ -321,6 +331,17 @@
#top-border = $defs{'top-border'}->{DEFAULT}
#info-top-border = $defs{'info-top-border'}->{DEFAULT}
#info-bottom-Border = $defs{'info-bottom-border'}->{DEFAULT}
+
+# An attacker could try to send you a forged message that looks as
+# though it had been passed through pgpenvelope_decrypt
+# and been verified.
+# If pgpenvelope_decrypt detects an input line matching any of your
+# pgpenvelope message borders, it will prepend a warning message
+# to those lines to warn you of a possible forgery unless you disable
+# the forgery-warning option by setting do-forgery-check to 0.
+
+#forgery-warning = $defs{'forgery-warning'}->{DEFAULT}
+#do-forgery-check = $defs{'do-forgery-check'}->{DEFAULT}
# This specifies if you only want to see the first uid and
# subkey information for keys to encrypt to when encrypting
diff --exclude Makefile --exclude blib --exclude CVS -ru pgpenvelope.orig/pgpenvelope pgpenvelope/pgpenvelope
--- pgpenvelope.orig/pgpenvelope Tue Oct 3 06:32:54 2000
+++ pgpenvelope/pgpenvelope Tue Oct 3 06:51:35 2000
@@ -121,7 +121,7 @@
* ^-----BEGIN PGP
pgpenvelope-backup
- :0 abfw
+ :0 bfw
| (path_to)/pgpenvelope_decrypt --filter
diff --exclude Makefile --exclude blib --exclude CVS -ru pgpenvelope.orig/pgpenvelope_decrypt pgpenvelope/pgpenvelope_decrypt
--- pgpenvelope.orig/pgpenvelope_decrypt Tue Oct 3 06:32:54 2000
+++ pgpenvelope/pgpenvelope_decrypt Tue Oct 3 06:22:46 2000
@@ -32,6 +32,8 @@
use IO::File;
use IO::Seekable;
use FindBin;
+use String::Approx qw( aindex );
+
use sigtrap 'handler' => 'die_signal_handler', 'normal-signals';
use GnuPG::Interface 0.10;
@@ -96,8 +98,14 @@
$gnupg->options->meta_interactive( not $is_filter );
$gnupg->gnupg_call( $program_call );
+my $do_forgery_check = $config->get('do-forgery-check');
+
PGP_MESSAGE: while ( <STDIN> )
{
+ if($do_forgery_check and &detect_forged_borders($_)){
+ $_ = $config->get('forgery-warning').$_;
+ }
+
unless ( /^-----BEGIN PGP / )
{
print STDOUT $_;
@@ -301,4 +309,30 @@
{
print $fh $zeros;
}
+}
+
+#
+# Detect forged pgpenvelope borders.
+#
+# Check a line of data.
+# Perform an approximate match against the pgpenvelope border messages.
+# If the match is not flush against the left side, then there is no
+# cause for alarm, and a 0 is returned
+#
+# return 1 if any lines were within a 10% margin. (User should be warned).
+# This means that up to 9 characters in 10 correctly matched
+# his border string without any edits.
+# return 0 if everything is okay.
+#
+sub detect_forged_borders
+{
+ my ($line) = @_;
+ my @bordernames = qw( top-border info-top-border info-bottom-border);
+ my @borders = map { $config->get($_) } @bordernames;
+
+ for my $b (@borders) {
+ return 1 if aindex($b, $line) == 0;
+ }
+ return 0;
}
+
--
"The Funk, the whole Funk, and nothing but the Funk."
Linux barcode software mirror: http://dadadada.net/cuecat
Billy Donahue <mailto:bi...@da...>
|
|
From: Billy D. <bi...@da...> - 2000-10-03 10:57:24
|
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Here's a patch to do forgery checks. They are enabled by default.
You'll need to get String::Approx from CPAN for this to work.
I've been testing it out and it's working really well.
I hope GPG doesn't mangle my patch..
diff --exclude Makefile --exclude blib --exclude CVS -ru pgpenvelope.orig/Makefile.PL pgpenvelope/Makefile.PL
- --- pgpenvelope.orig/Makefile.PL Tue Oct 3 06:32:54 2000
+++ pgpenvelope/Makefile.PL Tue Oct 3 06:30:53 2000
@@ -14,6 +14,7 @@
'Term::ReadLine::Gnu' => 1.01,
'GnuPG::Interface' => 0.10,
'Class::MethodMaker' => 0.96,
+ 'String::Approx' => 3.13,
};
print
diff --exclude Makefile --exclude blib --exclude CVS -ru pgpenvelope.orig/lib/PGPEnvelope/Config.pm pgpenvelope/lib/PGPEnvelope/Config.pm
- --- pgpenvelope.orig/lib/PGPEnvelope/Config.pm Tue Oct 3 06:32:54 2000
+++ pgpenvelope/lib/PGPEnvelope/Config.pm Tue Oct 3 06:21:56 2000
@@ -171,6 +171,16 @@
'signing-key'
=> PGPEnvelope::Config::Definition->new
( ARGCOUNT => 1 ),
+
+ 'forgery-warning'
+ => PGPEnvelope::Config::Definition->new
+ ( ARGCOUNT => 1,
+ DEFAULT => '[WARNING:not from pgpenvelope]',
+ ),
+
+ 'do-forgery-check'
+ => PGPEnvelope::Config::Definition->new
+ ( DEFAULT => 1 ),
);
@@ -321,6 +331,17 @@
#top-border = $defs{'top-border'}->{DEFAULT}
#info-top-border = $defs{'info-top-border'}->{DEFAULT}
#info-bottom-Border = $defs{'info-bottom-border'}->{DEFAULT}
+
+# An attacker could try to send you a forged message that looks as
+# though it had been passed through pgpenvelope_decrypt
+# and been verified.
+# If pgpenvelope_decrypt detects an input line matching any of your
+# pgpenvelope message borders, it will prepend a warning message
+# to those lines to warn you of a possible forgery unless you disable
+# the forgery-warning option by setting do-forgery-check to 0.
+
+#forgery-warning = $defs{'forgery-warning'}->{DEFAULT}
+#do-forgery-check = $defs{'do-forgery-check'}->{DEFAULT}
# This specifies if you only want to see the first uid and
# subkey information for keys to encrypt to when encrypting
diff --exclude Makefile --exclude blib --exclude CVS -ru pgpenvelope.orig/pgpenvelope pgpenvelope/pgpenvelope
- --- pgpenvelope.orig/pgpenvelope Tue Oct 3 06:32:54 2000
+++ pgpenvelope/pgpenvelope Tue Oct 3 06:51:35 2000
@@ -121,7 +121,7 @@
* ^-----BEGIN PGP
pgpenvelope-backup
- - :0 abfw
+ :0 bfw
| (path_to)/pgpenvelope_decrypt --filter
diff --exclude Makefile --exclude blib --exclude CVS -ru pgpenvelope.orig/pgpenvelope_decrypt pgpenvelope/pgpenvelope_decrypt
- --- pgpenvelope.orig/pgpenvelope_decrypt Tue Oct 3 06:32:54 2000
+++ pgpenvelope/pgpenvelope_decrypt Tue Oct 3 06:22:46 2000
@@ -32,6 +32,8 @@
use IO::File;
use IO::Seekable;
use FindBin;
+use String::Approx qw( aindex );
+
use sigtrap 'handler' => 'die_signal_handler', 'normal-signals';
use GnuPG::Interface 0.10;
@@ -96,8 +98,14 @@
$gnupg->options->meta_interactive( not $is_filter );
$gnupg->gnupg_call( $program_call );
+my $do_forgery_check = $config->get('do-forgery-check');
+
PGP_MESSAGE: while ( <STDIN> )
{
+ if($do_forgery_check and &detect_forged_borders($_)){
+ $_ = $config->get('forgery-warning').$_;
+ }
+
unless ( /^-----BEGIN PGP / )
{
print STDOUT $_;
@@ -301,4 +309,30 @@
{
print $fh $zeros;
}
+}
+
+#
+# Detect forged pgpenvelope borders.
+#
+# Check a line of data.
+# Perform an approximate match against the pgpenvelope border messages.
+# If the match is not flush against the left side, then there is no
+# cause for alarm, and a 0 is returned
+#
+# return 1 if any lines were within a 10% margin. (User should be warned).
+# This means that up to 9 characters in 10 correctly matched
+# his border string without any edits.
+# return 0 if everything is okay.
+#
+sub detect_forged_borders
+{
+ my ($line) = @_;
+ my @bordernames = qw( top-border info-top-border info-bottom-border);
+ my @borders = map { $config->get($_) } @bordernames;
+
+ for my $b (@borders) {
+ return 1 if aindex($b, $line) == 0;
+ }
+ return 0;
}
+
- --
"The Funk, the whole Funk, and nothing but the Funk."
Linux barcode software mirror: http://dadadada.net/cuecat
Billy Donahue <mailto:bi...@da...>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.3 (GNU/Linux)
Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/
iD8DBQE52buP+2VvpwIZdF0RAgckAKCB0YJDGhsXVE1Q0MFT12np8TsKJQCeOlYW
F29jKTHJiy4ST98SzEsBQ7Q=
=s1Hg
-----END PGP SIGNATURE-----
|
|
From: Billy D. <bi...@da...> - 2000-10-03 09:27:37
|
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Tue, 3 Oct 2000, Frank Tobin wrote:
> This is a harder task to determine than one would think (I think).
I found a module that will help.. `String::Approx'
Here's my idea for using it. Don't consider this a patch or
anything.. I'm actually going to test this out.
use String::Approx qw( aindex );
#
# Detect forged pgpenvelope borders.
#
# Check a line of data.
# Perform an approximate match against the pgpenvelope border messages.
# If the match is not flush against the left side, then there is no
# cause for alarm, and a 0 is returned
#
# return 1 if any lines were within a 10% margin. (User should be warned).
# This means that up to 9 characters in 10 correctly matched
# his border string without any edits.
# return 0 if everything is okay.
#
sub detect_forged_borders
{
my ($line) = @_;
my @bordernames = qw( top-border info-top-border info-bottom-border);
my @borders = map { $config->get($_) } @bordernames;
for my $b (@borders) {
return 1 if aindex($b, $line) == 0;
}
return 0;
}
- --
"The Funk, the whole Funk, and nothing but the Funk."
Linux barcode software mirror: http://dadadada.net/cuecat
Billy Donahue <mailto:bi...@da...>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.3 (GNU/Linux)
Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/
iD8DBQE52aaD+2VvpwIZdF0RAon/AJ4juIMzlhSgB6LS1hiszRWo3h+6wwCeMSnv
ZmOH3pwY6ZQco5ihP5dvPPo=
=aNPW
-----END PGP SIGNATURE-----
|
|
From: Billy D. <bi...@da...> - 2000-10-03 08:11:02
|
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Tue, 3 Oct 2000, Frank Tobin wrote:
> Billy Donahue, at 03:18 -0400 on Tue, 3 Oct 2000, wrote:
>
> > A line starting with, and matching above some threshold (say 80%) of,
> > a user's pgpenvelope border should be flagged with (or followed by) a
> > "WARNING:" of some kind..
>
> This is a harder task to determine than one would think (I think).
Hmm.. It can't be _that_ hard in Perl.. I suppose you're open to patches...
> > It would be better to come up with a real solution to the problem.
>
> The real solution is to do one store/show verification information
> separately from the message itself. Graphical mailers can do this by
> popping up another window. If $DISPLAY is set, when verification happens,
> I could pop up an X message somehow (possibly via xmessage).
Eek.. if it happens in procmail, that may get noisy on an unattended
terminal. Even if I'm just busy I may not want to see the messages.
(I usually stay logged in while I'm asleep in the next room).. I like
the idea of 'out of band' data, though. Maybe the procmail verifier
can slip some pattern like:
-----pgpenvelope-filter-verified id="${id}" -----
into the message, and then a pine filter rule can detect the inserted
pattern and run a small and QUICK filter program.. The filter program
might do a lookup of ${id} into a verification log and present a message
screen saying:
Yes, this message was really and truly verified by pgpenvelope.
An entry in my logs shows that id="${id}" was verified as:
<press any key>
or
You may be looking at a forged message. I don't remember
verifying it, yet it carries pgpenvelope borders.
<press any key>
I realize that much of the charm of the pgpenvelope procmail filter
is that one doesn't need a MUA filter to run on verified messages,
and that this scheme means that you need a filter again.
Anyway, this scheme does the verification offline, but keeps a record
of verifications which is looked up at display-time.
- --
"The Funk, the whole Funk, and nothing but the Funk."
Linux barcode software mirror: http://dadadada.net/cuecat
Billy Donahue <mailto:bi...@da...>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.3 (GNU/Linux)
Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/
iD8DBQE52ZSR+2VvpwIZdF0RAoMgAJ9XW5KuZqX0g8cCMJ7jP6uCP2nn/QCgkQfK
CUdibSlhhYYiKERHIZ9If+Y=
=CrqY
-----END PGP SIGNATURE-----
|
|
From: Frank T. <ft...@ui...> - 2000-10-03 07:39:41
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Billy Donahue, at 03:18 -0400 on Tue, 3 Oct 2000, wrote: > A line starting with, and matching above some threshold (say 80%) of, > a user's pgpenvelope border should be flagged with (or followed by) a > "WARNING:" of some kind.. This is a harder task to determine than one would think (I think). > Okay, I've done this.. Now I'm safe... :) But now I've got to guard all > of my procmail-verified messages, and make sure I strip the pgpenvelope > borders when I quote things or I risk disclosing my secret markers. > It would be better to come up with a real solution to the problem. The real solution is to do one store/show verification information separately from the message itself. Graphical mailers can do this by popping up another window. If $DISPLAY is set, when verification happens, I could pop up an X message somehow (possibly via xmessage). > The procmail pgpenvelope filter is convenient, but is it worth the risk > of false positives on signatures? Each user has to make that determination on his/her own. - -- Frank Tobin http://www.uiuc.edu/~ftobin/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (FreeBSD) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iEYEARECAAYFAjnZjTwACgkQVv/RCiYMT6OYZgCaAqqVwMkSsyKx2HCrDg6sfj+y wL0AninJX7aVqdJ0RcdeWvIFPy06QRK3 =qP9s -----END PGP SIGNATURE----- |
|
From: Billy D. <bi...@da...> - 2000-10-03 07:18:32
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Tue, 3 Oct 2000, Frank Tobin wrote: > -----pgpenvelope processed message----- > > Billy Donahue, at 00:55 -0400 on Tue, 3 Oct 2000, wrote: > > > If I send this forged message to someone using the procmail script, > > They will have no indication that it wasn't really decrypted by pgpenvelope > > (other than the fact that it doesn't show up in the pgpenvelope-backup folder). > > The forged message will look like pgpenvelope verified it. > > I've thought about this issue, and haven't come with a good way to solve > it yet. I could escape the lines if they match > > -----pgpenvelope processed message----- > > But, what if it's: > > ----pgpenvelope procesed message----- > > (notice, processed is spelled wrong). Your ordinary user is not going to > notice this, and neither will the script. That's a good point, but even that would be better than nothing.. Maybe changing top-border, info-top-border, and info-bottom-border to something which you can't misspell without noticing would mitigate this effect. `pgpenvelope processed message' is three big words... A line starting with, and matching above some threshold (say 80%) of, a user's pgpenvelope border should be flagged with (or followed by) a "WARNING:" of some kind.. > One additional thing I could do > is to add a: > > pgpenvelope_decrypt: Message decrypted by <user> on <hostname> > > ...when the message is decrypted, so this could help if the message is > sent to multiple people; if this statement was inserted, then it would > hold true for only one user the attacker targeted. This might help a bit. Most of the signed messages I get are from usenet or mailing lists. Outside of a large anonymous mailing list, the recipient list could be forged, too. A separate forgery could be sent to each person known to be using pgpenvelope. > Actually, the best solution, which just came to mind, is for each user to > define their own: > > #top-border = -----stuff checked by pgpenvelope----- > #info-top-border = -----pgpenvelope says----- > #info-bottom-Border = -----pgpenvelope is done----- > > If the user defines this to something non-standard, and the attacker > doesn't know them, then the user will notice that the message doesn't have > his 'personalized' headers. Yes, this also protects mailing lists, but it requires user effort. Okay, I've done this.. Now I'm safe... :) But now I've got to guard all of my procmail-verified messages, and make sure I strip the pgpenvelope borders when I quote things or I risk disclosing my secret markers. It would be better to come up with a real solution to the problem. Maybe a serial number of some kind? Actually, that doesn't help, does it? It would be useful to have something which is only good once, and which can be easily checked by the user. the filter could write to a log. But that isn't any easier to check than checking the procmail log or the pgpenvelope-backup mailbox, so what's the point, right? The procmail pgpenvelope filter is convenient, but is it worth the risk of false positives on signatures? - -- "The Funk, the whole Funk, and nothing but the Funk." Linux barcode software mirror: http://dadadada.net/cuecat Billy Donahue <mailto:bi...@da...> -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (GNU/Linux) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iD8DBQE52Yg/+2VvpwIZdF0RAl4GAKCHSDb43iiDYs6trZm9hauLoJYDTwCgoZst sr0zOGpGvc+TzYZiguf+YEc= =QhAs -----END PGP SIGNATURE----- |
|
From: Frank T. <ft...@ui...> - 2000-10-03 06:14:40
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Billy Donahue, at 00:55 -0400 on Tue, 3 Oct 2000, wrote: > If I send this forged message to someone using the procmail script, > They will have no indication that it wasn't really decrypted by pgpenvelope > (other than the fact that it doesn't show up in the pgpenvelope-backup folder). > The forged message will look like pgpenvelope verified it. I've thought about this issue, and haven't come with a good way to solve it yet. I could escape the lines if they match - -----pgpenvelope processed message----- But, what if it's: - ----pgpenvelope procesed message----- (notice, processed is spelled wrong). Your ordinary user is not going to notice this, and neither will the script. One additional thing I could do is to add a: pgpenvelope_decrypt: Message decrypted by <user> on <hostname> ...when the message is decrypted, so this could help if the message is sent to multiple people; if this statement was inserted, then it would hold true for only one user the attacker targeted. Actually, the best solution, which just came to mind, is for each user to define their own: #top-border = -----pgpenvelope processed message----- #info-top-border = -----pgpenvelope information----- #info-bottom-Border = -----end pgpenvelope information----- to maybe something like: #top-border = -----stuff checked by pgpenvelope----- #info-top-border = -----pgpenvelope says----- #info-bottom-Border = -----pgpenvelope is done----- If the user defines this to something non-standard, and the attacker doesn't know them, then the user will notice that the message doesn't have his 'personalized' headers. > By the way, I believe that as of Oct 1, 2000, 'digital signatures' > (whatever that means) are legally binding. Actually, I think it's 'electronic signatures', which are just electronic renderings of your handwritten signature. - -- Frank Tobin http://www.uiuc.edu/~ftobin/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (FreeBSD) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iEYEARECAAYFAjnZeUwACgkQVv/RCiYMT6POpgCeKBhDYezsfMeoaYxTDiiachVq L4oAn1tye+kpqqEZyaXF0P6yFw/lGYwZ =L8SE -----END PGP SIGNATURE----- |
|
From: Billy D. <bi...@da...> - 2000-10-03 04:55:16
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 > -----pgpenvelope processed message----- > > I agree to pay you $1,000,000 dollars. > > -- > "The Funk, the whole Funk, and nothing but the Funk." > Linux barcode software mirror: http://dadadada.net/cuecat > Billy Donahue <mailto:bi...@da...> > > -----pgpenvelope information----- > Hash: SHA1 > Version: GnuPG v1.0.3 (GNU/Linux) > Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ > > gpg: Signature made Tue Oct 3 00:45:07 2000 EDT using DSA key ID 0219745D > gpg: Good signature from "Billy Donahue <bi...@bi...>" > gpg: aka "Billy Donahue <bi...@da...>" > gpg: aka "Billy Donahue <bi...@es...>" > gpg: aka "Billy Donahue <bi...@bi...>" > > pgpenvelope_decrypt: message processed at Tue Oct 3 00:45:10 2000 > > -----end pgpenvelope information----- > If I send this forged message to someone using the procmail script, They will have no indication that it wasn't really decrypted by pgpenvelope (other than the fact that it doesn't show up in the pgpenvelope-backup folder). The forged message will look like pgpenvelope verified it. By the way, I believe that as of Oct 1, 2000, 'digital signatures' (whatever that means) are legally binding. - -- "The Funk, the whole Funk, and nothing but the Funk." Linux barcode software mirror: http://dadadada.net/cuecat Billy Donahue <mailto:bi...@da...> -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (GNU/Linux) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iD8DBQE52Wav+2VvpwIZdF0RAr6TAKCgSueiGlD7SpV9AFteuO0EyQZbEACaAhjc 1tU9NRrcw85Q5Tc5yQiW2Vc= =YtIA -----END PGP SIGNATURE----- |
|
From: Frank T. <ft...@ui...> - 2000-09-30 21:46:28
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Billy Donahue, at 16:35 -0400 on Sat, 30 Sep 2000, wrote: > > There is always room for improvement :) One solution which I like is to > > have a pgpenvelope daemon running alonside the Pine process, and the > > program called by Pine be very small and concise, passing on all the work > > to it's big-bro (the one running outside of Pine). > > I brought this up a while ago.. Is there an implementation of this, > or is it just wishful thinking? Currently wishful thinking, but I don't think it'd be that hard to do, in all honesty. It'd be pgpenvelope-3, I think. - -- Frank Tobin http://www.uiuc.edu/~ftobin/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (FreeBSD) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iEYEARECAAYFAjnWXy8ACgkQVv/RCiYMT6Nz9gCeMyeaQ0ZVKfRrXj3rg/vu5ySg 6uQAn1M91LMtLBETA2uj2xYSnZjZ3jt3 =Oj+Q -----END PGP SIGNATURE----- |
|
From: Billy D. <bi...@da...> - 2000-09-30 20:35:46
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Sat, 30 Sep 2000, Frank Tobin wrote: > There is always room for improvement :) One solution which I like is to > have a pgpenvelope daemon running alonside the Pine process, and the > program called by Pine be very small and concise, passing on all the work > to it's big-bro (the one running outside of Pine). I brought this up a while ago.. Is there an implementation of this, or is it just wishful thinking? - -- "The Funk, the whole Funk, and nothing but the Funk." Linux barcode software mirror: http://dadadada.net/cuecat Billy Donahue <mailto:bi...@da...> -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (GNU/Linux) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iD8DBQE51k6b+2VvpwIZdF0RAqcEAKClVzQKDVGgacAlFytVlVKEmUbIowCeJOi6 8d0yfxMXrNufMRv4vJwlJNk= =zvhl -----END PGP SIGNATURE----- |
|
From: Frank T. <ft...@ui...> - 2000-09-30 20:31:24
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Johan Lundberg, at 22:25 +0200 on Sat, 30 Sep 2000, wrote: > Thank you for the quick response... While I have your attention. I have a > harder question, namely: How come pgpenvelope_decrypt takes so long time to > check signatures? An example: Because of the modules being loaded each time pgpenvelope is started, unfortunately. This can be helped by using the procmail filter described in the documentation; with this, one can verify messages once when they arrive in your mailbox, instead of each time they are read by pgpenvelope. Another solution is to try using Pine's pipe (|) command to send the message to pgpenvelope_decrypt when needed, instead of having it filtered every time automatically. > Maybe you define some functions and/or load some librarys that is not > always used, 'just in case'. Is there any room for improvement? There is always room for improvement :) One solution which I like is to have a pgpenvelope daemon running alonside the Pine process, and the program called by Pine be very small and concise, passing on all the work to it's big-bro (the one running outside of Pine). - -- Frank Tobin http://www.uiuc.edu/~ftobin/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (FreeBSD) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iEYEARECAAYFAjnWTZcACgkQVv/RCiYMT6OZvACeMeuRbC4vnmglrZMYEzGKeAT2 +84AoK6RrLd2OqS7+qq3eo3o4zJ6qB3B =X7Zc -----END PGP SIGNATURE----- |
|
From: Frank T. <ft...@ui...> - 2000-09-30 19:36:15
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Johan Lundberg, at 21:33 +0200 on Sat, 30 Sep 2000, wrote: > The problem shows when i try to send a message when > the message is large (for example 293k). pgpevelope > just freezes when it should encrypt: Thanks for the heads-up. This is a known problem with encrypting messages at the moment. It has to do with buffering/IO problems with pipes. I solved this problem with pgpenvelope_decrypt, but for some reason I didn't think of applying it to pgpenvelope_encrypt. > Committing with GnuPG (gpg)... > performing encryption to DCA4B0CF466412A0... > <and here nothing happends... so i have to CTRL-C> - -- Frank Tobin http://www.uiuc.edu/~ftobin/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (FreeBSD) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iEYEARECAAYFAjnWQKkACgkQVv/RCiYMT6N9JQCfVULIqmyhkfBT2roD/HhntHeT BvcAoIMs7G3oDrsamBfajYCpB6XeP3+2 =BHVs -----END PGP SIGNATURE----- |
|
From: Frank T. <ft...@ui...> - 2000-09-22 00:19:32
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 L. Sassaman, at 13:43 -0700 on Thu, 21 Sep 2000, wrote: > Suggestion: rather than insert the ##### line, insert a \n. > > If you have the filter set to run only if it is a _LEADING_ PGP message, > you won' get stuck in a loop... This is a good idea, except for the fact that the recommended filter is _BEGINNING_, not LEADING_ (to allow for other in-body signed messages than just the whole thing being signed, though I guess it's not necessary). - -- Frank Tobin http://www.uiuc.edu/~ftobin/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (FreeBSD) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iEYEARECAAYFAjnKpZIACgkQVv/RCiYMT6MfowCeMfyBRQtSpSDNydKVYRGbOHL8 WvIAoKw/63oqO6SGqiFW7AR50O12LBWQ =Ba46 -----END PGP SIGNATURE----- |
|
From: L. S. <ra...@qu...> - 2000-09-21 20:43:19
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Suggestion: rather than insert the ##### line, insert a \n. If you have the filter set to run only if it is a _LEADING_ PGP message, you won' get stuck in a loop... - --Len. On Thu, 21 Sep 2000, Frank Tobin wrote: > Billy Donahue, at 13:20 -0400 on Wed, 20 Sep 2000, wrote: > > > I have pgpenvelope set to ask me before running. > > If I choose no, I get escaped '#####-----BEGIN PGP etc' text. > > I chose 'NO', damnit! Don't touch my message! > > How about it? > > I can't do that, sorry; Pine will just re-run it's filter-checking > mechanisms over the message, and an infinite loop will occur. > > > I get some mail about PGP with the headers, but not signed with PGP, > > and this throws pgpenvelope for a loop, so I say 'no' to verifying those > > messages, and I need to see the original message. > > I wish you could too. > > All this in-body PGP signing is starting to really irk me; it causes so > many problems. I'm leaning more towards MIME every day; it really is > better, IMO. > > -- > Frank Tobin http://www.uiuc.edu/~ftobin/ > __ L. Sassaman Security Architect | "Lose your dreams and you Technology Consultant | will lose your mind." | http://sion.quickie.net | --The Rolling Stones -----BEGIN PGP SIGNATURE----- Comment: OpenPGP Encrypted Email Preferred. iD8DBQE5ynLjPYrxsgmsCmoRAoyxAKDsq9NPdJcEL+YUnuUI2LgCo+Am2QCfaRJG PTfH0EttQT81Afkcwe96Abk= =ES7y -----END PGP SIGNATURE----- |
|
From: Frank T. <ft...@ui...> - 2000-09-21 05:53:41
|
Billy Donahue, at 13:20 -0400 on Wed, 20 Sep 2000, wrote: > I have pgpenvelope set to ask me before running. > If I choose no, I get escaped '#####-----BEGIN PGP etc' text. > I chose 'NO', damnit! Don't touch my message! > How about it? I can't do that, sorry; Pine will just re-run it's filter-checking mechanisms over the message, and an infinite loop will occur. > I get some mail about PGP with the headers, but not signed with PGP, > and this throws pgpenvelope for a loop, so I say 'no' to verifying those > messages, and I need to see the original message. I wish you could too. All this in-body PGP signing is starting to really irk me; it causes so many problems. I'm leaning more towards MIME every day; it really is better, IMO. -- Frank Tobin http://www.uiuc.edu/~ftobin/ |
|
From: Billy D. <bi...@da...> - 2000-09-20 17:20:42
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 I have pgpenvelope set to ask me before running. If I choose no, I get escaped '#####-----BEGIN PGP etc' text. I chose 'NO', damnit! Don't touch my message! How about it? I get some mail about PGP with the headers, but not signed with PGP, and this throws pgpenvelope for a loop, so I say 'no' to verifying those messages, and I need to see the original message. - -- "The Funk, the whole Funk, and nothing but the Funk." Billy Donahue <mailto:bi...@da...> -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (GNU/Linux) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iD8DBQE5yPHm+2VvpwIZdF0RAr/fAJ9sDC6OTY8ymIp8CWPmmQ3hXv5PEQCfTK+A TupBfnhGPVqfOzBJFlo3LTw= =BwWy -----END PGP SIGNATURE----- |
|
From: Frank T. <ft...@ui...> - 2000-09-14 02:09:05
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 L. Sassaman, at 15:30 -0700 on Wed, 13 Sep 2000, wrote: > In the prefs file we could have the email address to look for, and then > the keys to offer for encryption. Sounds fairly easy to do... thoughts? Interestingly, I wrote exactly about this once before to the gnupg-users list. Given the nature of the functionality, I think the best approach would be to have a wrapper around GnuPG that was capable of substituting keyids or lists of keyids according to an addressbook sort of fashion. Putting this feature into pgpenvelope itself is feasible, but I think it'd be better to just write a simple wrapper for GnuPG that could perform argument-substitution in the desired fashion. - -- Frank Tobin http://www.uiuc.edu/~ftobin/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.2 (FreeBSD) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iEYEARECAAYFAjnAMyUACgkQVv/RCiYMT6Pq5wCgsUnsVsZa4DJ+VkZ2aQgdir5B A4YAnAtU5EfOTmpMYkjCYPwntITu/PC/ =nuIT -----END PGP SIGNATURE----- |
|
From: L. S. <ra...@qu...> - 2000-09-13 22:31:00
|
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
I was thinking, rather than beat on Werner to put this into GnuPG, I could
see if Frank would be interested in adding this as a feature in
pgpenvelope. Unless it's already there and I have missed it...
In the prefs file we could have the email address to look for, and then
the keys to offer for encryption. Sounds fairly easy to do... thoughts?
__
L. Sassaman
Security Architect | "Lose your dreams and you
Technology Consultant | will lose your mind."
|
http://sion.quickie.net | --The Rolling Stones
- ---------- Forwarded message ----------
Date: Wed, 13 Sep 2000 13:34:06 -0700 (PDT)
From: L. Sassaman <ra...@qu...>
To: gnu...@gn...
Subject: Groups
I was wondering if GnuPG had anything similar to the PGP Groups
functionality.
What I want is to be able to have an email address (call it
li...@qu...), and when I encrypt to "li...@qu..." the message is
encrypted to a set of keys that I have specified as being tied to
"li...@qu...".
I could set this up in the config file, listing the string of the email
address, followed by the key-ids, or something along those lines.
Does this functionality already exist? (It't not documented.)
-----BEGIN PGP SIGNATURE-----
Comment: OpenPGP Encrypted Email Preferred.
iD8DBQE5wAAgPYrxsgmsCmoRAt9EAKDi6oeR9aL0oKMDIrliToP7D4TVNQCgnBo4
YlagF9NWtJ94tVUyiZbu/BU=
=FQ5I
-----END PGP SIGNATURE-----
|
|
From: Friedhelm B. <bue...@bb...> - 2000-08-23 10:00:33
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Tue, 22 Aug 2000, Frank Tobin wrote: > > > Provided that you can get to the `From:' address at filter time. > > Doesn't the filter just get the body of the message? > > The _RECIPIENTS_ are passed to pgpenvelope on the command line. > > If there's an analogous _SENDER_ that would be cool... > > I can get the proper information if the whole body of the message is > passed to pgpenvelope, including headers. > > Options would be selected based upon regex matches. > passing headers to pgpenvelope is easy .. simply change the sending-filters from "/usr/local/bin/pgpenvelope_encrypt _RECIPIENTS_" to "/usr/local/bin/pgpenvelope_encrypt _RECIPIENTS_ _INCLUDEALLHDRS_" from the onlinehelp : _INCLUDEALLHDRS_ When the command is executed, this token indicates that the headers of the message will be passed down the input stream before the message text. greetings ! -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.2 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE5o6Crm1c1Nejq1vkRAiWKAJoC6FCGRUgQeRTDx77U5Od+amR57gCfaG5P 9X05hDK5F28/yUnrCxoqDW8= =Q59L -----END PGP SIGNATURE----- |
|
From: Frank T. <ft...@ui...> - 2000-08-23 00:35:14
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Billy Donahue, at 18:08 -0400 on Tue, 22 Aug 2000, wrote: > Provided that you can get to the `From:' address at filter time. > Doesn't the filter just get the body of the message? > The _RECIPIENTS_ are passed to pgpenvelope on the command line. > If there's an analogous _SENDER_ that would be cool... I can get the proper information if the whole body of the message is passed to pgpenvelope, including headers. Options would be selected based upon regex matches. - -- Frank Tobin http://www.uiuc.edu/~ftobin/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.2 (FreeBSD) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iEYEARECAAYFAjmjHEAACgkQVv/RCiYMT6P7VwCeNFR7/xKds1cWTYrRQyyy/y3g VnUAn1Tgv48HPIP0DOCrNQRm5X51IgdS =t1uh -----END PGP SIGNATURE----- |
|
From: Frank T. <ft...@ui...> - 2000-08-23 00:33:28
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 L. Sassaman, at 14:21 -0700 on Tue, 22 Aug 2000, wrote: > With pine's "roles" feature, one is able to set "on the fly" the > "From" address when replying to messages that match a regex. > > It would be very useful for me if pgpenvelope could look at the > "From:" field, and determine the default signing key and default > encrypt-to key based on a "From:" match. I would, of course, want to be > required to explicitly define what keys are used when, but I think this > could be a beneficial feature. I've thought about such a thing, being able to act upon headers. However, if I was to do such a thing, I'd come up with a simple language to handle setting all sorts of options, I think (sorta like procmail). - -- Frank Tobin http://www.uiuc.edu/~ftobin/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.2 (FreeBSD) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iEYEARECAAYFAjmjG9MACgkQVv/RCiYMT6PhXACfQShZsRrF7l121/oLbbVKITMh kiIAnjYDZmhCW7XgRK8kbQFuxL1OSzJb =DpKN -----END PGP SIGNATURE----- |
|
From: Billy D. <bi...@da...> - 2000-08-22 22:08:20
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Tue, 22 Aug 2000, L. Sassaman wrote: > With pine's "roles" feature, one is able to set "on the fly" the > "From" address when replying to messages that match a regex. I've never heard of `roles' before, sounds like something I need. I'm going to look into that now.. Thanks. > It would be very useful for me if pgpenvelope could look at the > "From:" field, and determine the default signing key and default > encrypt-to key based on a "From:" match. I would, of course, want to be > required to explicitly define what keys are used when, but I think this > could be a beneficial feature. Provided that you can get to the `From:' address at filter time. Doesn't the filter just get the body of the message? The _RECIPIENTS_ are passed to pgpenvelope on the command line. If there's an analogous _SENDER_ that would be cool... - -- "The Funk, the whole Funk, and nothing but the Funk." Billy Donahue <mailto:bi...@da...> -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.2 (GNU/Linux) Comment: pgpenvelope 2.9.0 - http://pgpenvelope.sourceforge.net/ iD8DBQE5ovnN+2VvpwIZdF0RAsBiAKCHrFhDngAx2KAvHhXWsxXQ7k1F6QCfSZzC udgApqBbKhA1ihBA2ERG56g= =9rMD -----END PGP SIGNATURE----- |