Package: /usr/sbin/apt-listbug
Version: 0.0.49
Severity: serious

apt-listbugs causes libsafe libc calls to detect access violation
Im not shure is it apt-listbug or ruby?
I suppose interpretor should never allow, even buggy program, to crash or make the itnerpreter corrupt own stack/memory which could mean that ruby have security hole (assuming it is not fault of libsafe that is reporting a false-positive) so I report it as Ruby bug


/usr/sbin/apt-listbugs list foo


Reading package fields... 0%

Reading package fields... Done


Reading package status... 0%

Reading package status... Done


Retrieving bug reports... 0% [0/1]Libsafe version 2.0.16
Detected an attempt to write across stack boundary.
Terminating /usr/bin/ruby1.8.
    uid=0  euid=0  pid=3139
Call stack:
    0xb7f6541c  /lib/libsafe.so.2.0.16
    0xb7f658a2  /lib/libsafe.so.2.0.16
    0xb7e98ac8  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9976e  /usr/lib/libruby1.8.so.1.8.4
    0xb7ea90ad  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb7c5e  /usr/lib/libruby1.8.so.1.8.4
    0xb7ebd811  /usr/lib/libruby1.8.so.1.8.4
    0xb7e92ca7  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9dbc7  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e70d  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b4a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7ea0fba  /usr/lib/libruby1.8.so.1.8.4
    0xb7ea2421  /usr/lib/libruby1.8.so.1.8.4
    0xb7e982b5  /usr/lib/libruby1.8.so.1.8.4
    0xb7eba091  /usr/lib/libruby1.8.so.1.8.4
    0xb7eba22e  /usr/lib/libruby1.8.so.1.8.4
    0xb7e92ca7  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9dbc7  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e70d  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b5b7  /usr/lib/libruby1.8.so.1.8.4
    0xb7ea6438  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9bcf8  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e386  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e70d  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b5b7  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9d57e  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e386  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e70d  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b4a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9a51e  /usr/lib/libruby1.8.so.1.8.4
    0xb7ea0fba  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b969  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9d0ee  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e386  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e70d  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b4a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9d57e  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e386  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e70d  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b4a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b438  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b752  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e386  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e70d  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b5b7  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b3cb  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9d57e  /usr/lib/libruby1.8.so.1.8.4
    0xb7ea0fba  /usr/lib/libruby1.8.so.1.8.4
    0xb7ea2421  /usr/lib/libruby1.8.so.1.8.4
    0xb7e80b9a  /usr/lib/libruby1.8.so.1.8.4
    0xb7e92c9b  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9dbc7  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e70d  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b4a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9d57e  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e386  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e70d  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b4a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b890  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9cba9  /usr/lib/libruby1.8.so.1.8.4
    0xb7ea0fba  /usr/lib/libruby1.8.so.1.8.4
    0xb7eaa8b4  /usr/lib/libruby1.8.so.1.8.4
    0xb7e92cbd  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9dbc7  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e70d  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9f0ea  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9f131  /usr/lib/libruby1.8.so.1.8.4
    0xb7e92ca7  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9dbc7  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e70d  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b4a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9d57e  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b438  /usr/lib/libruby1.8.so.1.8.4
    0xb7ea0fba  /usr/lib/libruby1.8.so.1.8.4
    0xb7ea2421  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3a1d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb2cdd  /usr/lib/libruby1.8.so.1.8.4
    0xb7efc9c5  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb2e14  /usr/lib/libruby1.8.so.1.8.4
    0xb7e982b5  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb2e8b  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3a4f  /usr/lib/libruby1.8.so.1.8.4
    0xb7e92c9b  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9dbc7  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e70d  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b4a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9d57e  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9a5c3  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e386  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9e70d  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b4a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9d57e  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9b752  /usr/lib/libruby1.8.so.1.8.4
    0xb7e9cba9  /usr/lib/libruby1.8.so.1.8.4
    0xb7ea86a9  /usr/lib/libruby1.8.so.1.8.4
    0xb7ea870c  /usr/lib/libruby1.8.so.1.8.4
    0xb7eaaa77  /usr/lib/libruby1.8.so.1.8.4
    0x80486ee   /usr/bin/ruby1.8
    0xb7ce5eab  /lib/tls/i686/cmov/libc-2.3.5.so
Overflow caused by memcpy()

=================================================================
=================================================================

debugging rubby:


[EMAIL PROTECTED]:/home/raf256/cre/p/myexploits/paxtest/1/paxtest-0.9.6# ruby -rdebug /usr/sbin/apt-listbugs list foo
Debug.rb
Emacs support available.

