PreviewGram is for users that wants get a more private experience with the Telegram's Channel.

Overview

PreviewGram Cover

Private PreviewGram

Run away from Metadata

[ ⚠️ ] - Warning:

USE A VPN TO HIDE YOUR IP IT'S IN TEST

PreviewGram is under LGPL License

Application's theme from UN-GCPDS/qt-material under BSD-2-Clause License.

Why use?

PreviewGram is for users that wants get a more private experience with the Telegram's Channel. It's because:

  • Telegram collects when you see determinate content
  • Groups show publicly who are the followers*
  • The channel owners can see who are them followers
  • Telegram added Group Read Receipts*
  • You must to trust on Telegram's Servers
  • * PreviewGram doesn't protects you against it, because can't view Group Chats.

[ ⚠️ ] - Warning

If you don't enabled Github's JavaScript, go to Telegram Privacy Issues Topic to understand more.

How to install

> pip install -r requirements.txt
> py -m build
> pip install dist/Private\ PreviewGram-1.1.tar.gz

[ ⚠️ ] - Note If you're in another version, change the 1.1 for the current version.

Or Download Last Release

Running without install

  • Clone this project
git clone https://github.com/RickBarretto/PreviewGram.git
pip -m test_application.py

Features

PreviewGram Screenshot

PreviewGram protects you when:

  • Disables JavaScript when Browsing
    • Doesn't store cookies
    • Doesn't run trackers
  • Uses a generic Chrome user-agent
  • Doesn't use Telegram's API
  • Doesn't require a Account

Useful Features:

  • Store locally your favorites Channels
  • Can't open some links

Limitations

PreviewGram isn't the perfection on Earth. Because:

  1. Doesn't use JavaScript
  2. It's limited by the Telegram's Preview Site itself.

So, PreviewGram can't:

  • Hide your IP*
  • Play videos**
  • See Group Chats***
  • Download files directly*** (instead this, do: RMB**** > Copy link address and download on Telegram App)

Tips

  • Always use Vpn or Proxy
  • To open links, do RMB* > Copy link address
  • If you want to watch videos, please use Tor** (or any Browser that you trust)
  • Click on Test privacy! button to test for yourself. It's tested by What Is My Browser***

Extra: Accessing channels through TorBrowser

Go to Accessing via Tor topic.

VPN, Proxy and Tor

Differences

Proxy

Proxy is your online ID, hiding you real IP Address. It's a intermediary between your Web Browser and the internet, a web site for example. (Needs to be configured per-app basis)

VPN

VPN covers 100% of you device traffic, encrypting the connection. It'll hide your real IP Address.

The Onion Route (Tor)

Tor anonymizes your traffic sending it through a series of proxies, this proxies are called Nodes, that encrypts the traffic and sends to destiny using a Exit Node.

Sources:

The Tor's Power

With and Without Tor:

Tor: off / Https: off Tor: off / Https: on Tor: on / Https: on
Tor: off / Https: off Tor: off / Https: on Tor: on / Https: on

Source: When I'm using Tor, can eavesdroppers still see the information I share with websites, like login information and things I type into forms?

Why PreviewGram doesn't use Tor's Proxy by itself?

Tor have some issues, and aren't recommended to use Tor outside TorBrowser to avoid DNS Leaks and VPN+TOR issues.

Sources:

But What The F 😡 😡 😡 talking about Tor, if PreviewGram doesn't use it???

Because you can Access the channels via Tor

Yep, you don't need this application if you have Tor... 🙃

Accessing via Tor

  1. Create a "Telegram Channels" Folder on Bookmarks
    • Create Folder
  2. To access your favorite channel, put a /s/ between the domain and channel name, example: https://t.me/previewgram to https://t.me/s/previewgram
  3. Save to "Telegram Channels"'s Bookmark Folder
    • Save to BookMark
  4. Access when you want!
  5. Extra: make Tor portable and use the Mobile Tor Browser to use everywhere.

Sources:

Help PreviewGram

If you're a Dev (or not), help PreviewGram forking and making pull requests. Don't afraid to use the Github's Issue Tab to make critics, suggestions, bugs and security reports! 😉


To Do

  • Block telegram.org and other https requests using the webView.page().profile().setUrlRequestInterceptor(interceptor) (Thanks, dbunk!)
  • Channel Categories
  • Open on Tor
  • UI improvements?

