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)
Python: Asynchronous client for the Open-Meteo API.

Python: Asynchronous client for the Open-Meteo API. Asynchronous client for the Open-Meteo API. About Open-Meteo offers free weather forecast APIs for

Franck Nijhof 11 Dec 21, 2022
Using multiple API sources, create an app that allows users to filter through random locations based on their temperature range choices.

World_weather_analysis Overview Using multiple API sources, create an app that allows users to filter through random locations based on their temperat

Jason Boyer 2 Sep 16, 2022
Extrait les informations contenues dans le code QR de la preuve de vaccination générée par le gouvernement du Québec

DecodeurPreuveVaccinationQC Extrait les informations contenues dans le code QR de la preuve de vaccination générée par le gouvernement du Québec Utili

Guillaume Morissette 8 Jul 26, 2022
Anti-league-discordbot - Harrasses imbeciles for playing league of legends

anti-league-discordbot harrasses imbeciles for playing league of legends Running

Chris Clem 2 Feb 12, 2022
A bot which provides online/offline and player status for Thicc SMP, using Replit.

AlynaaStatus A bot which provides online/offline and player status for Thicc SMP. Currently being hosted on Replit. How to use? Create a repl on Repli

QuanTrieuPCYT 8 Dec 15, 2022
E-Commerce Telegram Bot for UCA Students

ucaStudentStore To buy from and sell to other students Features Register the first time, after that you will always be recognised You can login either

Shukur Sabzaliev 5 Jun 26, 2022
4 Oct 28, 2021
An anime themed telegram group management bot based on sqlalchemy database running on python3.

Kazuko Robot A Telegram Python bot running on python3 forked with saitama and DiasyX with a sqlalchemy database and an entirely themed persona to make

heyaaman 22 Dec 07, 2022
ESOLinuxAddonManager - Very simple addon manager for Elder Scrolls Online running on Linux.

ESOLinuxAddonManager Very simple addon manager for Elder Scrolls Online running on Linux. Well, more a downloader for now. Currently it's quite ugly b

Akseli 25 Aug 28, 2022
Python SDK for 42DI

42di Python SDK Install pip install git+https://github.com/42di/python-sdk import import di #42di import pandas_datareader as pdr Init SDK project =

42DI 2 Nov 03, 2021
🤖 Automated follow/unfollow bot for GitHub. Uses GitHub API. Written in python.

GitHub Follow Bot Table of Contents Disclaimer How to Use Install requirements Authenticate Get a GitHub Personal Access Token Add your GitHub usernam

João Correia 37 Dec 27, 2022
A Discord bot coded in Python

Perseverance-Bot By Toricane Replit Code | GitHub Code | Discord Server | Website Perseverance is a multi-purpose bot coded in Python. It has moderati

4 Mar 30, 2022
A bot that connects your guild chat to a Discord channel, written in Python.

Guild Chat Bot A bot that connects your guild chat to a discord channel. Uses discord.py and pyCraft Deploy on Railway Railway is a cloud development

Evernote 10 Sep 25, 2022
A python based all-in-one tool for Google Drive

gdrive-tools A python based all-in-one tool for Google Drive Uses For Gdrive-Tools ✓ generate SA ✓ Add the SA and Add them to TD automatically ✓ Gener

XcodersHub 32 Feb 09, 2022
A python oriented telegram with API of yobit.net

YoBit-BTC A python oriented telegram bot with API of https://yobit.net/ Developed By @riz4d What is Yobit? ➪ YoBit is a cryptocurrency exchange that w

Muhammed Rizad 6 Apr 02, 2022
A file-based quote bot written in Python

Let's Write a Python Quote Bot! This repository will get you started with building a quote bot in Python. It's meant to be used along with the Learnin

1 Oct 28, 2021
🔮 A usefull set of scripts to dig into your Discord data package.

Discord DataExtractor 🔮 Discord DataExtractor is a set of scripts that allows you to dig into your Discord Data package. Repository guide ☕ Coffee_Ga

3 Dec 29, 2021
"Nesse projeto criei uma automação para abrir as tarefas no Jira em massa pegando de uma determinada fila do Zendesk."

automacao-Zendesk "Nesse projeto criei uma automação para abrir as tarefas no Jira em massa pegando de uma determinada fila do Zendesk." en-us "In thi

tokoyamy 1 Dec 20, 2021
Simple script to extract useful informations from the combo BloodHound + Neo4j

bloodhound-quickwin Simple script to extract useful informations from the combo BloodHound + Neo4j. Can help to choose a target. Prerequisites python3

140 Dec 21, 2022
A pixeldrain python package using pixeldrain official api

Made with Python3 (C) @FayasNoushad Copyright permission under MIT License License - https://github.com/FayasNoushad/Pixeldrain/blob/main/LICENSE In

Fayas Noushad 6 Jan 26, 2022