UNDERCODE COMMUNITY
2.67K subscribers
1.23K photos
31 videos
2.65K files
79.9K links
πŸ¦‘ Undercode Cyber World!
@UndercodeCommunity


1️⃣ World first platform which Collect & Analyzes every New hacking method.
+ AI Pratice
@Undercode_Testing

2️⃣ Cyber & Tech NEWS:
@Undercode_News

3️⃣ CVE @Daily_CVE

✨ Web & Services:
β†’ Undercode.help
Download Telegram
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁

πŸ¦‘Crypt / Why? / Types / Issue price :

1) Crypt, crypt - the process of hiding your malicious code from antiviruses (hereinafter referred to as AB).

2) This is the process of modifying the code of your file (exe / dll) in such a way that the file itself remains operational and all antiviruses will consider that the file is harmless to the system.

3) This is accomplished in a variety of ways. The simplest ones are adding garbage sections or false calls and jumps to the file code. This simplest method has long lost its relevance due to the development of antiviruses and logistic methods of file analysis (heuristic analysis).

4) Now more complex methods are used, which include a huge complex of file file modifications. And the more sophisticated the methods, the longer your file will remain "clean" for AB.

πŸ¦‘There are two types of such crypts:

1) Manual - this is when your file is modified manually, individually for the task. It is believed that this method gives a better quality result and the file stays "clean" longer.

2) With the help of a cryptor, this is an automatic method in which a program is written in advance, which produces a number of modifications standard for each file. This method is considered less reliable because the procedures performed on the file are the same for all files. This, in turn, means that if one of the files is caught by the AV, then all the others will soon begin to be detected (identified by AV as malicious).

3) With each such modification (process), the file size is increased by a certain number of kilobytes. This size is different for each service / cryptor and can vary from 5kb to 300kb. Less is better. The extra dimension is called STAB. The price ranges from $ 5 - $ 50. Automatic (using a crypter costs $ 5-15), manual costs $ 25-50.

Your not allowed to copy our tutorials!
@UndercodeTesting
@UndercodeHacking
@UndercodeSecurity
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁

πŸ¦‘How to find out which package contains a file ?

If you compile programs from source codes, then you have probably encountered compilation errors when the program does not find any file and compilation fails. What to do in this situation? It is clear that you need to install the package that contains the required file. But how do you know the name of this package?

1) With the apt-file program, you can search by filenames in packages (both installed and not). It can also show all files in the package.

Program installation:

1) sudo apt install apt-file

2) Immediately after installation, the program data cache is empty. To update it, you need to run the command:

sudo apt-file update

3) When everything is ready, then the search is carried out as follows:
For example, search for the ffi.h file:


apt-file search ffi.h

▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁

πŸ¦‘How to create a bootable USB stick from Ubuntu Terminal


Step 1: download the Ubuntu 18.04 LTS ISO
Open the official Ubuntu website in any browser and download the Ubuntu ISO image from the following link:

https://ubuntu.com/#download

1) Click on the Ubuntu package you want to install. In this case the link 18.04 LTS was selected in the Ubuntu Server section.

2) Select "Save File" and click OK. The .iso file will be saved in the Downloads folder.

Step 2: launch Terminal

3) Open the Ubuntu command line tool called Terminal. This can be done by searching in the Ubuntu Application Launcher or by pressing Ctrl + Alt + T.


Step 3: unblock USB if mounted

4) Before writing to a USB stick, you need to make sure that it has not been automatically mounted on your Ubuntu system. Insert the USB stick into the device and run the following command to get the name of the USB device:

$ df

5) The last line of the output contains a list of the USB devices mounted on the Ubuntu system.

6) Write down the device name. In this case, it is / dev / sdb1. Make a note of the path to that device, in this case / media / sana / Ubuntu-Server 18.04.2 LTS amd64.

πŸ¦‘There are two ways to unmount USB in Ubuntu:

1.By specifying a path:

$ sudo umount / path / where / mounted
For example, in this case, you need the following command:

$ sudo umount / media / sana / 'Ubuntu-Server 18.04.2 LTS amd64'


