Repository for the Nexus Client software.

Overview

LinkScope Client

Description

This is the repository for the LinkScope Client Online Investigation software. LinkScope allows you to perform online investigations by representing information as discrete pieces of data, called Entities. These Entities can then be explored through Resolutions, which take the attributes of Entities as input, and resolve them to different, but connected, pieces of information. In such a way, one can create a knowledge graph (or abstract art) for any particular domain, which should help investigators easily discover answers and insights that otherwise might have been hard to extract.

Features

Some notable features of LinkScope include:

Client

  • Graph visualisation of information and their relationships
  • Drag and drop interface to add new data
  • Timeline of events based on creation date of entities
  • Import browser tabs and take screenshots of your session
  • Display locations on a world map
  • Easily extensible to suit your specific needs

Server

  • Collaborate with others live on projects
  • Extract sentiment, entities and relationships from files
  • Extract text from over 100 types of documents, and get summaries of the content for large files
  • Ask the Oracle a question about the data, and receive an answer with context

Installation

Supported Platforms

Currently, Linux (Ubuntu, but most Debian derivatives should work) and Windows 10 are supported.

The versions differ slightly because a graph-related library is not available for Windows. This means that the Windows and the Linux build and code differ slightly from each other - where Linux uses SFDP graph layout, Windows uses Neato. Practically, the difference should not be noticable. Windows has a few more visual bugs than Linux, but both versions should function the same.

This repository has the code for the Linux version, with the Windows alternative code commented out where applicable.

Installing Dependencies

Some dependencies need to be installed in order for the software to work properly. After downloading the release correspoding to your platform from the Releases tab, please perform the following steps to install the required dependencies:

  1. Linux
  2. Windows

Helpful link for those unfamiliar with adding binaries to their PATH: https://zwbetz.com/how-to-add-a-binary-to-your-path-on-macos-linux-windows/

Releases (most recent one on the top): https://github.com/AccentuSoft/LinkScope_Client/releases

The software comes packaged in a 7zip archive. Uncompress the archive, and double-click the executable to start the software. On Windows, the executable should be named 'LinkScope.exe'. On Linux, it should be named 'LinkScope'.

Running from source

One could also clone the repository and run the software as-is.

On Linux, the dependencies and requirements (in requirements.txt) need to be installed, and then one can run the software by executing LinkScope.py.

On Windows, the dependencies and requirements need to be installed, as well as the python-magic-bin library. This is done as follows:

pip install python-magic-bin

Then, the Linux-specific functions need to be changed to the Windows version. Currently, this is just the 'rearrangeGraph' function in Core/Interface/CentralPane. The comments at that location indicate the required changes.

Extending the software

LinkScope was built from the ground up to be modular! In this repository's wiki, there are instructions on how to create your own modules, which can contain custom Entities and Resolutions. There is also an example module in the Modules directory that can act as a template, and has a verbose description of most things that a module creator should need to consider.

Security and safety

Some warnings about using the software:

Do NOT open any kind of project file given to you by untrusted sources.

Maliciously crafted files can be used to potentially execute arbitrary code on your computer. The safe way of importing work from others is by having the source export their database as a GraphML file, which another user can then import.

Do NOT use Resolutions obtained by untrusted sources.

Resolutions are essentially Python code that ingests information from various data sources. Make sure that the people providing you with code to run are trustworthy, and that you inspect all the modules you use before installing them. Pre-compiled binaries on systems without Python installed are not able to install new resolutions, so compiling custom versions of the client to suit your investigators' needs should effectively mitigate this risk.

Further reading

If you are interested in more information about using the software, tutorials and case studies, check out our blog at https://accentusoft.com/blog/.

If you would like to contribute a post about your use of the software, please send an email to [email protected].

