Jump to content
io.kent

[C#] LocateIP 0.2

Recommended Posts

Posted

A program to locate the IP and DNS of a page made in C#.

locateipcsharp.jpg

Source :

Form1.cs

// LocateIP 0.2
// (C) Doddy Hackman 2014
// Credits :
// To locate IP : http://www.melissadata.com/lookups/iplocation.asp?ipaddress=
// To get DNS : http://www.ip-adress.com/reverse_ip/
// Theme Skin designed by Aeonhack
// Thanks to www.melissadata.com and www.ip-adress.com and Aeonhack

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace locateip
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();

}

private void mButton2_Click(object sender, EventArgs e)
{
funciones modulos = new funciones();

if (textBox1.Text == "")
{
MessageBox.Show("Enter the target");
}
else
{

textBox2.Text = "";
textBox3.Text = "";
textBox4.Text = "";
listBox1.Items.Clear();

toolStripStatusLabel1.Text = "[+] Getting IP ...";
this.Refresh();


string ip = modulos.getip(textBox1.Text);
if (ip == "Error")
{
MessageBox.Show("Error getting IP ...");
toolStripStatusLabel1.Text = "[-] Error getting IP";
this.Refresh();
}
else
{
textBox1.Text = ip;
toolStripStatusLabel1.Text = "[+] Locating ...";
this.Refresh();
List<String> localizacion = modulos.locateip(ip);
if (localizacion[0] == "Error")
{
MessageBox.Show("Error locating ...");
toolStripStatusLabel1.Text = "[-] Error locating";
this.Refresh();
}
else
{
textBox2.Text = localizacion[0];
textBox3.Text = localizacion[1];
textBox4.Text = localizacion[2];

toolStripStatusLabel1.Text = "[+] Getting DNS ...";
this.Refresh();

List<String> dns_found = modulos.getdns(ip);
if (dns_found[0] == "")
{
MessageBox.Show("Error getting DNS ...");
toolStripStatusLabel1.Text = "[-] Error getting DNS";
this.Refresh();
}
else
{

foreach (string dns in dns_found)
{
listBox1.Items.Add(dns);
}

toolStripStatusLabel1.Text = "[+] Finished";
this.Refresh();
}

}


}

}

}

private void mButton1_Click(object sender, EventArgs e)
{
Application.Exit();
}
}
}

// The End ?

funciones.cs

// Funciones for LocateIP 0.2
// (C) Doddy Hackman 2014

using System;
using System.Collections.Generic;
using System.Text;

//
using System.Net;
using System.IO;
using System.Text.RegularExpressions;
//

namespace locateip
{
class funciones
{
public string getip(string buscar)
{

String code = "";
String url = "http://whatismyipaddress.com/hostname-ip";
String par = "DOMAINNAME="+buscar;
String ip = "";

HttpWebRequest nave = (HttpWebRequest)WebRequest.Create(url);

nave.UserAgent = "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0";
nave.Method = "POST";
nave.ContentType = "application/x-www-form-urlencoded";

Stream anteantecode = nave.GetRequestStream();

anteantecode.Write(Encoding.ASCII.GetBytes(par), 0, Encoding.ASCII.GetBytes(par).Length);
anteantecode.Close();

StreamReader antecode = new StreamReader(nave.GetResponse().GetResponseStream());
code = antecode.ReadToEnd();

Match regex = Regex.Match(code, "Lookup IP Address: <a href=(.*)>(.*)</a>", RegexOptions.IgnoreCase);

if (regex.Success)
{
ip = regex.Groups[2].Value;
}
else
{
ip = "Error";
}

return ip;
}

public List<String> locateip(string ip)
{
string code = "";

string city = "";
string country = "";
string state = "";

WebClient nave = new WebClient();
nave.Headers["User-Agent"] = "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0";
code = nave.DownloadString("http://www.melissadata.com/lookups/iplocation.asp?ipaddress=" + ip);

Match regex = Regex.Match(code, "City</td><td align=(.*)><b>(.*)</b></td>", RegexOptions.IgnoreCase);

if (regex.Success)
{
city = regex.Groups[2].Value;
}
else
{
city = "Error";
}

regex = Regex.Match(code, "Country</td><td align=(.*)><b>(.*)</b></td>", RegexOptions.IgnoreCase);

if (regex.Success)
{
country = regex.Groups[2].Value;
}
else
{
country = "Error";
}

regex = Regex.Match(code, "State or Region</td><td align=(.*)><b>(.*)</b></td>", RegexOptions.IgnoreCase);

if (regex.Success)
{
state = regex.Groups[2].Value;
}
else
{
state = "Error";
}

List<string> respuesta = new List<string> {};
respuesta.Add(city);
respuesta.Add(country);
respuesta.Add(state);
return respuesta;

}

public List<String> getdns(string ip)
{

string code = "";

WebClient nave = new WebClient();
nave.Headers["User-Agent"] = "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0";
code = nave.DownloadString("http://www.ip-adress.com/reverse_ip/" + ip);

List<string> respuesta = new List<string> {};

Match regex = Regex.Match(code, "whois/(.*?)\">Whois", RegexOptions.IgnoreCase);

while (regex.Success)
{
respuesta.Add(regex.Groups[1].Value);
regex = regex.NextMatch();
}

return respuesta;
}

}
}

// The End ?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...