2. You can use the device name to unmount it:

$ sudo umount / device / name

as exmaple the command will be as follows:

$ sudo umount / dev / sdb1

Step 4: create a bootable Ubuntu stick
When the USB is unmounted, you know the name of the ISO image, the path to it, the name of the device, one command is enough to create a bootable USB flash drive. This is the dd command:

$ sudo dd bs = 4M if = / path / to / ISOfile of = / dev / sdx status = progress oflag = sync

as example , the following command is used to burn Ubuntu ISO to a USB flash drive:

$ sudo dd bs = 4M if = / home / sana / Downloads / ubuntu-18.04.2-live-server-amd64.iso of = / dev / sdb1 status = progress oflag = sync
Burning the ISO image to the USB flash drive will start

After a while, the bootable USB drive will be ready.

Your not allowed to copy our tutorials!
@UndercodeTesting
@UndercodeHacking
@UndercodeSecurity
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁

πŸ¦‘NEW MAIL SPOOFING Email servers do not accept connections from normal computers. In an effort to limit the amount of spam, most MTAs will only accept connections from relays that have a fully-qualified domain name (FQDN). As such, the easiest way to use this project is from a Linux Virtual Private Server. There are several free or cheap options available, such as Digital Ocean, Linode, and Amazon EC2.

Once the server is set up, the next step is to install and start an SMTP server. This is required to actually send the spoofed emails. I personally use Postfix, though any will do. This script defaults to using localhost:25 for the mail server.

1) On Kali Linux, the easiest method of doing this is:

2) sudo apt-get install postfix sudo service postfix start

Β» clone https://github.com/lunarca/SimpleEmailSpoofer

3) When installing postfix, specify Internet-facing and provide the correct FQDN when prompted.


4) pip install -r requirements.txt

5) Basic Usage
Add the desired contents of the email in HTML format to an HTML file. Then, execute the following command:

./SimpleEmailSpoofer.py -e [Path to Email file] -t [To address] -f [From address] -n [From name] -j [Email subject]

Additional flags can be found by running

./SimpleEmailSpoofer.py -h


Your not allowed to copy our tutorials!
@UndercodeTesting
@UndercodeHacking
@UndercodeSecurity
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁

πŸ¦‘A simple, lightweight JavaScript API for handling cookies

Works in all browsers
Accepts any character
Heavily tested
No dependency
Supports ES modules
Supports AMD/CommonJS
RFC 6265 compliant
Useful Wiki
Enable custom encoding/decoding
< 800 bytes gzipped!

πŸ„ΈπŸ„½πŸ…‚πŸ…ƒπŸ„°πŸ„»πŸ„»πŸ„ΈπŸ…‚πŸ„°πŸ…ƒπŸ„ΈπŸ„ΎπŸ„½ & πŸ…πŸ…„πŸ„½ :

1) git clone https://github.com/js-cookie/js-cookie.git

2) $ npm i js-cookie

3) to use

Note the different extensions: .mjs denotes the ES module, whereas .js is the UMD one.

Example for how to load the ES module in a browser:

<script type="module" src="/path/to/js.cookie.mjs"></script>
<script type="module">
import Cookies from '/path/to/js.cookie.mjs'

Cookies.set('foo', 'bar')
</script>

5) Not all browsers support ES modules natively yet. For this reason the npm package/release provides both the ES and UMD module variant and you may want to include the ES module along with the UMD fallback to account for this:

<script type="module" src="/path/to/js.cookie.mjs"></script>
<script nomodule defer src="/path/to/js.cookie.js"></script>
Here we're loading the nomodule script in a deferred fashion, because ES modules are deferred by default. This may not be strictly necessary depending on how you're using the library.

Your not allowed to copy our tutorials!
@UndercodeTesting
@UndercodeHacking
@UndercodeSecurity
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁

πŸ¦‘What is the use of URL Rewrite?