/usr/sbin/apt-listbugs:174:$VERSION = "$Id: apt-listbugs,v 1.35 2005/06/02 05:55:28 taru Exp $"
(rdb:1) n 235
Reading package fields... Done
/usr/sbin/apt-listbugs:1345:Factory::PackageFactory.delete_ignore_pkgs(new_pkgs)
(rdb:1) n
/usr/sbin/apt-listbugs:1348:exit 0 if new_pkgs.size == 0
(rdb:1) n
/usr/sbin/apt-listbugs:1348:exit 0 if new_pkgs.size == 0
(rdb:1) n
/usr/sbin/apt-listbugs:1351:cur_pkgs = Factory::StatusFactory.create(new_pkgs) do |msg, val|
(rdb:1) n
Reading package status... Done
/usr/sbin/apt-listbugs:1354:if config.show_downgrade == false
(rdb:1) n
/usr/sbin/apt-listbugs:1354:if config.show_downgrade == false
(rdb:1) n
/usr/sbin/apt-listbugs:1355: Factory::StatusFactory.delete_downgraded(cur_pkgs, new_pkgs)
(rdb:1) n
/usr/sbin/apt-listbugs:1359:begin
(rdb:1) n
/usr/sbin/apt-listbugs:1360: bugs = Factory::BugsFactory.create(new_pkgs, cur_pkgs) do |msg, val|
(rdb:1) s
/usr/sbin/apt-listbugs:1054:      cur_pkgs = args[0]
(rdb:1) n
/usr/sbin/apt-listbugs:1055:      bugs = Debian::Bugs.new
(rdb:1) n
/usr/sbin/apt-listbugs:1056:      pkg_step = 100 / new_pkgs.size.to_f
(rdb:1) n
/usr/sbin/apt-listbugs:1057:      if config.release_critical == true
(rdb:1) n
/usr/sbin/apt-listbugs:1057:      if config.release_critical == true
(rdb:1) n
/usr/sbin/apt-listbugs:1076:        error = []
(rdb:1) n
/usr/sbin/apt-listbugs:1077:    i = 0.0
(rdb:1) n
/usr/sbin/apt-listbugs:1078:    size = new_pkgs.size
(rdb:1) n
/usr/sbin/apt-listbugs:1079:    mutex = Mutex.new
(rdb:1) n
/usr/sbin/apt-listbugs:1080:    threads = []
(rdb:1) n
/usr/sbin/apt-listbugs:1081:    yield RetrvBTSMsg, "0% [0/#{size}]"
(rdb:1) n
/usr/sbin/apt-listbugs:1361: config.frontend.progress(msg, val) if config.quiet == false
(rdb:1) n
/usr/sbin/apt-listbugs:1361: config.frontend.progress(msg, val) if config.quiet == false
(rdb:1) n
Retrieving bug reports... 0% [0/1]/usr/sbin/apt-listbugs:1082: new_pkgs.each_key do |pkg|
(rdb:1) n
/usr/sbin/apt-listbugs:1101:      }
(rdb:1) n
Libsafe version 2.0.16
Detected an attempt to write across stack boundary.
Terminating /usr/bin/ruby1.8.
    uid=0  euid=0  pid=19088
Call stack:
    0xb7f7d41c  /lib/libsafe.so.2.0.16
    0xb7f7d8a2  /lib/libsafe.so.2.0.16
    0xb7eb0ac8  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb176e  /usr/lib/libruby1.8.so.1.8.4
    0xb7ec0d73  /usr/lib/libruby1.8.so.1.8.4
    0xb7cb079f  /usr/lib/ruby/1.8/i486-linux/socket.so
    0xb7cb097d  /usr/lib/ruby/1.8/i486-linux/socket.so
    0xb7eb02b5  /usr/lib/libruby1.8.so.1.8.4
    0xb7cb0b56  /usr/lib/ruby/1.8/i486-linux/socket.so
    0xb7cb0bad  /usr/lib/ruby/1.8/i486-linux/socket.so
    0xb7eaaca7  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6503  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb70ea  /usr/lib/libruby1.8.so.1.8.4
    0xb7ee27db  /usr/lib/libruby1.8.so.1.8.4
    0xb7ed206e  /usr/lib/libruby1.8.so.1.8.4
    0xb7eaaca7  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6503  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb34a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb8fba  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3969  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb391f  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6386  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb34a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7ebe438  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3cf8  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6386  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb35b7  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb557e  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3752  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6386  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3c91  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6386  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3c91  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb50ee  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6386  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb34a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7ebe438  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3cf8  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6386  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb34a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb557e  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6386  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb35b7  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb251e  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb8fba  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3969  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb50ee  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6386  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb34a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb557e  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6386  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb34a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3438  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3752  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6386  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb35b7  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb33cb  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb557e  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb8fba  /usr/lib/libruby1.8.so.1.8.4
    0xb7eba421  /usr/lib/libruby1.8.so.1.8.4
    0xb7e98b9a  /usr/lib/libruby1.8.so.1.8.4
    0xb7eaac9b  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6503  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb34a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb557e  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6386  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb34a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3890  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb4ba9  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb8fba  /usr/lib/libruby1.8.so.1.8.4
    0xb7ec28b4  /usr/lib/libruby1.8.so.1.8.4
    0xb7eaacbd  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6503  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb70ea  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb7131  /usr/lib/libruby1.8.so.1.8.4
    0xb7eaaca7  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6503  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb34a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb557e  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3438  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb8fba  /usr/lib/libruby1.8.so.1.8.4
    0xb7eba421  /usr/lib/libruby1.8.so.1.8.4
    0xb7ecba1d  /usr/lib/libruby1.8.so.1.8.4
    0xb7ecacdd  /usr/lib/libruby1.8.so.1.8.4
    0xb7f149c5  /usr/lib/libruby1.8.so.1.8.4
    0xb7ecae14  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb02b5  /usr/lib/libruby1.8.so.1.8.4
    0xb7ecae8b  /usr/lib/libruby1.8.so.1.8.4
    0xb7ecba4f  /usr/lib/libruby1.8.so.1.8.4
    0xb7eaac9b  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6503  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb34a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb557e  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb25c3  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb6386  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb670d  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb34a4  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb557e  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb3752  /usr/lib/libruby1.8.so.1.8.4
    0xb7eb4ba9  /usr/lib/libruby1.8.so.1.8.4
    0xb7ec06a9  /usr/lib/libruby1.8.so.1.8.4
    0xb7ec070c  /usr/lib/libruby1.8.so.1.8.4
    0xb7ec2a77  /usr/lib/libruby1.8.so.1.8.4
    0x80486ee   /usr/bin/ruby1.8
    0xb7cfdeab  /lib/tls/i686/cmov/libc-2.3.5.so
Overflow caused by memcpy()
Killed


--
Best Regards,
RafaƂ Maj


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to