Telegram Privacy Issues

As any Social Network app, Telegram suffers with Osint (Open-Source Intelligence), be caution with the information that you exposes publicly about yourself!

Osint Problems:

What is Osint?

Yeah, it's the information era, 500 milions tweets are published every day. Public informations like birthday, complete name, age are available on internet published by its own users. Which in itself poses privacy risks.

"Open-source intelligence (OSINT) is a multi-factor (qualitative, quantitative) methodology for collecting, analyzing and making decisions about data accessible in publicly available sources to be used in an intelligence context." Source: Open-Source Intelligence - Wikiless

So, caution with your public information! 😉

Articles:

Comments
  • Fix Pylint

    Fix Pylint

    • Critical:
      • [x] no-method-argument (E0211)
    • Medium:
      • [x] pointless-statement (W0104)
      • [x] pointless-string-statement (W0105)
      • [x] unnecessary-pass (W0107)
      • [x] unused-import (W0611)
      • [x] unused-variable (W0612)
    • Minor:
      • [x] PEP 257 docstring style checker
      • [x] no-self-use (R0201)
      • [x] trailing-whitespace (C0303)
      • [x] pyflakes
    opened by RickBarretto 1
  • Change `pip` for `pipx` or `poetry`

    Change `pip` for `pipx` or `poetry`

    Change install instructions from pip, on Readme

    Cause

    Pip doesn't use virtual environment by standard, setting packages on a global environment. It's a big problem, and causes conflicts between projects with the same packages but with different versions.

    Solution

    Use Poetry~~or PyEnv~~ for libraries and Poetryor PipXfor Applications.

    Read: Why use Poetry instead PyEnv

    opened by RickBarretto 0
  • Can't compile to `.exe`

    Can't compile to `.exe`

    Can't compile to executable file

    I followed the: Qt supported Libs,

    I tried 4 libraries, but no one could compile my code:

    Libraries

    The causes

    Auto Py to Exe

    Cx Freeze

    • Needs Visual Studio C++ compiler, that I don't will download because it's heavy. ⚒️
    • Repo link

    Fbs

    • The free version of fbs only supports Python 3.5 and 3.6. 😡
    • Repo link

    Nuitka

    bug 
    opened by RickBarretto 1
  • Fix Style code on Readme

    Fix Style code on Readme

    Current issues founded by Codacy:

    • remark-lint

      • [ ] list-item-indent
      • [ ] no-undefined-references
      • [ ] no-consecutive-blank-lines
      • [ ] no-heading-punctuation
    • Markdown Lint

      • [x] MD002 - First heading should be a top-level heading
      • [x] MD007 - Unordered list indentation
      • [x] MD009 - Trailing spaces
      • [x] MD032 - Lists should be surrounded by blank lines
      • [x] MD012 - Multiple consecutive blank lines
      • [x] MD013 - Line length
        • [ ] Change table to a single image
      • [x] MD022 - Headings should be surrounded by blank lines
      • [x] MD026 - Trailing punctuation in heading
      • [x] MD028 - Blank line inside blockquote
      • [x] MD033 - Inline HTML
      • [x] MD041 - First line in a file should be a top-level heading
      • [x] MD047 - Files should end with a single newline character
      • [x] MD006 - Consider starting bulleted lists at the beginning of the line
      • [x] MD043 - Required heading structure
    codacy 
    opened by RickBarretto 0
  • Block Fav Icon Request

    Block Fav Icon Request

    opened by RickBarretto 0
Releases(1.1)
Owner
Learning Python, Html and Css, and ShellScript; Soon learn JS.
null
A Telegram Bot to force users to join a specific channel before sending messages in a group.

Promoter A Telegram Bot to force users to join a specific channel before sending messages in a group. Introduction A Telegram Bot to force users to jo

Mr. Dynamic 1 Jan 27, 2022
PrivateRoom - Make your work private by building a system using arduino which instantly kills a program when someone enters your room/cabin

privateRoom Make your work private by building a system using arduino which instantly kills a program when someone enters your room/cabin STEPS: Uploa

Divyanshu Kumar 3 Nov 8, 2022
A bitcoin private keys brute-forcing tool. Educational purpose only.

BitForce A bitcoin private keys brute-forcing tool. If you have an average computer, his will take decades to find a private key with balance. Run Mak

Gilad Leef 2 Dec 20, 2022
Password Manager is a simple Python project which helps users in managing their passwords in a easier way

