Pacman - A suite of tools for manipulating debian packages

Related tags

Miscellaneouspacman
Overview

Overview

Repository is a suite of tools for manipulating debian packages. At a high level, dep-find generates a dependency list for use with dep-symbol and dep-src. I have also created a script, dep-all.sh, that chains the use of all three scripts together.

dep-find

This tool builds a dependency graph of the debian packages cached by apt. I have incluced the files direct.txt and transitive.txt which show the direct and transitive dependencies for debian packages respectively.

You can grab a dependency list for a package with:

./dep-find.py -p PACKAGE

which will create a file PACKAGE.dep in the current working directory. This can then be feed into dep-symbols. For example, ./dep-find.py -p wget will get the dependencies for wget and create wget.dep.

You might also find it useful to search for dependecies and packages with apt: apt-cache depends PACKAGE and apt-cache search PACKAGE.

dep-symbol

Tool uses a dependency list for a package (built from dep-find.py) to download all dependencies and build a small repository of those dependency that contain symbol information.

Install

All that is required for dep-symbol itself is a working python installation. Once you've pulled the repository, you can kickoff the test.sh script to make sure dep-symbol works. I've done my work on fir02, and have hardcoded the test script to use a copy of jq in my local installation directory (/home/acanino/local). If you do not run on fir02, you'll have to setup jq yourself and modify the test script.

Usage

1. Generate symbol repository for dependency list

mkdir symbol-out
./dep-symbol.py -d symbol-out wget.dep

lzload

lzload is a C library that does the actual shim / dummy library loading at runtime. Build and install with cmake:

cd lzload
mkdir build && cd build
cmake .. -DCMAKE_C_COMPILER=/path/to/clang 
make
sudo make install

dep-src

Install

Run setup.sh to install dependencies and place the necessary make/dpkg-buildflags files on the system (this will require root). This will also setup a local symbol repository for lzload to use at runtime at $HOME/var/symbol-out.

Usage

1. Building a dependency list

dep-src downloads and builds debian source packages from a dependency list.

./dep-find.py -p wget
mkdir src-out
./dep-src.py -d src-out wget.dep

2. Generating symbol database

Generate a symbol repository for lzload to use to help find the correct symbol / library mapping at runtime.

./dep-symbol.py -d $HOME/var/symbol-out wget.dep

3. Build dummy libraries

Generate dummy libraries for use with lzload. The following will attempt to build the dummy libraries and then store them in src-out/lib

mkdir src-out
./dep-src.py -d src-out wget.dep

4. Running with the dummy libraries.

There is a script at the top level, wget.sh, that demonstrates what environmnet variables need to be set to hook into the dummy libs. We need to set three environment variables: LZLOAD_LIB, LZ_LIBRARY_PATH, and LD_LIBRARY_PATH.

LZLOAD_LIB contains a colon seperate list of libraries that lzload should intercept. LZ_LIBRARY_PATH points to the actual path of the real libraries that lzload should load on a fault. LD_LIBRARY_PATH must point to the dummy libraries and liblzload.so. ~

Owner
Pardis Pashakhanloo
Research Intern @ Microsoft Computer Science PhD Student @ University of Pennsylvania
Pardis Pashakhanloo
WMIC Serial Checker For Python

WMIC Serial Checker Follow me here: Discord | Github FR: A but éducatif seulement. EN: For educational purposes only. ❓ Informations FR: WMIC Serial C

AkaTool's 0 Apr 25, 2022
SEH-Helper - Binary Ninja plugin for exploring Structured Exception Handlers

SEH Helper Author: EliseZeroTwo A Binary Ninja helper for exploring structured e

Elise 74 Dec 26, 2022
Source-o-grapher is a tool built with the aim to investigate software resilience aspects of Open Source Software (OSS) projects.

Source-o-grapher is a tool built with the aim to investigate software resilience aspects of Open Source Software (OSS) projects.

Aristotle University 5 Jun 28, 2022
CarolinaCon CTF Online

CarolinaCon Online CTF CTF challenges from CarolinaCon Online April 23 through April 25, 2021. All challenges from the CTF will eventually be here. Co

