zan8in / shiro

Shiro Key Detect Tool

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

shiro

Usage of the afrog calling library.

Running Shiro

Single Target

shiro -t https://example.com

Multiple Target

shiro -T urls.txt

Custom Keys

shiro -T urls.txt -K keys.txt

More Command

shiro -h

Examples

Single Target

package main

import (
	"fmt"
	"time"

	"github.com/zan8in/shiro"
)

func main() {
	s, err := shiro.NewShiro()
	if err != nil {
		panic(err)
	}

	result, err := s.Run(shiro.Options{
		Target:            "http://x.x.x.x:8090",
		RateLimitKey:      time.Duration(60),
		ConcurrencyKey:    25,
	})
	if err != nil {
		panic(err)
	}

	if result == nil {
		fmt.Println("result is nil")
		return
	}

	fmt.Printf("target: %s\n", result.Target)
	fmt.Printf("shiroKey: %s\n", result.ShiroKey)
	fmt.Printf("rememberMe: %s\n", result.RememberMe)

}

Multi Target

package main

import (
	"fmt"
	"time"

	"github.com/zan8in/shiro"
)

func main() {
	s, err := shiro.NewShiro()
	if err != nil {
		panic(err)
	}

	result, err := s.RunMulti(shiro.Options{
		TargetFile:        "./1.txt",
		ShiroKeysFile:     "./keys.txt",
		RateLimitKey:      time.Duration(60),
		RateLimitTarget:   time.Duration(5),
		ConcurrencyKey:    25,
		ConcurrencyTarget: 2,
	})
	if err != nil {
		panic(err)
	}

	for v := range result {
		fmt.Printf("target: %s\n", v.Target)
		fmt.Printf("shiroKey: %s\n", v.ShiroKey)
		fmt.Printf("rememberMe: %s\n", v.RememberMe)
		fmt.Println("-----------------------")
	}

}

Forked and adapted from

https://github.com/Peony2022/shiro_killer

About

Shiro Key Detect Tool

License:MIT License


Languages

Language:Go 100.0%