Introduction

We got a python script that contains an RSA encrypted message, we got all the argument:

1
2
3
n = 22306351450360835278685008577095637579379519735569993605372382025943065943172195653447501298828968514687284277198607097065634258314264314927371277442275519637994628244973451713428529246432421492448316055762649494875064883616150678248746788780631659395141126436598713108296958809877050508719429858288542409206141714853617337747692468415137300472541599402472407915882162354129011035959781898989018189851240885134793158675541708464792531211982651421335486888814185904694334748742140907479724360382947060649121854484350812707303750753924042963642230136006371631037322400368914718351407008699556959068979201259584736419897
e = 65537
c = 17602993744775645244932047693736399644507438713421090470524415766527158933476062715547401853988887892859852712288174327133373629909097820395435401533676533608936213580668532621040243037931761022394679651927262885744960614529599325651735809067636612587147031269202667870888506169666258327004309669721112194725267847462929621419423182917279393538900064854853776147192666718145232846523208281394755265917943312113266402772744899076664734081819237068101883336427745375537437389752990601021671228882409327526733171270971339644452600369079961452292583316600829728068432427992039322905022470729764699358872105298576585603770

Now all we need is to decrypt the c using the information we got.

Solution

RsaCtfTool is a tool that can help us in this situation and it is easy to use, we will specify the flags -n with the n value, -e for the e value and --uncipher for the c value.

1
$ python RsaCtfTool.py -n 22306351450360835278685008577095637579379519735569993605372382025943065943172195653447501298828968514687284277198607097065634258314264314927371277442275519637994628244973451713428529246432421492448316055762649494875064883616150678248746788780631659395141126436598713108296958809877050508719429858288542409206141714853617337747692468415137300472541599402472407915882162354129011035959781898989018189851240885134793158675541708464792531211982651421335486888814185904694334748742140907479724360382947060649121854484350812707303750753924042963642230136006371631037322400368914718351407008699556959068979201259584736419897 -e 65537 --uncipher 17602993744775645244932047693736399644507438713421090470524415766527158933476062715547401853988887892859852712288174327133373629909097820395435401533676533608936213580668532621040243037931761022394679651927262885744960614529599325651735809067636612587147031269202667870888506169666258327004309669721112194725267847462929621419423182917279393538900064854853776147192666718145232846523208281394755265917943312113266402772744899076664734081819237068101883336427745375537437389752990601021671228882409327526733171270971339644452600369079961452292583316600829728068432427992039322905022470729764699358872105298576585603770

The last part of the output:

1
2
# ... trimmed
STR : b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00wgmy{20e6852af817ca67678df52a1668186c}'

And the flag (At the end of the output):

1
wgmy{20e6852af817ca67678df52a1668186c}