49th Security Division 6 May 04, 2022
A passive recon suite designed for fetching the information about web application

FREAK Suite designed for passive recon Usage: python3 setup.py python3 freak.py warning This tool will throw error if you doesn't provide valid api ke

toxic v3nom 7 Feb 17, 2022
This is sample project needed for security course to connect web service to database

secufaku This is sample project needed for security course to "connect web service to database". Why it suits alignment purpose It connects to postgre

Mark Nicholson 6 May 15, 2022
UF3: a python library for generating ultra-fast interatomic potentials

Ultra-Fast Force Fields (UF3) S. R. Xie, M. Rupp, and R. G. Hennig, "Ultra-fast interpretable machine-learning potentials", preprint arXiv:2110.00624

Ultra-Fast Force Fields 24 Nov 13, 2022
This repo created to complete the task HACKTOBER 2021, contribute now and get your special T-Shirt & Sticker. TO SUPPORT OWNER PLEASE PRESS STAR BUTTON

❤ THIS REPO WILL CLOSED IN 31 OCT 00:00 ❤ This repository will automatically assign the hacktoberfest and hacktoberfest-accepted labels to all submitt

Rajendra Rakha 307 Dec 27, 2022
External Network Pentest Automation using Shodan API and other tools.

Chopin External Network Pentest Automation using Shodan API and other tools. Workflow Input a file containing CIDR ranges. Converts CIDR ranges to ind

Aditya Dixit 9 Aug 04, 2022
A bot to use in a pump & dump event

A bot to use in a pump & dump event on Binance.com. Please note the bot is in heavy devleopment currently so be aware of errors. If you experience err

Freddie Jonas 189 Dec 24, 2022
Web-based Sudoku solver built using Python. A demonstration of how backtracking works.

Sudoku Solver A web-based Sudoku solver built using Python and Python only The motivation is to demonstrate how Backtracking algorithm works. Some of

Jerry Ng 2 Dec 31, 2022
My Analysis of the VC4 Assembly Code from the RPI4

My Analysis of the VC4 Assembly Code from the RPI4

Nicholas Starke 31 Jul 13, 2022
A python script for osu!lazer rulesets auto update.

osu-lazer-rulesets-autoupdater A python script for osu!lazer rulesets auto update. How to use: 如何使用: You can refer to the python script. The begining

3 Jul 26, 2022
Architectural Patterns implementation by using notification handler module prototype

This repository covers singleton, indirection, factory, adaptor, mediator patterns in python language by using university hypothetical notification module prototype. The code is just for demonstratin

Muhammad Umair 2 Jan 08, 2022
Resizing using nnedi3/znedi3/nnedi3cl with center alignment and correct chroma placement

nnedi3_resample A VapourSynth script for easy resizing using nnedi3/znedi3/nnedi3cl with center alignment and correct chroma placement. Requirements n

Home Of VapourSynth Evolution 12 Sep 08, 2022
a pull switch (or BYO button) that gets you out of video calls, quick

zoomout a pull switch (or BYO button) that gets you out of video calls, quick. As seen on Twitter System compatibility Tested on macOS Catalina (10.15

Brian Moore 422 Dec 30, 2022
Tenda D151 & D301 - Unauthenticated configuration download

Exploit Title: Tenda D151 & D301 - Unauthenticated configuration download (login included)

Ayoub 3 Jul 14, 2022
Terrible sudoku solver with spaghetti code and performance issues

SudokuSolver Terrible sudoku solver with spaghetti code and performance issues - if it's unable to figure out next step it will stop working, it never

Kamil Bizoń 1 Dec 05, 2021
Xkcd.py - Script to generate wallpapers based on XKCD comics

xkcd.py Script to generate wallpapers based on XKCD comics Usage python3 xkcd.py

Gideon Wolfe 11 Sep 06, 2022
A funny alarm clock I made in python

Wacky-Alarm-Clock Basically, I kept forgetting to take my medications, so I thought it would be a fun project to code my own alarm clock and make it r

1 Nov 18, 2021