zoukankan      html  css  js  c++  java
  • 西邮linux兴趣小组2014纳新免试题(三)

    【第三关】

    题目


    http://sortsth.sinaapp.com/

    分析


    查看网页源码,得知题目让找出6种排序算法,每次刷新或提交序列都变化。

    15种算法清单:

    CountingSort        计数排序 
    TournamentSort      锦标赛排序(树形选择排序)
    RadixSort           基数排序
    BinaryTreeSort      二叉树排序
    HeapSort            堆排序
    TopologicalSort     拓扑排序
    CocktaiSort         鸡尾酒排序(双向冒泡排序)
    SelectionSort       选择排序    
    QuickSort           快速排序
    PigeonholeSort      鸽巢排序
    BucketSort          桶排序    
    MergeSort           归并排序  
    ShellSort           希尔排序  
    BubbleSort          冒泡排序    
    InsertionSort       插入排序    

    最初想法是实现上述算法,然后得到每种算法的排序过程。

    观察POST提交的表单

    key是一组MD5信息摘要,猜测与排序算法序号一一对应。

    每次变化的是序列,排序算法编号,那么可以猜测答案是存储在数据库中的,尝试SQL注入password字段,未果。

    那么可以穷举某一key的password字段。

    选取一个题目

    Original: v9x3nejH     Sorted: 39Hejnvx
    9v3nejHx
    3vx9nejH
    39xvnejH
    H9j3nevx
    39vHnejx
    39ejHxvn

    获取排序算法编号:

    0.MergeSort 1.BubbleSort 2.RadixSort 3.PigeonholeSort 4.QuickSort 5.ShellSort 6.CocktaiSort 7.TournamentSort 8.InsertionSort 9.BinaryTreeSort 10.BucketSort 11.TopologicalSort 12.CountingSort 13.HeapSort 14.SelectionSort

    Key:b3beee912044ac70ff6739da05f98516

    经过尝试,发现6个序列的第一个是冒泡排序,第五个是鸡尾酒排序。

    字典正则表达式1[0-14][0-14][0-14]6[0-14]

    字典大小应为15*15*15*15=50625

    用burpsuite跑十分钟左右,得到下面结果

    1148465即为该Key对应的排序算法编号序列

    该序列排序算法应为:冒泡,选择,插入,快速,鸡尾酒,希尔

    经过多次尝试,发现上面排序算法顺序不变,只是每次算法编号不同。

    http://findakey.sinaapp.com/即为第四关

  • 相关阅读:
    分别改动Cube每一个面的贴图UV(Unity3D开发之十八)
    解决MAC下PHP连接MYSQL错误Warning: mysql_connect(): No such file or directory in conn.php
    什么是IaaS,PaaS和SaaS及其区别
    /lib/dracut/hooks/shutdown/30-dm-shutdown.sh
    openstack instance bootmgr is missing 问题 修复
    openStack aio nova service-list neutron ext-list
    CentOS7 iso封装语句
    開始EEPlat之旅
    重构摘要4_构筑測试体系
    线程及其创建的方式
  • 原文地址:https://www.cnblogs.com/rainmote/p/4160552.html
Copyright © 2011-2022 走看看