1) The first is to meet the requirements of perception.
For website designers who are pursuing perfectionism, even the address of the web page wants to look as simple and clear as possible. The webpage address shaped like http://www.123 .com/news/index.asp?id=123 is naturally without aesthetic feeling at all. With UrlRewrite technology, you can easily display it as http://www .123 .com/news/123.html.

2) Secondly, the programming language used by the website can be hidden, and the portability of the website can also be improved.

When each page of the website is marked with the development language of .asp/.aspx/.php, others can see at a glance what language your website is made in. And when changing the language of the website, you need to change a lot of links. Moreover, when a page changes its extension, its pagerank will disappear and start from the beginning. We can use UrlRewrite technology to hide our implementation details, so that modification and transplantation are very convenient, and pagerank is not lost at all.

3) The last and most important role is to help search engines better crawl the content of your website.
Theoretically, search engines prefer web pages in the form of static pages, and search engines generally rate static pages higher than dynamic pages. Therefore, UrlRewrite can make the pages of our website easier to be indexed by search engines.

> Official introduction: A Java Web Filter for any compliant web application servers (such as Tomcat, JBoss, Jetty or Resin), which allows you to rewrite URLs before they get to your code. It is a very powerful tool just like Apache's mod_rewrite!

1. Add the Jar package urlrewritefilter-4.0.3.jar to Lib
2. Add filter configuration in web.xml:

<filter>
<filter-name>UrlRewriteFilter</filter-name>
<filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>UrlRewriteFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>

Your not allowed to copy our tutorials!
@UndercodeTesting
@UndercodeHacking
@UndercodeSecurity
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁

πŸ¦‘A reverse engineering tool that'll supply the place of Cheat Engine for linux :

F
E A T U R E S :

