Skip to content

Latest commit

 

History

History
203 lines (181 loc) · 13.1 KB

README.md

File metadata and controls

203 lines (181 loc) · 13.1 KB

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. 🙂