<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Gssapi on CrippledMind's InfoSec Journal</title><link>https://crippledmind-infosec-journal.netlify.app/tags/gssapi/</link><description>Recent content in Gssapi on CrippledMind's InfoSec Journal</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Sun, 09 Mar 2025 13:07:54 +0530</lastBuildDate><atom:link href="https://crippledmind-infosec-journal.netlify.app/tags/gssapi/index.xml" rel="self" type="application/rss+xml"/><item><title>Kerberos auth with GSSAPI for Mac</title><link>https://crippledmind-infosec-journal.netlify.app/posts/projects/gssapiformac/</link><pubDate>Sun, 09 Mar 2025 13:07:54 +0530</pubDate><guid>https://crippledmind-infosec-journal.netlify.app/posts/projects/gssapiformac/</guid><description>&lt;h2 id="fix-macos-dynamically-detect-homebrew-installed-gssapi-library">Fix macOS: Dynamically Detect Homebrew-installed GSSAPI Library
&lt;/h2>&lt;h3 id="problem">Problem:
&lt;/h3>&lt;p>On macOS, the GSSAPI library path is hardcoded as &lt;code>/usr/lib/libgssapi_krb5.dylib&lt;/code>. However, when installed via Homebrew, the library is located in &lt;code>/opt/homebrew/lib/libgssapi_krb5.dylib&lt;/code> (or &lt;code>/usr/local/lib/...&lt;/code> for Intel Macs).&lt;/p>
&lt;p>This causes &lt;code>ffi_lib&lt;/code> to fail unless the user manually modifies the path.&lt;/p>
&lt;p>&lt;img src="https://crippledmind-infosec-journal.netlify.app/posts/projects/gssapiformac/proof.png"
width="1258"
height="619"
srcset="https://crippledmind-infosec-journal.netlify.app/posts/projects/gssapiformac/proof_hu988d37e25538fcf7dfb5eb55560ef433_126608_480x0_resize_box_3.png 480w, https://crippledmind-infosec-journal.netlify.app/posts/projects/gssapiformac/proof_hu988d37e25538fcf7dfb5eb55560ef433_126608_1024x0_resize_box_3.png 1024w"
loading="lazy"
alt="Error message"
class="gallery-image"
data-flex-grow="203"
data-flex-basis="487px"
>&lt;/p>
&lt;h3 id="solution">Solution:
&lt;/h3>&lt;ul>
&lt;li>Used &lt;code>File.exist?&lt;/code> to check if the Homebrew-installed library exists.&lt;/li>
&lt;li>If found, used &lt;code>brew --prefix&lt;/code> to dynamically get the correct path.&lt;/li>
&lt;li>Falls back to &lt;code>/usr/lib/libgssapi_krb5.dylib&lt;/code> if Homebrew is not installed.&lt;/li>
&lt;/ul>
&lt;h3 id="code-changes">Code Changes:
&lt;/h3>&lt;p>Updated &lt;code>lib_gssapi_loader.rb&lt;/code> to:&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-ruby" data-lang="ruby">&lt;span class="line">&lt;span class="cl">&lt;span class="k">when&lt;/span> &lt;span class="sr">/darwin/&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">brew_prefix&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="sb">`brew --prefix`&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">strip&lt;/span> &lt;span class="k">rescue&lt;/span> &lt;span class="kp">nil&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">gssapi_lib&lt;/span> &lt;span class="o">=&lt;/span> &lt;span class="k">if&lt;/span> &lt;span class="n">brew_prefix&lt;/span> &lt;span class="o">&amp;amp;&amp;amp;&lt;/span> &lt;span class="o">!&lt;/span>&lt;span class="n">brew_prefix&lt;/span>&lt;span class="o">.&lt;/span>&lt;span class="n">empty?&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;&lt;/span>&lt;span class="si">#{&lt;/span>&lt;span class="n">brew_prefix&lt;/span>&lt;span class="si">}&lt;/span>&lt;span class="s2">/lib/libgssapi_krb5.dylib&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">else&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="s2">&amp;#34;/usr/lib/libgssapi_krb5.dylib&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="k">end&lt;/span>
&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl"> &lt;span class="n">ffi_lib&lt;/span> &lt;span class="n">gssapi_lib&lt;/span>&lt;span class="p">,&lt;/span> &lt;span class="no">FFI&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="no">Library&lt;/span>&lt;span class="o">::&lt;/span>&lt;span class="no">LIBC&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item></channel></rss>