Memory searching: PINCE uses libscanmem to search the memory efficiently [Done]
Variable Inspection&Modification [Done/Basic]
CheatEngine-like value type support: Byte to 8 Bytes, Float, Double, Strings(including utf-8, utf-16, utf-32 and zero-terminate strings), Array of Bytes [Done]
Symbol Recognition: See here [Done]
Automatic Variable Allocation: See here [Done]
Dynamic Address Table: Supports drag&drop, recursive copy&pasting&inserting and many more [Done]
Manual Address Table Update: [Done]
Smart casting: PINCE lets you modify multiple different-type values together as long as the input is parsable. All parsing/memory errors are directed to the terminal [Done]
Continuous Address Table Update: You can adjust update timer or cancel updating by modifying settings. Non-stop version is Postponed\Quarterway Done [Done\Only works when the inferior is stopped]
Variable Locking: PINCE lets you freeze(constantly write a value to memory cell) variables [Planned]
Memory View [Done/Basic]
Infinite Scrolling: PINCE automatically disassembles the next available instruction(s) on mouse wheel/scrollbar move. Instruction count can be changed from settings. Hex View also supports this feature [Done]
Dissect Code: You can dissect desired memory regions to find referenced calls, jumps and strings. Disassemble screen will automatically handle the referenced data and show you if there's a referenced address in the current dissasemble view. It can be used from Tools->Dissect Code in the MemoryView window. Using its hotkey instead in the MemoryView window automatically dissects the currently viewed region. You can separately view referenced calls and strings after the search from View->Referenced Calls/Strings. Note: If you decide to uncheck 'Discard invalid strings' before the search, PINCE will try to search for regular pointers as well [Done]
Bookmarking: Bookmark menu is dynamically created when right clicked in the disassemble screen. So unlike Cheat Engine, PINCE lets you set unlimited number of bookmarks. List of bookmarks can also be viewed from View->Bookmarks in the MemoryView window. Commenting on an address automatically bookmarks it. [Done]
Modify on the fly: PINCE lets you modify registers on the fly. Unlike CE, you can also change XMM and FPU registers. Check GDB expressions in the Wiki page for additional information [Done]
Opcode Search: You can search opcodes with python regular expressions. To use this feature, click Tools->Search Opcode in the MemoryView window. [Done]
Debugging [Done/Basic]
Has basic debugging features such as stepping, stepping over, execute till return, break, continue. Also has breakpoints, watchpoints and breakpoint conditions. Has advanced debugging utilities such as Watchpoint/Breakpoint Tracking and Tracing
Chained Breakpoints: Just like CE, PINCE allows you to set multiple, connected breakpoints at once. If an event(such as condition modification or deletion) happens in one of the breakpoints, other connected breakpoints will get affected as well [Done]
Watchpoint Tracking: Allows you to see which instructions have been accessing to the specified address, just like "What accesses/writes to this address" feature in CE [Done]
Breakpoint Tracking: Allows you to track down addresses calculated by the given register expressions at the specified instruction, just like "Find out what addresses this instruction accesses" feature in CE with a little addon, you can enter multiple register expressions, this allows you to check the value of "esi" even if the instruction is something irrelevant like "mov [eax],edx" [Done]
Tracing: Almost the same with CE. But unlike CE, you can stop tracing whenever you want. Created from scratch with shittons of custom features instead of using gdb's trace&collect commands because some people have too much time on their hands [Done]
Collision Detection: GDB normally permits setting unlimited watchpoints next to each other. But this behaviour leads to unexpected outcomes such as causing GDB or the inferior become completely inoperable. GDB also doesn't care about the number(max 4) or the size(x86->max 4, x64->max 8) of hardware breakpoints. Fortunately, PINCE checks for these problems whenever you set a new breakpoint and detects them before they happen and then inhibits them in a smart way. Lets say you want to set a breakpoint in the size of 32 bytes. But the maximum size for a breakpoint is 8! So, PINCE creates 4 different breakpoints with the size of 8 bytes and then chains them for future actions [Done]
Code Injection [Working on it]
Run-time injection: Only .so injection is supported for now. In Memory View window, click Tools->Inject .so file to select the .so file. An example for creating .so file can be found in "libPINCE/Injection/". PINCE will be able to inject single line instructions or code caves in near future [Partially Done?]
GDB Console [Done]
Is the power of PINCE not enough for you? Then you can use the gdb console provided by PINCE, it's on the top right in main window
Simplified/Optimized gdb command alternatives [Working on it]
Custom scripts instead of using gdb's x command for reading memory [Done]
Custom scripts instead of using gdb's set command for modifying memory [Done]
libPINCE- A reusable python library
PINCE provides a reusable python library. You can either read the code or check Reference Widget by clicking Help->libPINCE in Memory Viewer window to see docstrings. Contents of this widget is automatically generated by looking at the docstrings of the source files. PINCE has a unique parsing technique that allows parsing variables. Check the function get_comments_of_variables in SysUtils for the details. This feature might be replaced with Sphinx in the future
Extendable with .so files at runtime
See here
Automatic Trainer Generation: [Planned]
PINCE provides a trainer auto-generated from current address table on demand by using libPINCE and PyQT5 together

πŸ„ΈπŸ„½πŸ…‚πŸ…ƒπŸ„°πŸ„»πŸ„»πŸ„ΈπŸ…‚πŸ„°πŸ…ƒπŸ„ΈπŸ„ΎπŸ„½ & πŸ…πŸ…„πŸ„½ :

1) Clone this repo by running git clone --recursive https://github.com/korcankaraokcu/PINCE then run sudo sh install_pince.sh in the PINCE directory. Install script currently supports Ubuntu and Debian. For Archlinux, use the AUR package instead.

2) For developers:
sudo apt-get install qttools5-dev-tools (qt5 form designer)
sudo apt-get install pyqt5-dev-tools (pyuic5)
sudo pip3 install line_profiler (for performance testing)
How to use line_profiler: Add @profile tag to the desired function and run PINCE with sudo kernprof -l -v PINCE.py


MORE USAGE ON GIT LINK
Your not allowed to copy our tutorials!
@UndercodeTesting
@UndercodeHacking
@UndercodeSecurity
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁
UNDERCODE COMMUNITY
Photo
FOR HACK ANY GAME, use for offline games (legal)
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁

πŸ¦‘API FOR TRACKING

Currently
, the following APIs are implemented:

