• ikuai路由器通过curl模拟功能操作


    模拟登录

    通过调试进行分析ikuai登录流程,并进行模拟登录

    • ikuai_ip  该参数为ikuai路由器的ip
    • username  登录的用户
    • password  登录密码
    1. #!/bin/bash
    2. #
    3. #
    4. ikuai_ip='10.66.0.1'
    5. username='admin'
    6. password='adminpwd..'
    7. cookie_name='ikuai_cookie.txt'
    8. useragent="User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36 Edg/117.0.2045.60"
    9. contenttype="Content-Type: application/json;charset=UTF-8"
    10. # 1密码加密,并模拟登录,获取cookie
    11. ikuai_passwd=`echo -n "${password}" | md5sum |awk -F " " '{print $1}'`
    12. ikuai_pass=`echo 'salt_11'${password} | base64`
    13. curl -k \
    14. -H '$useragent' \
    15. -H '$contenttype' \
    16. -d '{"username":"'"$username"'","passwd":"'"$ikuai_passwd"'","pass":"'"$ikuai_pass"'","remember_password":null}' \
    17. -c "$cookie_name" \
    18. https://$ikuai_ip/Action/login

    登录成功之后,会拿到返回信息,如下

    {"Result":10000,"ErrMsg":"Success"}

     设置修改dns解析

     通过浏览器调试,拿到数据

    发送具体的数据,可以通过右键,获取到bash的命令

     

    内容大概如下:

    1. curl 'http://10.66.0.1/Action/call' \
    2. -H 'Accept: application/json, text/plain, */*' \
    3. -H 'Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6' \
    4. -H 'Cache-Control: no-cache' \
    5. -H 'Connection: keep-alive' \
    6. -H 'Content-Type: application/json;charset=UTF-8' \
    7. -H 'Cookie: sess_key=fd3afac89381760bef94e60fcf3118cc; username=gmik.admin; login=1' \
    8. -H 'Origin: http://10.66.0.1' \
    9. -H 'Pragma: no-cache' \
    10. -H 'Referer: http://10.66.0.1/' \
    11. -H 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36 Edg/117.0.2045.60' \
    12. --data-raw '{"func_name":"dns","action":"edit","param":{"domain":"hello.nineven.com","dns_addr":"10.66.8.111","is_ipv6":0,"enabled":"yes","src_addr":"","comment":"","id":4}}' \
    13. --compressed \
    14. --insecure

     把要拼接的数据准备好,也就是  --data-raw 对应的数据

    1. curl -k \
    2. -H '$useragent' \
    3. -H '$contenttype' \
    4. -d '{"domain":"hello.nineven.com","dns_addr":"10.66.8.111","is_ipv6":0,"enabled":"yes","src_addr":"","comment":"","id":4}}' \
    5. -b "$cookie_name" \
    6. http://$ikuai_ip/Action/call

    通过拼接,就可以正常发送配置请求,返回结果如下:

    {"Result":30000,"ErrMsg":"Success"}

    比对

    通过登录ikuai管理后台,查看刚才的dns已经成功修改,说明脚本已经成功执行

  • 相关阅读:
    冒泡排序(Bubble Sort)
    C语言 函数指针
    上周热点回顾(8.1-8.7)
    科学计算库Numpy基础&提升(理解+重要函数讲解)
    【LeetCode】40. 组合总和 II
    服务器选择独享还是共享带宽
    【matplotlib基础】--3D图形
    vue重修之自定义项目、ESLint和代码规范修复
    AI:61-基于深度学习的草莓病害识别
    使用EasyExcel后端导出excel
  • 原文地址:https://blog.csdn.net/ly1358152944/article/details/133930902