Python pingsweep script

Python pingsweep script

This python pingsweep script basically does a ping sweep over a specified ip range (with cidr notation) and generates the output in a .txt file . it should work on both python2+ and python3+

Output will give the following fields

  • ip address
  • reverse nslookup for domain name
  • get title of website if any
  • get http code

It currently is only able to do /24 scans (256 ips).If i have time in the future i will work on it to accept any ip range, and hopefully make it multi-threaded so that scans don’t take too low.

The code may be outdated. So best to refer to github link below

# ping sweep
# firstly, we ping to see if the server at ip is alive
# secondly, we test to see if it responds to http request(80)

import subprocess
import os
import urllib.request
import socket

def log_ping(file_name, msg):
    with open(file_name, "a") as ipFile:
        ipFile.write(msg + "\n")

def http_ping(ip):
        response = urllib.request.urlopen("http://" + ip).getcode()
        return response
        return 0
def rdns_lookup(ip):
        return socket.gethostbyaddr(ip)
    except socket.error:
        return "<couldnt get domain name>"
def get_html_title(ip):
    webpage = urllib.request.urlopen("http://" + ip).read()
    html = str(webpage)
    if "<title>" in html: #sometimes the document doesnt have a title tag
        title = html.split('<title>')[1].split('</title>')[0]
        return title
    return "<cant parse title>"
ip = input("Enter a /24 in the format e.g 10.21.32. : ")	
if ip.count('.') != 3:
    input("IP Format is wrong. Please restart and try again ")
file_name = ip + "0.txt"
log_ping(file_name, "The format is as follow - <ip address>, <active>, <http response code>, <html title>")
with open(os.devnull, "wb") as limbo:
    for n in range(0, 256):
        scan_ip = ip + str(n) 
        result=subprocess.Popen(["ping", "-n", "1", "-w", "200", scan_ip],
        stdout=limbo, stderr=limbo).wait()
        if result:
            msg = scan_ip + " inactive"
            log_ping(file_name, msg)
            response = http_ping(scan_ip)
            title = ""
            if response == 200:
                title = get_html_title(scan_ip)
            domain = rdns_lookup(scan_ip)
            msg = scan_ip + "({0})".format(domain) + " active, " + str(response) + " , " + title
            log_ping(file_name, msg)

Github link : here



Enjoyed the content ? Share it with your friends !

5 Tips to keep your android device safe

5 Tips to keep your android device safe

  1. Install security software (aka Anti-virus)
    Installing them will help to ward off malicious apps or links which could lead to your android device being compromised. Of course, this alone is not enough. There are many factors that lead to a device being compromised.
  2. Install updates and apply patches
    Do you often get system update notifications but sweep them off because they take too long and are too noisy? Don’t do that anymore. System updates are very important as they usually contain fixes to various security flaws.
  3. Secure settings and configuration
    Ensure that your android device has the right settings that is secure – that your device does not allow apps from unknown sources to be installed. This means apps can only be installed from the official play store app and not third party app stores.

      • Ensure that Settings > Security > Unknown Sources is unchecked
      • Ensure that Settings > Security > Verify Apps is checked (some device may not have this option)

      It is important that you do not make exceptions, even if its a one-off thing, to the settings as that one time is all it takes for a malicious app to take over your device !

  4. Review app permissions
    Never rush to download and install the app. Look at what permissions it requires and think about it logically. For example, would a note-taking app require permission to be able to use your phone’s camera or send sms? Highly unlikely. That makes the app very suspicious and should be a signal to not proceed installing the app.
    Besides, there are usually many alternatives available, you just got to find the right one.
  5. See the statistics
    Two key indicators I use are the number of downloads and reviews
    Number of downloads
    More downloads means that more user have already used the app. Should the app be malicious, there is a higher chance that someone would have already experienced it and reported it.
    Look at the reviews and see what other people say about the app. Some keywords to look out for are “App crash”, “make my phone hot”, “extremely slow”. Look also at the number of reviews that have these keywords of course. A high number of reviews of such kind may be a good indicator that something is wrong with the app. So don’t bother with the app. Besides what’s the point of using an app that crash, makes your phone hot, or is so slow that its unusable?


These 5 points are probably a good start to keeping your device secure. Ultimately, you are responsible for keeping your device safe, so take the necessary steps and precautions to do so. Stay safe !

Enjoyed the content ? Share it with your friends !