GithubHelp home page GithubHelp logo

apchavan / infopuller Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 0.0 1.83 MB

Helpful CLI application to fetch useful details about website domains or local machine, using the core Windows OS functions.

License: MIT License

windows win32-cpp operating-system cli-app c cpp ipv4 ipv6 mac-address robots-txt

infopuller's Introduction

InfoPuller

Menu driven CLI application that can get basic details for given website domain or local machine. It also has basic persistence similar to malware or threat. It's a personal project to get familiarity of Windows core functionalities... ๐Ÿ™‚

Features overview :

Visible key features :

  • Extract all of the available IPv4 and IPv6 addresses for given website.
  • Fetch response robots.txt for given website, then save and/or show.
  • Extract local machine's available IPv4 and IPv6 addresses.
  • Extract Media Access Control (MAC) details for local machine, either in basic or in detailed form.

Hidden key features :

  • The application copies itself to other place and becomes hidden.

  • Makes changes in Windows registry to autostart things after every system startup.

  • Also make sure to read post on Medium.com which explains the hidden (or sort of malicious) features in more detail.

Win32 API headers :

  1. Windows.h - A Windows-specific header file for the C and C++ programming languages which contains declarations for all of the functions in the Windows API.
  2. stdio.h - Provides many standard library functions for input and output.
  3. stdlib.h - Provides macros, type definitions and functions for tasks such as string handling, mathematical computations, input/output processing, memory management, and several other operating system services.
  4. fileapi.h - Used for Data Access and Storage.
  5. WinSock2.h - Provides useful functions for network programming such as sockets, IP addresses and so on. It is used by Quality of Service (QOS).
  6. WinInet.h - To handle files over FTP/HTTP URL.
  7. WS2tcpip.h - WinSock2 Protocol-Specific Annex document for TCP/IP that includes newer functions and structures used to retrieve IP addresses.
  8. iphlpapi.h - Provides functions to get MAC address details.

Features in detail :

{๐ŸŒŸ} Visible key features :

1. Set website domain :

  • When application is launched, the console window will opened and gets auto-maximized containing some fancy text representing the name of application with few numbered menu options to choose from :

  • To get information about website, first set the domain using option '1' (the domain should be in form of www.example.com or example.com) :

  • Now the website domain is all set; the other related menu options also get reflected :

  • Setting the website domain is essential to get results otherwise one can not use menu options '2' and '3' related to website domains :

  • Providing empty input will clear the domain that is set previously :

2. Extract IP details :

  • If the website domain set properly, program will list of all available IPv4 and IPv6 addresses :

  • If any of IPv4 or IPv6 is not available, then useful message with related error code is returned :

    - Functions used :
    getaddrinfo(), inet_ntop().

3. Fetch 'robots.txt' :

4. My machine's IP :

  • Shows the available IPv4 and IPv6 for the local machine. Here the IP addresses mostly contain collection of local and global addresses :

    - Functions used :
    getaddrinfo(), inet_ntop().

5. My Media Access Control (MAC) details :

Help :

Provides the usage information about the application.


{๐ŸŒŸ} Hidden key features :

1. Copy application and make hidden :

2. Change Windows registry for autostart :


- Other functions used :
WSAStartup(), WSACleanup(), SetConsoleTitleA(), SecureZeroMemory() (or RtlSecureZeroMemory()), FindWindowA(), ShowWindow(), SetForegroundWindow().

NOTE :

As listed in hidden features above, application uses core Windows OS headers and to avoid its use for malicious purposes, the code is not open sourced; instead the executable is provided if some one wants to see in action. ๐Ÿ™‚

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.