Comments
  • Linkscape crashes at 3.-4. resolution

    Linkscape crashes at 3.-4. resolution

    In addition to issue #13 Linkscope crashes with an empty error message usually after 3 or 4 resolutions. Again, latest portable Linkscope on Windows 11

    2022-03-05 14_46_05-

    opened by rollerjunge 3
  • Resolving new nodes for resoluition stuck at 66%

    Resolving new nodes for resoluition stuck at 66%

    Hi, I'm new to linkscope, found it at reddit and I'm just trrying out wether its a serious competition for maltego. Therefore sorry for incorrect wording.

    Whenever i use a resolution (?) , new nodes will be created. All new nodes appear on the same spot. Shortly after, usually when i distribute them menually on the graph window, the shown dialogue appears. It takes some minutes until it disappears.

    i use the current portable version of Linkscope (downloaded it yesterday) on Windows 11. 2022-03-05 14_25_28-Greenshot

    opened by rollerjunge 3
  • Resolution categories, keywords & Search engine

    Resolution categories, keywords & Search engine

    Make it easier to search for resolutions that do what the user wants. Potentially create a search engine that allows for searching resolutions by keywords, result types etc.

    opened by AccentuSoft 2
  • Performance issue with a lot of nodes on screen

    Performance issue with a lot of nodes on screen

    We are aware that creating a lot of nodes causes the software to stutter.

    We will be revising the canvas drawing code, and trying to optimize it to handle more entities on the screen.

    opened by AccentuSoft 2
  • Transition to a compiled Python binary & Update installer

    Transition to a compiled Python binary & Update installer

    We are aware of certain issues affecting a few resolutions when utilizing pre-compiled binaries. This is due to how PyInstaller creates standalone applications, and is difficult to remediate.

    For version 1.3.8.0, we will provide binaries compiled with Nuitka, and assess how we want to move forwards.

    bug enhancement 
    opened by AccentuSoft 1
  • Shortcut creation does not reliably work on the latest Linux kernel versions

    Shortcut creation does not reliably work on the latest Linux kernel versions

    Shortcut creation on GNOME desktops is unreliable, and often requires manual intervention (i.e. right click -> allow launching).

    In older versions, setting a .desktop file as trusted and refreshing the desktop worked; however this does not appear to be the case any more.

    What will most likely happen is the shortcut creation functionality will only create the .desktop file, and will let the user know they need to manually allow launching to have the shortcut work.

    bug 
    opened by AccentuSoft 1
  • WhatsMyName is changing JSON File Format

    WhatsMyName is changing JSON File Format

    Wanted to make sure that you saw that WhatsMyName project is changing/has changed its JSON file. Issue https://github.com/WebBreacher/WhatsMyName/issues/414 shows the details. This will impact at least the recon/profiles-profiles/profiler.py module.

    Right now, and for a limited, short time forward, we will continue to make changes to both the old/current format and the new allowing tools like your's to make a smooth transition to the new format. The new format is also described https://github.com/WebBreacher/WhatsMyName/blob/main/CONTRIBUTING.md.

    The new JSON file (wmn-data.json - https://github.com/WebBreacher/WhatsMyName/blob/main/wmn-data.json) is already up and running. Please note that we also have a minified version of this JSON file that is auto-generated at https://github.com/WebBreacher/WhatsMyName/blob/main/wmn-data-min.json.

    Thanks.

    Micah Hoffman WMN Project Maintainer

    opened by WebBreacher 1
  • Notes tab on details pane for quick, in-software note taking

    Notes tab on details pane for quick, in-software note taking

    Add a notes tab in the details pane of the software to allow users to quickly note down general stuff, and allow references to nodes (implementation details tbd)

    enhancement 
    opened by AccentuSoft 1
  • SQL-like language & graph support for easy data visualization

    SQL-like language & graph support for easy data visualization

    Allow users to select, modify and visualize entities.

    Selection and modification to be done through sql-like syntax, visualization to be offered through graph panels.

    opened by AccentuSoft 1
  • Node Operations - Scrape Websites, Screenshot Websites, Notes field to text file

    Node Operations - Scrape Websites, Screenshot Websites, Notes field to text file

    Add more interaction between the software and the entities, especially the websites.

    Users should be able to save / screenshot websites without having to manually visit them.

    The 'Notes field to Text file' operation should streamline the process of converting extracted text in Notes fields into files, which can then be uploaded to the server and processed.

    opened by AccentuSoft 1
  • Feature Request: Add Dockbar Options to the View Menu

    Feature Request: Add Dockbar Options to the View Menu

    Right clicking on the the toolbar at the top of the application window to select which Dockbars to view is not intuitive and it took me quite a while to figure out how to get my Dockbars back. :P Perhaps moving those options to the view menu would be optimal?

    Also, when I do right click the resulting menu interface it doesn't interactively highlight each option as I hover my mouse over it, as compared to the regular menu where the sub-menus do. Nexus-current_situation-no-highlight Nexus-current_situation-highlight png

    opened by OSINT-Musings 1
  • Very slow building and compiling

    Very slow building and compiling

    Hello, I'm trying to build the application by running build.sh but the building process is slow. During it, I get some warning messages like:

    Nuitka:WARNING: Using very slow fallback for ordered sets, please install 'ordered-set' PyPI package for best Python
    Nuitka:WARNING: compile time performance.
    Nuitka-Plugins:WARNING: numpy: This plugin has been deprecated, do not enable it anymore.
    

    despite I installed python-ordered-set, and also the following warnings:

    Nuitka-Plugins:WARNING: anti-bloat: Unwanted import of 'unittest' encountered.               
    Nuitka-Plugins:WARNING: anti-bloat: Unwanted import of 'unittest.result' encountered.
    Nuitka-Plugins:WARNING: anti-bloat: Unwanted import of 'unittest.case' encountered.
    Nuitka-Plugins:WARNING: anti-bloat: Unwanted import of 'unittest.suite' encountered.
    Nuitka-Plugins:WARNING: anti-bloat: Unwanted import of 'unittest.loader' encountered.
    Nuitka-Plugins:WARNING: anti-bloat: Unwanted import of 'unittest.main' encountered.
    Nuitka-Plugins:WARNING: anti-bloat: Unwanted import of 'unittest.runner' encountered.
    Nuitka-Plugins:WARNING: anti-bloat: Unwanted import of 'unittest.signals' encountered.
    Nuitka-Plugins:WARNING: anti-bloat: Unwanted import of 'unittest.async_case' encountered.
    Nuitka-Plugins:WARNING: anti-bloat: Unwanted import of 'unittest.util' encountered.
    Nuitka-Plugins:WARNING: anti-bloat: Unwanted import of 'unittest._log' encountered.
    

    and also:

    Nuitka-Plugins:WARNING: pyside6: Unwanted import of 'tkinter' that is redundant with 'PySide6' encountered. Use         
    Nuitka-Plugins:WARNING: '--nofollow-import-to=tkinter' or uninstall it for best compatibility with pure Python execution.
    

    I'm working on Arch Linux. Is there a way to fix these warnings and speedup the compilation?

    opened by D3vil0p3r 15
Releases(v1.4.0)
OpenEmu Discord Rich Presence provided with Python!

A simple application that provides your current OpenEmu game as an RPC state in Discord via PyPresence. How to use Unzip and open the latest x86_64 ve

Deltaion Lee 6 May 30, 2022
Telegram bot to provide links of different types of files you send

File To Link Bot - IDN-C-X Telegram bot to provide links of different types of files you send. WHAT CAN THIS BOT DO Is it a nuisance to send huge file

IDNCoderX 3 Oct 26, 2021
This is a small Messnger with the cmd as an interface

Messenger This is a small messenger with the cmd as an interface. It started as a project to learn more about Python 3. If you want to run a version o

1 Feb 24, 2022
A Python wrapper around the Pushbullet API to send different types of push notifications to your phone or/and computer.

pushbullet-python A Python wrapper around the Pushbullet API to send different types of push notifications to your phone or/and computer. Installation

Janu Lingeswaran 1 Jan 14, 2022
Unofficial WebApp for WhatsApp Web created in PyQt6

Unofficial WebApp for WhatsApp Web created in PyQt6 using PyQt6-WebEngine

Rafael Tosta Santos 126 Dec 20, 2022
Simple Discord bot for the Collectez community.

Harvey - Discord Bot Simple Discord bot for the Collectez community. Features Ping the current status of Collectez's Teztools node. Steal emojis from

delintkhaum 1 Dec 26, 2021
Working TikTok Username Auto-Claimer/Sniper/Swapper which will autoclaim username if it´s available

TikTok-AutoClaimer Working TikTok Username Auto-Claimer/Sniper/Swapper which will autoclaim username if it´s available Usage Python 3.6 or above is re

Kevin 18 Dec 08, 2022
RichWatch is wrapper around AWS Cloud Watch to display beautiful logs with help of Python library Rich.

RichWatch is TUI (Textual User Interface) for AWS Cloud Watch. It formats and pretty prints Cloud Watch's logs so they are much more readable. Because

21 Jul 25, 2022
Image Tooᥣs Bot I specialize for logo design Services with Amazing logo Creator Platform and more tools

Image Tooᥣs Bot I specialize for logo design Services with Amazing logo Creator Platform and more tools

Sz Team Bots <sz/>✌️ 10 Oct 21, 2022
This is a script to export logs from AWS CloudTrail to a local file.

cloudtrail-export-logs This is a script to export logs from AWS CloudTrail to a local file. Getting Started Prerequisites python 3 boto3 pip Installin

Claick Assunção de Oliveira 2 Jan 02, 2022
Change Discord HypeSquad in few seconds!

a simple python script that change your hypesquad to what house you choose

Ho3ein 5 Nov 16, 2022
A code that can make an account bump your discord server 24/7!

BumpCord A code that can make an account bump your discord server 24/7! The main.py is the main file. keep_alive.py prevents your repl from going to s

Phantom 28 Aug 20, 2022
Keypirinha plugin to install packages via Chocolatey

Keypiriniha Chocolatey This is a package for the fast keystroke launcher keypirinha (http://keypirinha.com/) It allows you to search & install package

Shadab Zafar 4 Nov 26, 2022
WIOpy - Walmart Affiliate API Python wrapper

WalmartIO Python Wrapper - WIOpy A python wrapper for the Walmart io API. Only s

6 Nov 14, 2022
The wrapper you need for the osu!api v2

oppy (op.py) oppy is the wrapper for use on the osu! v2 API. Version 1.0.0 Installation To install please use pip to install oppy pip install op.py To

Wayde 2 May 01, 2022
Make low level API wrapper in fast, easy.

The lowrapper is a library for quickly and easily creating an environment for tapping the API without implementation.

tasuren 1 Oct 25, 2022
A simple discord bot named atticus that sends you the timetable of your classes upon request

A simple discord bot named atticus that sends you the timetable of your classes upon request. Soon, it would you ping you before classes too!

Samhitha 3 Oct 13, 2022
Wrapper around the latest Tuenti API

python-tuenti Overview Wrapper around the latest Tuenti API. Installation Install using pip, including any optional packages you want... $ pip install

Juan Riaza 10 Mar 07, 2022
this is an op music pyrogram music bot.

amanrajputpytgcallmusic this is an op music pyrogram music bot..... this bot user music bot can play music without being admin...... TG-MusicPlayer A

2 Dec 27, 2021
Discord bot ( discord.py ), uses pandas library from python for data-management.

Discord_bot A Best and the most easy-to-use Discord bot !! Some simple basic auto moderations, Chat functions. It includes a game similar to Casino, g

Jaitej 4 Aug 30, 2022