Bug 17291 - redis new security issue CVE-2015-8080
Summary: redis new security issue CVE-2015-8080
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: Security (show other bugs)
Version: 5
Hardware: i586 Linux
Priority: Normal normal
Target Milestone: ---
Assignee: QA Team
QA Contact: Sec team
URL: http://lwn.net/Vulnerabilities/666890/
Whiteboard: has_procedure advisory MGA5-64-OK
Keywords: validated_update
Depends on:
Blocks:
 
Reported: 2015-12-04 17:21 CET by David Walser
Modified: 2015-12-16 22:01 CET (History)
3 users (show)

See Also:
Source RPM: redis-2.8.13-4.mga5.src.rpm
CVE:
Status comment:


Attachments
Bash script to use the redis database via port 6379 (3.42 KB, application/x-shellscript)
2015-12-16 03:08 CET, Len Lawrence
Details

Description David Walser 2015-12-04 17:21:53 CET
Debian has issued an advisory on December 3:
https://www.debian.org/security/2015/dsa-3412

Mageia 5 is also affected.

Reproducible: 

Steps to Reproduce:
David Walser 2015-12-04 17:22:01 CET

Whiteboard: (none) => MGA5TOO

Comment 1 Colin Guthrie 2015-12-11 13:05:08 CET
Debian patch applied to Redis Packages.

== Advisory Text ==

Luca Bruno discovered an integer overflow flaw leading to a stack-based buffer overflow in redis, a persistent key-value database. A remote attacker can use this flaw to cause a denial of service (application crash).


SRPM:

redis-2.8.13-4.1.mga5.src.rpm

RPMS:

redis-2.8.13-4.1.mga5.i586.rpm
redis-2.8.13-4.1.mga5.x86_64.rpm

redis-debuginfo-2.8.13-4.1.mga5.i586.rpm
redis-debuginfo-2.8.13-4.1.mga5.x86_64.rpm

CC: (none) => mageia
Assignee: mageia => qa-bugs

Comment 2 David Walser 2015-12-11 19:22:30 CET
Thanks Colin!

Advisory with references:

Luca Bruno discovered an integer overflow flaw leading to a stack-based buffer
overflow in redis, a persistent key-value database. A remote attacker can use
this flaw to cause a denial of service (application crash) (CVE-2015-8080).

References:
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-8080
https://www.debian.org/security/2015/dsa-3412

Version: Cauldron => 5
Whiteboard: MGA5TOO => (none)

Comment 3 Len Lawrence 2015-12-16 03:03:01 CET
mga5  x86_64  Mate

Starting to test this with limited understanding of how to run it.
No idea about PoC.
Installed redis and found these files in the bin directories:
/usr/bin/redis-benchmark
/usr/bin/redis-check-aof
/usr/bin/redis-check-dump
/usr/bin/redis-cli
/usr/sbin/redis-server

redis is an in memory database which requires the server to be run by root.
This provides an announcement on the command line ending with:
[8754] 16 Dec 01:41:22.630 * The server is now ready to accept connections on port 6379

redis-benchmark generates this sort of output:
====== PING_INLINE ======
  10000 requests completed in 0.04 seconds
  50 parallel clients
  3 bytes payload
  keep alive: 1

100.00% <= 0 milliseconds
238095.23 requests per second

====== PING_BULK ======
  10000 requests completed in 0.04 seconds
  50 parallel clients
  3 bytes payload
  keep alive: 1

100.00% <= 0 milliseconds
243902.44 requests per second

====== SET ======
  10000 requests completed in 0.04 seconds
  50 parallel clients
  3 bytes payload
  keep alive: 1

100.00% <= 0 milliseconds
238095.23 requests per second

There is a bash script on github (https://github.com/crypt1d/redi.sh) which performs some simple database operations which I ran inside a bash wrapper (because of tcsh):

#!/bin/bash
typeset Color="red" 
typeset | grep ^Color= | ./redi.sh 
./redi.sh -g Color 
typeset -a Colors=([0]="red" [1]="green" [2]="blue")
typeset | grep ^Colors= | ./redi.sh -a
./redi.sh -ag Colors

This stores values and retrieves them as expected.

Attaching redi.sh - note MIT licence (?)

Shall report back on the upgrade.

CC: (none) => tarazed25

Comment 4 Len Lawrence 2015-12-16 03:08:15 CET
Created attachment 7281 [details]
Bash script to use the redis database via port 6379

This can be exercised from the command line:
#!/bin/bash
typeset Color="red" 
typeset | grep ^Color= | ./redi.sh 
./redi.sh -g Color 
typeset -a Colors=([0]="red" [1]="green" [2]="blue")
typeset | grep ^Colors= | ./redi.sh -a
./redi.sh -ag Colors
Comment 5 Len Lawrence 2015-12-16 03:42:06 CET
Ran the benchmark test after updating redis and then the commands noted above in comment 4 which returned the same result as before.

red
Colors=([0]="red" [1]="green" [2]="blue")

Marking this as OK although it would have been tidier with a PoC.
Len Lawrence 2015-12-16 03:42:22 CET

Whiteboard: (none) => MGA5-64-OK

Comment 6 claire robinson 2015-12-16 16:08:13 CET
Good job Len.

Validating. Advisory uploaded.

Please push to 5 updates

Thanks

Keywords: (none) => validated_update
Whiteboard: MGA5-64-OK => has_procedure advisory MGA5-64-OK
CC: (none) => sysadmin-bugs

Comment 7 Mageia Robot 2015-12-16 22:01:53 CET
An update for this issue has been pushed to Mageia Updates repository.

http://advisories.mageia.org/MGASA-2015-0472.html

Status: NEW => RESOLVED
Resolution: (none) => FIXED


Note You need to log in before you can comment on or make changes to this bug.