<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Hacker-Blog</title>
    <description>A Jekyll Blog Theme For Hackers</description>
    <link>https://moshedo.github.io</link>
    <atom:link href="https://moshedo.github.io/feed.xml" rel="self" type="application/rss+xml" />
    <author>
      <name>SomeHacker</name>
      <email>someone@somewebsite.somedomain</email>
      <uri>https://ashishchaudhary.in/hacker-blog</uri>
    </author>
    
      <item>
        <title>bsidestlv</title>
        <description>&lt;h2 id=&quot;dungeon&quot;&gt;Dungeon&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Name:&lt;/strong&gt; &lt;em&gt;Dungeon&lt;/em&gt; &lt;br /&gt;
&lt;strong&gt;Description:&lt;/strong&gt; Enter the Dungeon to find the Pixelated Flag! It has been broken to 3 pieces, can you find them all?
&lt;br /&gt;
&lt;strong&gt;Category:&lt;/strong&gt; Reverse Engineering&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Author: Liam Troper&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This one was quite defecault but after amount of time &amp;amp; effort I finally did that.&lt;/p&gt;

&lt;p&gt;when unzipping the challenge a huge amount of code is revealed it was pretty large and I even didn’t know were to start while there is a readme in this folder which showed a title and a link to a site&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Shattered Pixel Dungeon&lt;/strong&gt; and the link &lt;a href=&quot;https://shatteredpixel.com/shatteredpd/&quot;&gt;Shattered Pixel Dungeon&lt;/a&gt;
so I enter to the site and downloaded the code from GitHub.&lt;/p&gt;

&lt;p&gt;thinking of this as a patch analysis so &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;diff&lt;/code&gt; command for the rescue&lt;/p&gt;