- cellocation: [Cellocation.com API (China)](http://www.cellocation.com/interfac/)

- gpsspg: [GPSspg.com API (China)](http://www.gpsspg.com/api/bs/)

- google: [Google Geolocation API](https://developers.google.com/maps/documentation/geolocation/intro)

- haoservice: [HaoService.com API (China)](http://www.haoservice.com/docs/1)

- mozilla: [Mozilla Geolocation API](https://location.services.mozilla.com/api)

- mylnikov: [Mylnikov Geolocation API](https://www.mylnikov.org/archives/1059)

- opencellid: [OpenCellID API](http://opencellid.org/)

- unwiredlabs: [UnwiredLabs Location API](https://unwiredlabs.com/)

- yandex: [Yandex Geolocation API (Russian)](https://tech.yandex.ru/locator/doc/dg/api/geolocation-api_json-docpage/)

@undercodeTesting
@UndercodeHacking
@UndercodeSecurity
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁
Support & Share πŸ‘πŸ»β€οΈ

T.me/UndercodeTesting
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁

πŸ¦‘A Pythonic interface to Google's GMail, with all the tools you'll need. Search, read and send multipart emails, archive, mark as read/unread, delete emails, and manage labels.

Search emails
Read emails
Emails: label, archive, delete, mark as read/unread/spam, star
Manage labels

πŸ„ΈπŸ„½πŸ…‚πŸ…ƒπŸ„°πŸ„»πŸ„»πŸ„ΈπŸ…‚πŸ„°πŸ…ƒπŸ„ΈπŸ„ΎπŸ„½ & πŸ…πŸ…„πŸ„½ :

1) git clone git://github.com/charlierguo/gmail.git

2) To start, import the gmail library.

import gmail
Authenticating gmail sessions
To easily get up and running:

import gmail

g = gmail.login(username, password)
Which will automatically log you into a GMail account. This is actually a shortcut for creating a new Gmail object:

from gmail import Gmail

g = Gmail()
g.login(username, password)
# play with your gmail...
g.logout()
You can also check if you are logged in at any time:

g = gmail.login(username, password)
g.logged_in # Should be True, AuthenticationError if login fails
OAuth authentication
If you have already received an OAuth2 access token from Google for a given user, you can easily log the user in. (Because OAuth 1.0 usage was deprecated in April 2012, this library does not currently support its usage)

gmail = gmail.authenticate(username, access_token)
Filtering emails
Get all messages in your inbox:

g.inbox().mail()
Get messages that fit some criteria:

g.inbox().mail(after=datetime.date(2013, 6, 18), before=datetime.date(2013, 8, 3))
g.inbox().mail(on=datetime.date(2009, 1, 1)
g.inbox().mail(sender="myfriend@gmail.com") # "from" is reserved, use "fr" or "sender"
g.inbox().mail(to="directlytome@gmail.com")
Combine flags and options:

g.inbox().mail(unread=True, sender="myboss@gmail.com")
Browsing labeled emails is similar to working with your inbox.

g.mailbox('Urgent').mail()
Every message in a conversation/thread will come as a separate message.

g.inbox().mail(unread=True, before=datetime.date(2013, 8, 3) sender="myboss@gmail.com")
Working with emails
Important: calls to mail() will return a list of empty email messages (with unique IDs). To work with labels, headers, subjects, and bodies, call fetch() on an individual message. You can call mail with prefetch=True, which will fetch the bodies automatically.

unread = g.inbox().mail(unread=True)
print unread[0].body
# None

unread[0].fetch()
print unread[0].body
# Dear ...,
Mark news past a certain date as read and archive it:

emails = g.inbox().mail(before=datetime.date(2013, 4, 18), sender="news@nbcnews.com")
for email in emails:
email.read() # can also unread(), delete(), spam(), or star()
email.archive()

@undercodeTesting
@UndercodeHacking
@UndercodeSecurity
▁ β–‚ β–„ Uπ•Ÿπ”»β’Ίπ«Δ†π”¬π““β“” β–„ β–‚ ▁