• wargames-Leviathan


    官网

    https://overthewire.org/wargames/leviathan/

    0-6

    0

    ssh leviathan0@leviathan.labs.overthewire.org -p 2223
    

    登陆密码:

    leviathan0
    
    ls
    ls -a
    cat .backup/bookmarks.html |grep password
    

    进去后使用ls查看命令发现没有东西,那么可能有.开头的隐藏文件,使用ls -a进行查看(tab键自动补齐.backup文件夹下面的文件):

    由此知道下关密码为:rioGegei8m

    1

    ssh leviathan1@leviathan.labs.overthewire.org -p 2223
    
    rioGegei8m
    
    ltrace ./check
    123
    ./check
    sex
    cat /etc/leviathan_pass/leviathan2
    

    有一个check文件,可以使用file命令查看一下:

    leviathan1@leviathan:~$ ls
    check
    leviathan1@leviathan:~$ file check
    check: setuid ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=c735f6f3a3a94adcad8407cc0fda40496fd765dd, not stripped
    leviathan1@leviathan:~$ 
    

    提示我们这是一个可执行文件
    这里我们还需要了解一个命令ltraceltrace的功能是能够跟踪进程的库函数调用(ltrace详解: https://www.cnblogs.com/machangwei-8/p/10388938.html ):
    ltrace ./check提示输入密码,随便输入一个错误的,可以看到使用了strcmp()函数,对用户输入的密码进行与sex进行对比,那么密码就是sex
    我们直接运行./check再输入密码sex
    再执行cat /etc/leviathan_pass/leviathan2

    获得下关密码:

    ougahZi8Ta
    

    2

    ssh leviathan2@leviathan.labs.overthewire.org -p 2223
    
    ougahZi8Ta
    
    ls
    ./printfile
    ltrace ./printfile
    ltrace ./printfile 1.txt
    ./printfile 1.txt
    mkdir /tmp/sillage
    cd /tmp/sillage
    echo 'hello' >1.txt
    ltrace ~/printfile 1.txt
    ln -s /etc/leviathan_pass/leviathan3 a
    touch b a
    ~/printfile b a
    
    ln -s 源文件 目标文件  //linux的软链接,相当于windows快捷方式
    

    通过ltrace命令发现,printfile后面要跟一个文件(直接运行printfile也会提示我们),./printfile会通过调用access()检查文件是否存在,确认存在之后再打印出文件内容。
    于是思路还是为我们需要的文件创建软链接,再打印该软链接获得密码
    直接利用printfile打印/etc/leviathan_pass/leviathan3的软链接会提示You cant have that file...

    创建一个文件名包含+空格的文件,并且在其前面(或后面)的字符串为/etc/leviathan_pass/leviathan3的链接文件的文件名,这样就可以绕过限制。通过读取这个特殊文件从而读取/etc/leviathan_pass/leviathan3的链接文件,也许你还不太明白,但看了下面两张截图你就懂了:

    linux会将x xx.fileSuffix(fileSuffix为文件后缀,也可以没有)的文件识别为两个文件,一个是x,一个是xx,这里我们可以顺便验证一下:

    下关密码:

    Ahdiemoo1j
    

    3

    ssh leviathan3@leviathan.labs.overthewire.org -p 2223
    
    Ahdiemoo1j
    
    ls
    ltrace ./level3
    111
    ./level3
    snlprintf
    id
    cat /etc/leviathan_pass/leviathan4
    
    //id  命令用于显示用户的ID,以及所属群组的ID
    

    下关密码:

    vuH0coox6m
    

    4

    ssh leviathan4@leviathan.labs.overthewire.org -p 2223
    
    vuH0coox6m
    
    ls
    ls -a
    cd .trash
    ./bin
    二进制转ascii
    

    二进制转ascii: https://www.binaryhexconverter.com/binary-to-ascii-text-converter
    下关密码:

    Tith4cokei
    

    5

    ssh leviathan5@leviathan.labs.overthewire.org -p 2223
    
    Tith4cokei
    
    ls
    ./leviathan5
    echo 'hello'>/tmp/file.log
    ./leviathan5
    ln -s /etc/leviathan_pass/leviathan6  /tmp/file.log
    ./leviathan5
    

    leviathan5会读取/tmp/file.log的文件内容,那么思路为将file.log作为我们所需文件的软链接,从而获取下关密码

    下关密码:

    UgaoFee4li
    

    6

    ssh leviathan6@leviathan.labs.overthewire.org -p 2223
    
    UgaoFee4li
    
    ltrace ./leviathan6
    for i in {0000..9999};do ./leviathan6 $i;done
    id
    cat /etc/leviathan_pass/leviathan7
    

    使用ltrace跟踪时,提示我们4 digit code,是一个四位数的数
    那么可以使用暴力破解的方式,输入for i in {0000..9999};do ./leviathan6 $i;done进行爆破

    下关密码:

    ahy7MaeBo9
    

    文章部分内容参考:
    https://www.jianshu.com/p/d722e4d5525f?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation
    https://blog.csdn.net/caiqiiqi/article/details/55347041

    作者:
    除特别声明为原创博文外,均可转载,也欢迎转载,未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利,谢谢您的配合。
  • 相关阅读:
    odoo service error 更改端口号
    unique 唯一约束
    odoo 注册失败
    odoo 某个字段权限设置
    linux 定时任务
    odoo webside theme
    js 杂记
    vue3入门总结
    vue输出空格
    css等比例缩放图片
  • 原文地址:https://www.cnblogs.com/sillage/p/14844267.html
Copyright © 2020-2023  润新知