<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent changes to bugs</title><link href="https://sourceforge.net/p/cryptcat/bugs/" rel="alternate"/><link href="https://sourceforge.net/p/cryptcat/bugs/feed.atom" rel="self"/><id>https://sourceforge.net/p/cryptcat/bugs/</id><updated>2007-12-16T06:22:11Z</updated><subtitle>Recent changes to bugs</subtitle><entry><title>Problem with Security Fix for Windows Version</title><link href="https://sourceforge.net/p/cryptcat/bugs/5/" rel="alternate"/><published>2007-12-16T06:22:11Z</published><updated>2007-12-16T06:22:11Z</updated><author><name>Kit Sczudlo</name><uri>https://sourceforge.net/u/kscuzz/</uri></author><id>https://sourceforge.net96677c4df3665619eba773087e464df2dfb25429</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;When attempting to compile with GAPING_SECURITY_HOLE on Microsoft Visual Studio 6.0 I get three errors:&lt;/p&gt;
&lt;p&gt;doexec.c&lt;br /&gt;
c:\...\cryptcat-nt-1.2.1\nt\doexec.c(438) : error C2065: 'RecvBuffer' : undeclared identifier&lt;br /&gt;
c:\...\cryptcat-nt-1.2.1\nt\doexec.c(438) : error C2109: subscript requires array or pointer type&lt;br /&gt;
c:\...\cryptcat-nt-1.2.1\nt\doexec.c(438) : error C2109: subscript requires array or pointer type&lt;/p&gt;
&lt;p&gt;To fix it, you have to undo the actual "fix" part of it, but if you replace:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
if (RecvBuffer[0] == '\n' || RecvBuffer[0] == '\r' || BufferCnt &amp;gt; BUFFER_SIZE-1) {&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
with:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
if (Buffer[BufferCnt - 1] == '\n' || Buffer[BufferCnt - 1] == '\r' || BufferCnt &amp;gt; BUFFER_SIZE-1)&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
It will work.&lt;/p&gt;
&lt;p&gt;I tried adapting the code to read only one byte at a time, but the farm9crypt_read() function ignored the length of 1 for the size, and read back as much data as it wanted to.&lt;/p&gt;
&lt;p&gt;I don't know any cryptography, nor do I understand much of the code in the farm9crypt.cpp file, but could it be adapted to read fewer bytes?&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>segfault in listen mode</title><link href="https://sourceforge.net/p/cryptcat/bugs/4/" rel="alternate"/><published>2007-11-25T08:50:13Z</published><updated>2007-11-25T08:50:13Z</updated><author><name>Paul Wise</name><uri>https://sourceforge.net/u/pabs3/</uri></author><id>https://sourceforge.netcc0777b60dab72ac95f224e76b4414510d860d01</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;a href="http://bugs.debian.org/431010" rel="nofollow"&gt;http://bugs.debian.org/431010&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;cryptcat segfaults in listen mode due to some kind of overflow. A patch is available here:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=21;filename=cryptcat-farm9crypt_read-patch.diff;att=1;bug=431010" rel="nofollow"&gt;http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=21;filename=cryptcat-farm9crypt_read-patch.diff;att=1;bug=431010&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Detailed analysis is available here:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=21;att=0;bug=431010" rel="nofollow"&gt;http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=21;att=0;bug=431010&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>VU#165099 patch</title><link href="https://sourceforge.net/p/cryptcat/bugs/3/" rel="alternate"/><published>2005-08-10T00:35:31Z</published><updated>2005-08-10T00:35:31Z</updated><author><name>Asier</name><uri>https://sourceforge.net/u/asier02/</uri></author><id>https://sourceforge.net1b6a2935a1997966ad73f2b73bfdd745043a8988</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;In few words this patch solves VU#165099 Cert &lt;br /&gt;
vulnerability for Cryptcat for Unix.&lt;/p&gt;
&lt;p&gt;In order to apply apply the patch execute:&lt;br /&gt;
tar xfz cyptcat_20031202.tar.gz&lt;br /&gt;
gunzip cryptcat.solves_vu165099.diff.gz &lt;br /&gt;
cd cryptcat_20031202                          &lt;br /&gt;
patch -p1 &amp;lt; ../cryptcat.solves_cvu165099.diff &lt;br /&gt;
make linux        &lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;In order to test it execute:&lt;br /&gt;
./cryptcat -kwhateverkey -l -p 1234 -e /bin/cat&lt;br /&gt;
(from another terminal) ./cryptcat -kwhateverkey &lt;br /&gt;
localhost 1234&lt;/p&gt;
&lt;p&gt;Tested on Linux.&lt;/p&gt;
&lt;p&gt;When original version of crypcat executed a program &lt;br /&gt;
with -e option the code that encrypted/decrypted &lt;br /&gt;
comunication was destroyed bye exec. So, parent &lt;br /&gt;
process must not be destroyed. We have to create a &lt;br /&gt;
child process, communicate with parent trough a &lt;br /&gt;
bidirectional Unix socket, exec on child so parent lasts &lt;br /&gt;
and encryption/decryption code is not destroyed.&lt;/p&gt;
&lt;p&gt;I've tried to contact with both Farm9 and Cert and have &lt;br /&gt;
no response from them.&lt;/p&gt;
&lt;p&gt;More info on my personal web&lt;br /&gt;
&lt;a href="http://semevalaolla.dyn.ee/~ara/dwn/cryptcat/" rel="nofollow"&gt;http://semevalaolla.dyn.ee/~ara/dwn/cryptcat/&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>cryptcat has an endian problem</title><link href="https://sourceforge.net/p/cryptcat/bugs/2/" rel="alternate"/><published>2003-11-05T23:25:06Z</published><updated>2003-11-05T23:25:06Z</updated><author><name>Ted Nolan</name><uri>https://sourceforge.net/u/userid-663890/</uri></author><id>https://sourceforge.neta6bdb1584e07084546b7884c2c27d45e8036ff8c</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Cryptcat compiled on a big-endian architecture like&lt;br /&gt;
Sparc will not talk with cryptcat compiled on a&lt;br /&gt;
little-endian architecture like Pentium.&lt;/p&gt;
&lt;p&gt;The problem is with the macros for extracting specific&lt;br /&gt;
bytes from a 4 byte word.  The b0(x) macro is supposed&lt;br /&gt;
to extract the least significant byte, the b1(x) macro&lt;br /&gt;
the next least significant, the b2(x) macro the next&lt;br /&gt;
least significant byte and the b3(x) macro the most&lt;br /&gt;
significant byte.&lt;/p&gt;
&lt;p&gt;These macros are implemented in terms of the _b(x,n)&lt;br /&gt;
macro, which extracts the n%4 th byte from x.&lt;/p&gt;
&lt;p&gt;Unfortunately, the macros as defined will work&lt;br /&gt;
correctly on little-endian machines, but not big-endian&lt;br /&gt;
machines.&lt;/p&gt;
&lt;p&gt;I have fixed this by defining the _b() and bx() macros&lt;br /&gt;
as inline functions which do the right thing with&lt;br /&gt;
either endianness.  Unfortunately, I had to rename the&lt;br /&gt;
bx() macros to bxf() functions because the code uses&lt;br /&gt;
regular variables with the same name as the macros(!).&lt;br /&gt;
The solution is probably not bulletproof as it assumes&lt;br /&gt;
4 byte ints, but my impression is that the whole&lt;br /&gt;
program will fall apart if sizeof(int) != sizeof(long)&lt;br /&gt;
!=  sizeof(char*) != 4 anyway.&lt;/p&gt;
&lt;p&gt;After applying this fix, you can cryptcat between&lt;br /&gt;
Solaris/Sparc and Linux etc/Intel.&lt;/p&gt;
&lt;p&gt;I believe I have a context diff which can be applied to&lt;br /&gt;
twofish2.cc and twofish2.h to correct the problem.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>OpenBSD compat</title><link href="https://sourceforge.net/p/cryptcat/bugs/1/" rel="alternate"/><published>2001-06-23T02:55:47Z</published><updated>2001-06-23T02:55:47Z</updated><author><name>Anonymous</name><uri>https://sourceforge.net/u/userid-None/</uri></author><id>https://sourceforge.net02ca75dd37fc13d3f14e968b95b100a5ce6041f4</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;on line 2162 &lt;/p&gt;
&lt;p&gt;2161:        HOSTENT *phostent;&lt;br /&gt;
2162:        int x;&lt;br /&gt;
2163:        BOOL b;&lt;/p&gt;
&lt;p&gt;'int x' =&amp;amp;gt; 'unsigned x'&lt;/p&gt;
&lt;p&gt;2161:        HOSTENT *phostent;&lt;br /&gt;
2162:        unsigned x;&lt;br /&gt;
2163:        BOOL b;&lt;/p&gt;
&lt;p&gt;in OpenBSD, gethostbyname() (line: 2246) requires the third argument to unsigned.&lt;/p&gt;
&lt;p&gt;I dont know how this effects other distro's&lt;/p&gt;
&lt;p&gt;Chris Lee&lt;br /&gt;
lee@mediawaveonline.com&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>