Password Manager is a simple Python project which helps users in managing their passwords in a easier way

Manish Jalui 4 Sep 29, 2021
The Devils Eye is an OSINT tool that searches the Darkweb for onion links and descriptions that match with the users query without requiring the use for Tor.

The Devil's Eye searches the darkweb for information relating to the user's query and returns the results including .onion links and their description

Richard Mwewa 135 Dec 31, 2022
This project is all about building an amazing application that will help users manage their passwords and even generate new passwords for them

An amazing application that will help us manage our passwords and even generate new passwords for us.

null 1 Jan 23, 2022
Vulnerability Scanner & Auto Exploiter You can use this tool to check the security by finding the vulnerability in your website or you can use this tool to Get Shells

About create a target list or select one target, scans then exploits, done! Vulnnr is a Vulnerability Scanner & Auto Exploiter You can use this tool t

Nano 108 Dec 4, 2021
Get related domains / subdomains by looking at Google Analytics IDs

DomainRelationShips ██╗ ██╗ █████╗ ██╗██████╗ ██║ ██║██╔══██╗ ██║██╔══██╗ ██║ ██║█████

Josué Encinar 161 Jan 2, 2023
Add a Web Server based on Rogue Mysql Server to allow remote user get

介绍 对于需要使用 Rogue Mysql Server 的漏洞来说,若想批量检测这种漏洞的话需要自备一个服务器。并且我常用的Rogue Mysql Server 脚本 不支持动态更改读取文件名、不支持远程用户访问读取结果、不支持批量化检测网站。于是乎萌生了这个小脚本的想法 Rogue-MySql-

null 6 May 17, 2022
A small Python Script To get all levels of subdomains from a list

getlevels A small Python Script To get all levels of subdomains Easily get 1st level, 2nd level, 3rd level, 4th level .... nth level subdomains Usag

null 9 Feb 15, 2022
Scan Site - Tools For Scanning Any Site and Get Site Information

Site Scanner Tools For Scanning Any Site and Get Site Information Example Require - pip install colorama - pip install requests How To Use Download Th

NumeX 5 Mar 19, 2022
SecurAID securely connects aid organizations directly with individuals in dangerous situations to allow them to discreetly and effectively get the assistance they need.

SecurAID securely connects aid organizations directly with individuals in dangerous situations to allow them to discreetly and effec

Ty K 2 Mar 23, 2022
Get important strings inside [Info.plist] & and Binary file also all output of result it will be saved in [app_binary].json , [app_plist_file].json file

Get important strings inside [Info.plist] & and Binary file also all output of result it will be saved in [app_binary].json , [app_plist_file].json file

null 12 Sep 28, 2022
Fuzz introspector is a tool to help fuzzer developers to get an understanding of their fuzzer’s performance and identify any potential blockers.

Fuzz introspector Fuzz introspector is a tool to help fuzzer developers to get an understanding of their fuzzer’s performance and identify any potenti

Open Source Security Foundation (OpenSSF) 221 Jan 1, 2023
log4j2 passive burp rce scanning tool get post cookie full parameter recognition

log4j2_burp_scan 自用脚本log4j2 被动 burp rce扫描工具 get post cookie 全参数识别,在ceye.io api速率限制下,最大线程扫描每一个参数,记录过滤已检测地址,重复地址 token替换为你自己的http://ceye.io/ token 和域名地址

null 5 Dec 10, 2021
Log4j exploit catcher, detect Log4Shell exploits and try to get payloads.

log4j_catcher Log4j exploit catcher, detect Log4Shell exploits and try to get payloads. This is a basic python server that listen on a port and logs i

EntropyQueen 17 Dec 20, 2021
Log4jake works by spidering a web application for GET/POST requests

Log4jake Log4jake works by spidering a web application for GET/POST requests. It will then automatically execute the GET/POST requests, filling any di

null 16 May 9, 2022
Whois-Python - Get Whois Domain with Python GUI

Whois-Python-GUI Get Whois Domain with Python - GUI :) WARNING > Dont Copy ! - W

MR.D3F417 3 Feb 21, 2022
You can crack any zip file and get the password.

Zip-Cracker Video Lesson : This is a Very powerfull Zip File Crack tool for termux users. Check 500 000 Passwords in 30 seconds Unique Performance Che

Razor Kenway 13 Oct 24, 2022