&lt;div class=&quot;language-zsh highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;➜  Dungeon git:&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;master&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; ✗ diff &lt;span class=&quot;nt&quot;&gt;-r&lt;/span&gt; shattered-pixel-dungeon differ
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;shattered-pixel-dungeon: .git
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ: .gradle
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ: .idea
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ: ClickMeToPlay.jar
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ: ClickMeToPlay.jar.cache
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ/SPD-classes: build
diff &lt;span class=&quot;nt&quot;&gt;--color&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;-r&lt;/span&gt; shattered-pixel-dungeon/build.gradle differ/build.gradle
16,17c16,17
&amp;lt;         appName &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;'Shattered Pixel Dungeon'&lt;/span&gt;
&amp;lt;         appPackageName &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;'com.shatteredpixel.shatteredpixeldungeon'&lt;/span&gt;
&lt;span class=&quot;nt&quot;&gt;---&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;         appName &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;'BSides Shattered Pixel Dungeon'&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;         appPackageName &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;'com.bsides.bsidesshatteredpixeldungeon'&lt;/span&gt;
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ/core: .gradle
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ/core: build
diff &lt;span class=&quot;nt&quot;&gt;--color&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;-r&lt;/span&gt; shattered-pixel-dungeon/core/src/main/assets/messages/journal/journal.properties differ/core/src/main/assets/messages/journal/journal.properties
8,9c8,9
&amp;lt; journal.document.adventurers_guide.identifying.title&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;Identifying Items
&amp;lt; journal.document.adventurers_guide.identifying.body&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;You won&lt;span class=&quot;s1&quot;&gt;'t know all of the properties of some items when you first find them.\n\nThe colors of potions and symbols on scrolls are different in each dungeon. Unidentified equipment can be upgraded or enchanted if you'&lt;/span&gt;re lucky, or it might be cursed!&lt;span class=&quot;se&quot;&gt;\n\n&lt;/span&gt;Scrolls of identify, upgrade, or remove curse are very useful &lt;span class=&quot;k&quot;&gt;if &lt;/span&gt;you want to reduce the risk of using unidentified equipment.&lt;span class=&quot;se&quot;&gt;\n\n&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;You can find a list of all the items you&lt;span class=&quot;s1&quot;&gt;'ve identified in the items tab of your journal)
---
&amp;gt; journal.document.adventurers_guide.identifying.title=Identifying Items And Flags (BSides Edition)
&amp;gt; journal.document.adventurers_guide.identifying.body=You won'&lt;/span&gt;t know all of the properties of some items when you first find them.&lt;span class=&quot;se&quot;&gt;\n\n&lt;/span&gt;The colors of potions and symbols on scrolls are different &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;each dungeon. Unidentified equipment can be upgraded or enchanted &lt;span class=&quot;k&quot;&gt;if &lt;/span&gt;you&lt;span class=&quot;s1&quot;&gt;'re lucky, or it might be cursed!\n\nScrolls of identify, upgrade, or remove curse are very useful if you want to reduce the risk of using unidentified equipment.\n\n(You can find a list of all the items you'&lt;/span&gt;ve identified &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;the items tab of your journal&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;se&quot;&gt;\n\n&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;H30n&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;
Binary files shattered-pixel-dungeon/core/src/main/assets/sprites/items.png and differ/core/src/main/assets/sprites/items.png differ
diff &lt;span class=&quot;nt&quot;&gt;--color&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;-r&lt;/span&gt; shattered-pixel-dungeon/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/Dungeon.java differ/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/Dungeon.java
220c220,246
&amp;lt;
&lt;span class=&quot;nt&quot;&gt;---&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;     public static String customDecrypt&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;char[] encText, String key&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;         StringBuilder result &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; new StringBuilder&lt;span class=&quot;o&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;         int keyIndex &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; 0&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;         int keyLength &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; key.length&lt;span class=&quot;o&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;         &lt;span class=&quot;k&quot;&gt;for&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;int i &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; 0&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; i &amp;lt; encText.length&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt; i++&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;             char encChar &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; encText[i]&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;             int k &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; key.charAt&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;keyIndex&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;             char decChar &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;char&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;(((&lt;/span&gt;encChar - i&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; ^ k&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; - i % 256&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;             result.append&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;decChar&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;             keyIndex &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;keyIndex + 1&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; % keyLength&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;         &lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;         &lt;span class=&quot;k&quot;&gt;return &lt;/span&gt;result.toString&lt;span class=&quot;o&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;     &lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;     public static void main&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;String[] args&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;         char[] encText &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;'3'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;''&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;'*'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;'b'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;'/'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;'K'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;'h'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;'\\'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;'Ñ'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;'b'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;')'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;'b'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;'8'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;'S'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;'/'&lt;/span&gt;, &lt;span class=&quot;s1&quot;&gt;''&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;               String ky &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;items + journal + key&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;         String decryptedText &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; customDecrypt&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;encText, ky&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;         System.out.println&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;Decrypted: &quot;&lt;/span&gt; + decryptedText&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;       &lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;
diff &lt;span class=&quot;nt&quot;&gt;--color&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;-r&lt;/span&gt; shattered-pixel-dungeon/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/keys/SkeletonKey.java differ/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/keys/SkeletonKey.java
36c36,38
&amp;lt;
&lt;span class=&quot;nt&quot;&gt;---&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;       private static String k3 &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;U1ci&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ/desktop: .gradle
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ/desktop: build
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ/ios: robovm.properties
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ: local.properties
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ/services: build
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ/services/news/shatteredNews: build
Only &lt;span class=&quot;k&quot;&gt;in &lt;/span&gt;differ/services/updates/githubUpdates: build

&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;There is a decrypt function &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;customDecrypt(char[] encText, String key)&lt;/code&gt; while running it in a java env with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;String ky = &quot;items + journal + key&quot;;&lt;/code&gt;
we get Gibberish&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;Decrypted: ZpK/TaCn?-`6?B
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;So sure this isn’t correct checking &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;items.png&lt;/code&gt; in HexDump didn’t reveal much but sure it has some changes after checking carefully the differences between both images we found the change&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/mosheDO/mosheH4x0r/master/assets/2024-06-26/2024-06-26-125211.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;so we can see &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;P4N7&lt;/code&gt; but the image is called &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;items.png&lt;/code&gt; and the key is &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;String ky = &quot;items + journal + key&quot;;&lt;/code&gt; so we got items now we need &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;journal&lt;/code&gt; and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;key&lt;/code&gt; both of them is in the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;diff&lt;/code&gt; output&lt;/p&gt;

&lt;div class=&quot;language-zsh highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;se&quot;&gt;\n\n&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;H30n&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt;

&lt;span class=&quot;o&quot;&gt;&amp;gt;&lt;/span&gt;       private static String k3 &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;U1ci&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;combing them all we get 
&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;String ky = &quot;P4N7H30nU1ci&quot;;&lt;/code&gt; after running this we get this &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;c0de_pL4?_r3pea7&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/mosheDO/mosheH4x0r/master/assets/2024-06-26/2024-06-26-125745.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;the question mark doesn’t fit so we change it to &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;y&lt;/code&gt; &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;c0de_pL4y_r3pea7&lt;/code&gt; adding the prefix and we got the flag&lt;/p&gt;

&lt;p&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;BSidesTLV2024{c0de_pL4y_r3pea7}&lt;/code&gt;&lt;/p&gt;
</description>
        <pubDate>Wed, 26 Jun 2024 00:00:00 +0000</pubDate>
        <link>https://moshedo.github.io//bsidestlvctf</link>
        <link href="https://moshedo.github.io/bsidestlvctf"/>
        <guid isPermaLink="true">https://moshedo.github.io/bsidestlvctf</guid>
      </item>
    
      <item>
        <title>N0PSctf</title>
        <description>&lt;h2 id=&quot;reverse-me&quot;&gt;Reverse Me&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Name:&lt;/strong&gt; &lt;em&gt;Reverse Me&lt;/em&gt; &lt;br /&gt;
&lt;strong&gt;Description:&lt;/strong&gt; Don’t complain if you can’t see me, because I have to be reversed to make me run 🙃&lt;br /&gt;
&lt;strong&gt;Category:&lt;/strong&gt; Reverse&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Author: Simone Aonzo&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is how the &lt;strong&gt;Reverse Me&lt;/strong&gt; challenge was solved 
the that was included were called &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;img.jpg&lt;/code&gt;
why image file in a reversing challenge but lets check.&lt;/p&gt;

&lt;p&gt;if we tried to see the image windows viewer can’t show this.&lt;/p&gt;

&lt;div class=&quot;language-zsh highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;✗ strings img.jpg
...
atador.
inif.
txet.
ces.tlp.
tog.tlp.
tini.
tlp.aler.
nyd.aler.
5.2.2_CBILG
43.2_CBILG
4.2_CBILG
liaf_khc_kcats__
tixe
...
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;We can see some strings are related to elf files so checking with HexDump&lt;/p&gt;

&lt;div class=&quot;language-zsh highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;✗ xxd img.jpg   
00003870: 0000 0000 0000 1310 0000 0001 003e 0003  .............&amp;gt;..
00003880: 0000 0000 0000 0000 0001 0102 464c 457f  ............FLE.
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;It seems an &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;elf&lt;/code&gt; file that was reversed and now the description was clear&lt;/p&gt;

&lt;p&gt;So now we need to reverse the bytes:&lt;/p&gt;

&lt;p&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;✗ emit img.jpg | /home/ubuntu/.local/bin/rev | dump img.elf&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;so we opened the file in IDA, and I was struggling to find the correct code on how to find what was the flag, but the function &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;sub_401460&lt;/code&gt; was receiving argv from user&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/mosheDO/mosheH4x0r/master/assets/2023-06-02/2024-06-02-140710.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;decrypt_me_flag&lt;/code&gt; seems like it calculate and print the flag, so I wasn’t sure so I tried to make the func &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;sub_401460&lt;/code&gt; to return true by satisfying the 4 equation that we can see here:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/mosheDO/mosheH4x0r/master/assets/2023-06-02/2024-06-02-140850.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;In order to decrypt equations there is a tool by microsoft named z3:&lt;/p&gt;

&lt;pre&gt;&lt;code class=&quot;language-ipython&quot;&gt;In [1]: from z3 import *
   ...:
   ...: # Define variables
   ...: arg_1, arg_2, arg_3, arg_4 = Ints('arg_1 arg_2 arg_3 arg_4')
   ...:
   ...: # Define the equations
   ...: eq1 = 3 * arg_4 + arg_3 + 4 * arg_2 - 10 * arg_1 == 28
   ...: eq2 = And(9 * arg_2 - 8 * arg_1 + 6 * arg_3 - 2 * arg_4 == 72, arg_4 - 3 * arg_2 - 2 * arg_1 - 8 * arg_3 == 29)
   ...: eq3 = arg_3 + 5 * arg_1 + 7 * arg_2 - 6 * arg_4 == 88
   ...:
   ...: # Create solver
   ...: solver = Solver()
   ...:
   ...: # Add equations to the solver
   ...: solver.add(eq1)
   ...: solver.add(eq2)
   ...: solver.add(eq3)
   ...:
   ...: # Check satisfiability and get the result
   ...: if solver.check() == sat:
   ...:     model = solver.model()
   ...:     print(&quot;arg_1 =&quot;, model[arg_1])
   ...:     print(&quot;arg_2 =&quot;, model[arg_2])
   ...:     print(&quot;arg_3 =&quot;, model[arg_3])
   ...:     print(&quot;arg_4 =&quot;, model[arg_4])
   ...: else:
   ...:     print(&quot;No solution exists.&quot;)
   ...:
arg_1 = -3
arg_2 = 8
arg_3 = -7
arg_4 = -9
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;and we got the results it was strange to see that some of the values were negative so I tried to force z3 to print only positive but the result was unsat so I tried to run the challenge with those result hopefully it will work and it does:&lt;/p&gt;

&lt;div class=&quot;language-zsh highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;➜  tmp git:&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;master&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; ✗ ./img.elf_patched &lt;span class=&quot;nt&quot;&gt;-3&lt;/span&gt; 8 &lt;span class=&quot;nt&quot;&gt;-7&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;-9&lt;/span&gt;
N0PS&lt;span class=&quot;o&quot;&gt;{&lt;/span&gt;r1CKUNr0111N6&lt;span class=&quot;o&quot;&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;meaningful-noise&quot;&gt;Meaningful Noise&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Name:&lt;/strong&gt; Meaningful Noise &lt;br /&gt;
&lt;strong&gt;Description:&lt;/strong&gt; iz dat a qRcOdE?&lt;br /&gt;
&lt;strong&gt;Category:&lt;/strong&gt; Misc&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Author: algorab&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;we get an image that looks like that&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/mosheDO/mosheH4x0r/master/assets/2023-06-02/pxls.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;I used this script to get a sense of what the image pixels are:&lt;/p&gt;

&lt;div class=&quot;language-py highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;kn&quot;&gt;from&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;PIL&lt;/span&gt; &lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Image&lt;/span&gt;
&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt; &lt;span class=&quot;nn&quot;&gt;sys&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;im&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;Image&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;open&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;sys&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;argv&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;])&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;bands&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;''&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;join&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;im&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;getbands&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;())&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;width&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;height&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;im&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;size&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;pre&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;''&lt;/span&gt;
&lt;span class=&quot;k&quot;&gt;for&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;h&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;in&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;range&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;height&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;):&lt;/span&gt;
	&lt;span class=&quot;k&quot;&gt;for&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;w&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;in&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;range&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;width&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;):&lt;/span&gt;
		&lt;span class=&quot;n&quot;&gt;pixels&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;im&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;getpixel&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;((&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;w&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;h&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;))&lt;/span&gt;
		&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;bands&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;'RGBA'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;
			&lt;span class=&quot;n&quot;&gt;r&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;g&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;b&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;a&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;pixels&lt;/span&gt;
			&lt;span class=&quot;k&quot;&gt;print&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;r&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;g&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;b&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;a&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
		&lt;span class=&quot;k&quot;&gt;elif&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;bands&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;==&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;'RGB'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;
			&lt;span class=&quot;n&quot;&gt;r&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;g&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;b&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;pixels&lt;/span&gt;
			&lt;span class=&quot;k&quot;&gt;print&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;r&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;g&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;b&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
		&lt;span class=&quot;k&quot;&gt;else&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;
			&lt;span class=&quot;k&quot;&gt;print&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;pixels&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
	&lt;span class=&quot;k&quot;&gt;print&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;we got only &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;0&lt;/code&gt; and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;255&lt;/code&gt;:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;➜  Meaningful Noise ✗ python3 pixels.py pxls.png | sort | uniq
0
255
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;so I tried to change the 255 to 1 (IDK why; just tried)
and I put the input in CyberChef to try if we can extract something from that&lt;/p&gt;

&lt;p&gt;and indeed it was:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://raw.githubusercontent.com/mosheDO/mosheH4x0r/master/assets/2023-06-02/2024-06-02-170713.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;
</description>
        <pubDate>Sun, 02 Jun 2024 00:00:00 +0000</pubDate>
        <link>https://moshedo.github.io//N0PSctf</link>
        <link href="https://moshedo.github.io/N0PSctf"/>
        <guid isPermaLink="true">https://moshedo.github.io/N0PSctf</guid>
      </item>
    
  </channel>
</rss>
