öryggisblöðSecurity Leaf
https://iammyr.github.io/
Sun, 27 Oct 2019 15:26:58 +0000Sun, 27 Oct 2019 15:26:58 +0000Jekyll v3.8.5Backdoor CTF - Beginners - Hidden Flag Medium<p>I completed all challenges of the <a href="https://backdoor.sdslabs.co/beginner">Backdoor CTF - Beginners section</a>. <br /><br />
One thing I truly did not know, was that while debugging with gdb, if part of the code is not reached via normal app workflow, then you can force its execution. I learned this thanks to the “hidden flag medium” challenge.
Thanks to the same challenge I also learned how to run 32-bit ELF on a 64-bit architecture.</p>
<ol>
<li>First I checked what type of file I was dealing with:
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ file hide_medium
hide_medium: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.24, BuildID[sha1]=fe9ddc13d0659e1badb3fd04934d02b4aa60893a, not stripped
</code></pre></div> </div>
</li>
<li>Since I have a 64-bit arch, the file would not run. So I did the following:
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386
</code></pre></div> </div>
</li>
</ol>
<p>Then I was able to run the program.</p>
<ol>
<li>So I opened the program with gdb, breakpoint on the main and then run
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>gdb hide_medium
b main
</code></pre></div> </div>
<p>Nothing out of this. <code class="language-plaintext highlighter-rouge">info functions</code> showed the function named <code class="language-plaintext highlighter-rouge">print_flag</code>. Since the normal program execution does not enter that part of code, we can enforce its execution with the following:</p>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>b main
r
compile code -- print_flag()
</code></pre></div> </div>
<p>This resulted in the flag being printed out.</p>
</li>
</ol>
Sun, 27 Oct 2019 15:10:14 +0000
https://iammyr.github.io/ctf/2019/10/27/backdoorctf-beginners-hide_medium-writeup.html
https://iammyr.github.io/ctf/2019/10/27/backdoorctf-beginners-hide_medium-writeup.htmlctf,reverse-engineeringctfCVE Scan for Pip Requirements file<p>I have <a href="https://github.com/cve-search/cve-search/pull/341">contributed</a> to the open source project <a href="https://github.com/cve-search/cve-search/pulls">cve-search</a> by adding a
feature to scan pip requirements files for CVE (leveraging the <a href="https://pypi.org/project/requirements-parser/">requirements-parser</a> tool, as well).</p>
<h1 id="how-to-use-it">How to use it</h1>
<ol>
<li>Install mongoDB. You might need to also add <code class="language-plaintext highlighter-rouge">require 'rubygems'</code> to the config file which on a mac (using brew)
should be <code class="language-plaintext highlighter-rouge">/usr/local/Homebrew/Library/Taps/mongodb/homebrew-brew/Formula/mongodb-community.rb</code></li>
<li>start mongoDB with <code class="language-plaintext highlighter-rouge">brew services start [email protected]</code></li>
<li>download cve-search <code class="language-plaintext highlighter-rouge">git clone [email protected]:cve-search/cve-search.git</code></li>
<li>install its dependencies (better to use virtualenv but it’s up to you): <code class="language-plaintext highlighter-rouge">pip install -r requirements.txt</code></li>
<li>run <code class="language-plaintext highlighter-rouge">./bin/search.py -q <path to the pip requirements file to scan></code></li>
</ol>
Mon, 13 May 2019 09:26:14 +0000
https://iammyr.github.io/cve/2019/05/13/cve-pip-requirements.html
https://iammyr.github.io/cve/2019/05/13/cve-pip-requirements.htmlopen-source,3rd-vulnerabilities,cvecveGrace Hopper Celebration 2018<p>I found a bit of lack of information around the Grace Hopper Celebration conference so I’d like to clarify a few points, now that i’ve been there.</p>
<p><strong>TL;DR</strong>:</p>
<p>Topics covered:</p>
<ul>
<li>career advices,</li>
<li>entrepreneurship advices,</li>
<li>broad variety of technical topics,</li>
<li>social activism topics (around economical inequalities and minorities).</li>
</ul>
<p>What’s in it for you:</p>
<ul>
<li>contacts to collaborate, mentor or be mentored</li>
<li>very useful career advices</li>
<li>technical skills through workshop or ideas and talks. However whether this applies to you or not, depends on many factors, since - given the breadth of audience background and topics - the level of the workshops is usually entry-level. There can be talks on advanced topics and advanced research results indeed, but the research area may or may not interest you.</li>
</ul>
<p>Finally, I’m publishing here my own personal notes from the best sessions I attended. This is to benefit those who could not attend them.</p>
<p><a name="toc"></a></p>
<h1 id="table-of-contents">Table of Contents</h1>
<ol>
<li><a href="#topics">Topics Covered</a></li>
<li><a href="#gain">What is the main gain from attending</a></li>
<li><a href="#negotiate">Notes from How to become a better Negotiator</a></li>
<li><a href="#influence">Notes from How to become a person of Influence</a></li>
<li><a href="#brand">Notes from How to build your personal Brand</a></li>
<li><a href="#architect">Notes from being an Architect</a></li>
</ol>
<h1 id="topics-covered-">Topics Covered <a name="topics"></a></h1>
<p>There are different types of sessions:</p>
<ol>
<li>the technical track with mixed subjects and 20mins long talks.</li>
<li>poster</li>
<li>panel (guests interviewed by a host and then answering all Q&A from the audience)</li>
<li>non-technical talk (mainly around career tips)</li>
<li>workshops (also technical and non-technical (exercises around career tips and inter-relationships tips)</li>
<li>mentoring circle (tables chaired by people who are at a more advanced stage of their career and offer to mentor/talk to the attendees for some time)</li>
<li>recruiting booths (there is a huge room flooded with companies’ booths and - mainly new graduate - who queue to file in their CV, get swag and interviews on the spot or booked for later on)</li>
<li>keynotes (inspiring because of powerful sociological messages or because of innovative ideas showcased or on career tips)</li>
</ol>
<p><a href="#toc">Top</a></p>
<h1 id="what-is-the-main-gain-from-attending-">What is the main gain from attending <a name="gain"></a></h1>
<ol>
<li>network of contacts (you get to meet a lot of women sharing similar interests as yourself, which is not something that happens easily within the tech sector; who are willing to mentor you or to collaborate on projects)</li>
<li>career-tips (there’s extremely useful career tips everywhere, which would apply to both men and women)</li>
<li>technical-wise you may or may not find talks that interest you, because of the broadness of the topics accepted. also because of the broadness of the audience, in order to involve as many people as possible, the tech workshops tend to be for beginners</li>
</ol>
<p><a href="#toc">Top</a></p>
<h1 id="personal-notes-from-the-six-steps-to-successful-negotiations-workshop-by-j-stewart-c-valdezco-">Personal notes from the “Six Steps to Successful Negotiations” workshop by J. Stewart, C. Valdezco <a name="negotiate"></a></h1>
<h3 id="1-stategise">(1) Stategise</h3>
<p>Identify your currency (create multiple currencies). A currency is the thing you can do and its value, i.e., what you can ask back for it.
Plan: imagine all the possible counter-arguments you may receive from the other person, the bottom terms you’ll be willing to accept, which conditions the other person might agree with.</p>
<h3 id="2-set-the-climate">(2) Set the climate</h3>
<p>Be in control.
Drive the discussion, with questions to gather information.</p>
<h3 id="3-obtain-information">(3) Obtain information</h3>
<p>“Negotiation is an information gathering process” (Chris Voss)</p>
<p>Ask whatm how, why, TEDS (tell, explain, describe, share) -type of questions, e.g.,: tell me about…; share with me about…. Do not stop at the first answer you’ll receive: drill down instead. Ask broad open questions. Example: What are your concerns; How did you determine your budget; How long has this been an issue; What makes this issue a priority for you; What would b helpful for you; What role do you see me playing in those priorities. etc.</p>
<p>Goal: understand the other person’s priorities in order to select what best to offer (the best currency to use) in order to increase chances of receiving back.</p>
<h3 id="4-state-positions">(4) State positions</h3>
<p>Do not reveal your own plans, e.g., a deadline, your own terms, your walk-away position
Offer low when buying.
Offer high when selling.
But in general, be flexible.
Draw attention to your own concessions.</p>
<h3 id="5-bargain">(5) Bargain</h3>
<p>Make concessions conditional. Example: what if I… then would you…; Suppose we… then could you…; If I were to… then would you…</p>
<h3 id="6-agree">(6) Agree</h3>
<p>In general, remember that a negotiation can always be re-opened.
Do leverage your Power: TIPS (Time, Information, Personal, Social).</p>
<p><a href="#toc">Top</a></p>
<h1 id="personal-notes-from-the-become-a-person-of-influence-workshop-by-j-miller">Personal notes from the “Become a Person of Influence” workshop by J. Miller<a name="influence"></a></h1>
<h2 id="why-to-influence">Why to Influence</h2>
<p>Technical work is Team Work.
With Influencing skills, a technical woman can</p>
<ol>
<li>become more efficient,</li>
<li>get the job done,</li>
<li>establish her reputation</li>
</ol>
<p>Our behavior teaches people how to treat us.</p>
<h2 id="what-is-a-person-of-influence">What is a Person of Influence</h2>
<p><strong>Influencer=</strong> Make large impact by:</p>
<ul>
<li>Lead</li>
<li>Inspire</li>
<li>Motivate</li>
<li>Engage
in ordere to do better than you can do alone.</li>
</ul>
<p>Common characteristics of persons of influence: powerful stand, empathy, technical knowledge, emotional control (calmness).</p>
<h2 id="how-to-become-a-person-of-influence-6-sources-of-influence">How to become a Person of Influence: 6 sources of Influence</h2>
<h3 id="6-positional-influence">(6) Positional Influence</h3>
<p>(title, role, etc.)
Work on your 30-seconds commercial in which you introduce:</p>
<ul>
<li>name</li>
<li>job title</li>
<li>I’m responsible for…</li>
<li>Come directly to me when you need…</li>
</ul>
<p>This specific source of influence is at the 6th position because your own Influence has little to do with your position in the hierarchy.</p>
<h3 id="5-expertise-influence">(5) Expertise Influence</h3>
<p>This source of influence is at the 5th position because “it’s not what or who you know, but who knows what you know”.
Plan initiatives that advertise your own expertise within the limits of what you feel comfortable doing.</p>
<p>In order to make your expertise visible:</p>
<ul>
<li>Work Less</li>
<li>
<p>Work Hard on the <strong>Right</strong> projects
and refrain from doing <em>Office Housework</em> like minorities tend to do.
If you want to volunteer, <strong>volunteer for High Profile, Career-Making assignments</strong>.</p>
</li>
<li><strong>A</strong>mplify the</li>
<li><strong>A</strong>ctions that</li>
<li><strong>A</strong>lign with your</li>
<li><strong>A</strong>spirations</li>
</ul>
<h3 id="4-resources-influence">(4) Resources Influence</h3>
<p>Negotiate the resources that you need to perform well.
How to build this:</p>
<ul>
<li>negotiation techniques</li>
<li>learn to lead without authority</li>
<li>suggest projects as a chance of growth for others</li>
<li>understand how finances and team budget work</li>
<li>be a mentor/sponsor/talent scout (regardless of your position in the hierarchy)</li>
</ul>
<h3 id="3-informational-influence">(3) Informational Influence</h3>
<p>Keep yourself up-to-date with the latest news around</p>
<ul>
<li>your own organisation</li>
<li>your own industry</li>
<li>your own profession</li>
</ul>
<h3 id="2-direct-influence">(2) Direct Influence</h3>
<p>Be firm, fair and professional.
Be direct and concise when delivering tough news but do that only when needed. Example: if a child is crossing the street in front of a car, you do not start lecturing about the dangers of crossing the streets, but rather you run after the child to prevent an accident. This means being, firm, concise, fair and professional to deliver tough news but only when needed.</p>
<h3 id="1-relationship-influence">(1) Relationship Influence</h3>
<p>This comes naturally, by building a network of relationships that are:</p>
<ul>
<li>authentic</li>
<li>strategic (aligned with your goals)</li>
<li>supportive</li>
<li>collaborators</li>
<li>acting as a hub of information.</li>
</ul>
<p>Get the right people in the boat with you.
Engage the entire human fabric.</p>
<p><em>(from a different session)</em>
Be yourself. Authenticity is what helps you build relationships.
Get over the fear of reaching out: “hello fear, thank you for being here. You are the indication that I’m doing the right thing”.</p>
<p><em>(from the “An Introvert’s Guide to Networking” talk by J. Shea)</em>
Networking is not superficial (like many introverts often believe). It is about building others up and building yourself up.</p>
<p><a href="#toc">Top</a></p>
<h1 id="personal-notes-from-how-to-foster-an-authentic-and-consistent-personal-brand-panel-by-m-kopczynski-e-summers-l-abaibourva-i-ryabaya-c-alvarez-">Personal Notes from “How to Foster an Authentic and Consistent Personal Brand” panel by M. Kopczynski, E. Summers, L. Abaibourva, I. Ryabaya, C. Alvarez <a name="brand"></a></h1>
<p>Your brand is what people say about you when you’re not there.</p>
<ul>
<li>Write internal posts, present yourself, to get momentum.</li>
<li>Tell others what to say about you: people are often lazy and more than willing to simply repeat what they heard from you.</li>
<li>Get quick feedback from managers and peers, to make sure people know what is your goal cause then they’ll be willing to help you.</li>
<li>Read the room. Know your surroundings. Acquire partners rather than people to lead, because only then, they will be on your side.</li>
<li>Ask people what others say about you.</li>
</ul>
<p>First they ignore you, then they laugh at you, then they get mad at you and then they join you.</p>
<p>Be humble (cause everyone is equal) but in a confident (i.e., with no fear) way.
Your projects are important.
Do not let unconscious bias hold you back or define you. Put yourself out there, take opportunities. It’s gonna be uncomfortable but it will get you there.</p>
<p>When people do not realise that they did something that is impacting you negatively, let them know, because they may not have realised it.</p>
<p><a href="#toc">Top</a></p>
<h1 id="personal-notes-from-the-architect-a-great-career-or-the-greatest-career-panel-by-j-plummer-s-ransom-j-prusakova-s-mukhtar-">Personal Notes from the “Architect: A great Career or the Greatest Career?” panel by J. Plummer, S. Ransom, J. Prusakova, S. Mukhtar <a name="architect"></a></h1>
<ul>
<li>Make lateral movements cause that gives you more versatility and makes you stand out, especially while the world is moving so fast.</li>
<li>Good leaders encourage others’ evolution</li>
<li>Ask yourself: who is part of your fight club? Push out and pull in people, as you move</li>
<li>Don’t be afraid of doing something big but neither of doing something small</li>
<li>We can get better only by helping someone else, regardless of where you are in your career path.</li>
<li>Some fights are not worth fighting</li>
<li>Your resume doesn’t have to be perfect</li>
<li>Be gentle with each other; lift each other up.</li>
</ul>
<p><a href="#toc">Top</a></p>
Sun, 07 Oct 2018 12:18:34 +0000
https://iammyr.github.io/career/2018/10/07/ghc18.html
https://iammyr.github.io/career/2018/10/07/ghc18.htmlconference,careergrowthcareerWelcome!<p>First <code class="language-plaintext highlighter-rouge">post</code> to test my new blog.</p>
<p>Testing a code snippet:</p>
<figure class="highlight"><pre><code class="language-ruby" data-lang="ruby"><span class="k">def</span> <span class="nf">print_hello</span><span class="p">(</span><span class="nb">name</span><span class="p">)</span>
<span class="nb">puts</span> <span class="s2">"Hi, </span><span class="si">#{</span><span class="nb">name</span><span class="si">}</span><span class="s2">"</span>
<span class="k">end</span>
<span class="n">print_hi</span><span class="p">(</span><span class="s1">'Robot'</span><span class="p">)</span>
<span class="c1">#=> prints 'Hi, Robot' to STDOUT.</span></code></pre></figure>
<p>Check out the <a href="https://iammyr.github.io/cv/resume.html">resume</a> that I’ve just set up.</p>
Sat, 21 May 2016 13:47:34 +0000
https://iammyr.github.io/generic/2016/05/21/welcome-to-jekyll.html
https://iammyr.github.io/generic/2016/05/21/welcome-to-jekyll.htmlgeneric