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)
Gnosis-py includes a set of libraries to work with Ethereum and Gnosis projects

Gnosis-py Gnosis-py includes a set of libraries to work with Ethereum and Gnosis projects: EthereumClient, a wrapper over Web3.py Web3 client includin

Gnosis 93 Dec 23, 2022
Kodi script for proper Australian weather data

Kodi Oz Weather weather.ozweather Script for Kodi for high quality Australian weather data sourced directly from the BOM. Available from the Kodi offi

Jeremy Daalder 5 Nov 24, 2022
A simple telegram bot that resolves video urls using yt-dlp

URL to Video Telegram Bot A simple telegram bot that resolves video urls using yt-dlp Copyright (C) 2021 Vítor Vasconcellos This program is free softw

Vítor 1 Nov 18, 2021
Alcarin Tengwar - a Tengwar typeface designed to pair well with the Brill typeface

Alcarin Tengwar Alcarin Tengwar is a Tengwar typeface designed to pair well with

Toshi Omagari 23 Nov 02, 2022
Python notebook allows send bulk whatsapp messages to contacts (not necessarily saved) using an excel file and the selenium package. It also produces a final report on the sending status of the messages.

WhatsApp messages bulk sending 📩 Este notebook (python) te permite enviar mensajes masivos de WhatsApp. El insumo principal es una hoja excel que con

Braulio Arteaga Lescano 8 Sep 15, 2022
Python client for the Socrata Open Data API

sodapy sodapy is a python client for the Socrata Open Data API. Installation You can install with pip install sodapy. If you want to install from sour

Cristina 368 Dec 09, 2022
Easily update resume to naukri with one click

NAUKRI RESUME AUTO UPDATER I am using poetry for dependencies. you can check or change in data.txt file for username and password Resume file must be

Rahul.p 1 May 02, 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
This is a unofficial library for making bots in rubika.

rubika this is a unofficial library for making bots in rubika using this library you can make your own0 rubika bot and control that those bots that ma

Bahman 50 Jan 02, 2023
A telegram bot writen in python for mirroring files on the internet to our beloved Google Drive

[] Mirror Bot This is a telegram bot writen in python for mirroring files on the internet to our beloved Google Drive. Deploying on Heroku Give Star &

43 Mar 06, 2022
Deploy your apps on any Cloud provider in just a few seconds

The simplest way to deploy your apps in the Cloud Deploy your apps on any Cloud providers in just a few seconds ⚡ Qovery Engine is an open-source abst

Qovery 1.9k Dec 26, 2022
An async-ready Python wrapper around FerrisChat's API.

FerrisWheel An async-ready Python wrapper around FerrisChat's API. Installation Instructions Linux: $ python3.9 -m pip install -U ferriswheel Python 3

FerrisChat 8 Feb 08, 2022
A Simple Telegram Bot By @AsmSafone to Download Files From Mega.nz and Upload It to Telegram

MegaDL-Bot A Simple Telegram Bot By @AsmSafone to Download Files From Mega.nz and Upload It to Telegram Features No Login Required All Mega.nz File Li

SAF ONE 92 Dec 02, 2022
An advanced QR Code telegram bot with more features.

QR Code Bot A telegram qr code encode and decode bot Advanced Features 1. Database ( MongoDB ) Support 2. Broadcast Support 3. Status Command 4. Setti

Fayas Noushad 16 Nov 12, 2022
A program to convert YouTube channel registration information into Json files for ThirdTube.

ThirdTubeImporter A program to convert YouTube channel registration information into Json files for ThirdTube. Usage Japanese https://takeout.google.c

Hidegon 2 Dec 18, 2021
Represents a Lavalink client used to manage nodes and connections.

lavaplayer Represents a Lavalink client used to manage nodes and connections. setup pip install lavaplayer setup lavalink you need to java 11* LTS or

HazemMeqdad 37 Nov 21, 2022
Python library for Spurwing API to schedule appointments, manage calendars and custom integrations.

Spurwing API Python Library Lightweight Python library for Spurwing's API. Spurwing's API makes it easy to add robust scheduling and booking to your a

Spurwing 1 Jul 14, 2021
HASOKI DDOS TOOL- powerful DDoS toolkit for penetration tests

DDoS Attack Panel includes CloudFlare Bypass (UAM, CAPTCHA, GS ,VS ,BFM, etc..) This is open source code. I am not responsible if you use it for malic

Rebyc 1 Dec 02, 2022
This is a crypto trading bot that scans the Binance Annoucements page for new coins, and places trades on Gateio

gateio-trading-bot-binance-announcements This Gateio x Binance cryptocurrency trading bot scans the Binance Announcements page and picks up on new coi

Andrei 1.2k Jan 01, 2023
Modular Python-based Twitch bot optimized for customizability and ease of use.

rasbot Modular Python-based Twitch bot optimized for customizability and ease of use. rasbot is a Python-based Twitch bot that runs on your Twitch acc

raspy 9 Dec 14, 2022